CLI tool
wdhdev/free-for-life avatar
wdhdev/free-for-life

wdhdev/free-for-life: an MIT-licensed list of free tiers for developers

A huge list of great stuff you can get for free!

1,730 stars180 forksHTMLMIT

At a glance

What is it?
free-for-life is a community-maintained catalogue of services with permanent free plans, published as Markdown tables and rendered on a static site. It is a reference list, not software, and its value depends entirely on how current each entry is.
Who is it for?
Adopt free-for-life as a starting point for finding free-tier infrastructure: DNS, PaaS, databases, email, SSL, monitoring and ML APIs, with the free allowance written into the table row. Do not treat a row as a contract.
Can I use it commercially?
Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository last received commits 23 days ago.
What is it written in?
Mainly HTML, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 19, 2026, and from our analysis. They are not legal advice.

DEEP OPEN-SOURCE ANALYSIS

What free-for-life actually is, and who it is written for

free-for-life is a curated list, not a library. The README opens with a banner comment telling contributors not to edit it directly and to read the contributing guidelines instead, which tells you the file is generated from source data rather than hand-maintained. The repository layout backs that up: alongside README.md there are data/, scripts/, website/ and CONTRIBUTING.md, plus a CNAME file pointing at the published site. The audience is developers who need infrastructure without a budget: a side project that needs a hosted database, a scraper that needs a proxy pool, a prototype that needs a transactional email provider. The list is organised by function rather than by vendor, with 21 categories in the table of contents, including APIs, Data and ML, Artificial Intelligence, BaaS, DNS, Databases, Design and UI, Domains, Email, PaaS, SSL and Monitoring. Each row is a website and a one-line description of what the free plan gives you. That structure is the whole product. If you want a comparison of paid tiers or a cost calculator, this is the wrong file.

How the list is built: Markdown tables, a data directory and a static site

The mechanism visible in the repository is a build pipeline. Source entries live under data/, scripts/ turns them into the Markdown tables you read in README.md, and website/ renders the same content at free.hrsn.dev. The README carries an HTML comment, data:start, marking where the generated block begins, which is why the header warns against direct edits: a manual change would be overwritten on the next build. Practically, this means the pull-request path is through the contributing guidelines, not through editing the table you see on GitHub. It also means the published site and the README should agree, since both are produced from the same source. The README does not document the schema of the files in data/, the language the scripts are written in, or how the site is deployed, so anyone wanting to build on the data rather than read it has to inspect those directories themselves. For a reader, the important consequence is simpler: the table formatting is consistent because it is generated, and inconsistency between two rows is a sign of different source entries rather than sloppy editing.

Installing nothing: using the list and running the site locally

There is no package to install. The project is consumed by reading it. The README's own pointer is the homepage, free.hrsn.dev, and the GitHub repository for the raw Markdown. If you want the rendered site on your own machine, the repository has a website/ directory, but the README does not give a build command for it, so the honest instruction is to clone and inspect.

bash
git clone https://github.com/wdhdev/free-for-life.git
cd free-for-life
ls data scripts website

You should see three directories matching the repository layout. What you do next depends on what is inside them; the README does not describe a start command, a package manifest or a port. If you only want the content, the README itself is the artifact. The contribution path is documented separately, and the README links to it at free.hrsn.dev/#/contributing rather than repeating the rules inline.

bash
cat CONTRIBUTING.md

That file is where the project states how to add or remove an item, which is the operation most readers will eventually want, because a free tier you rely on will change and you may want to correct the row.

The free-tier trap: allowances that are real but bounded

The entries themselves make the limitation obvious once you read the numbers rather than the word free. Clarifai's free plan has 5000 calls per month. Calendarific gives 1000 calls per month. Cloudmersive gives 800 calls per month. Beeceptor gives 50 requests per day. CraftMyPDF gives 100 PDFs per month and 3 templates. Arize AI is free up to two models. Data Fetcher gives 100 runs per month. These are workable for a prototype and useless for a product with traffic, and the list does not pretend otherwise: it puts the number in the row. The failure mode is not that the list is wrong, it is that a reader skims the word free and stops at that. A second limitation is structural. The README does not record when each entry was last checked, and the repository has no release history retrieved, so there is no changelog to tell you which rows were revalidated recently. Providers retire free tiers, add credit-card requirements or cut allowances, and a list of this size cannot be verified continuously. Treat every row as a lead to follow, not a fact to build on.

free-for-life compared with free-for-dev and awesome-list style catalogues

The closest thing in kind is free-for-dev, the long-running list of free tiers for developers, which is also a Markdown catalogue organised by category. The difference here is the delivery: free-for-life generates its README from data/ via scripts/ and publishes the same content as a website under website/ with a CNAME, so there is one source and two renderings. free-for-dev is primarily a single Markdown file on GitHub. That matters if you want to consume the list programmatically, because a data directory is a better starting point than parsing a table, though as noted the README does not document the schema. The other difference is scope. free-for-life groups entries under headings such as BaaS, DNS, SSL, PaaS and Linux Distributions, which reads as infrastructure for people shipping software rather than a general bargain list. If your need is a spreadsheet of discounts, neither project is that. If your need is a starting point for free hosting, DNS and email, both are, and free-for-life's generated-site approach is the one to prefer when you want the content in more than one form.

Licence, maintenance and the cost of keeping a list current

The repository is MIT licensed, which permits reuse, modification and redistribution provided the licence and copyright notice are preserved. For a content list this is permissive in a way that matters: you can fork it, filter it to the categories you care about, or embed the rows in your own documentation. It does not give you any rights to the linked services, and it does not make the descriptions authoritative; the MIT grant covers the text, not the providers' terms. Maintenance is the real cost. The last push to the default branch was on 2026-08-27, and the repository is not archived, so the project has been touched recently. There are no releases retrieved, which is normal for a content repository but means there is no versioned snapshot to pin against. Upgrading, in this context, means re-reading the list and re-checking the rows you depend on, because nothing in the repository signals which entries changed since you last looked. If you fork it for internal use, the work you are taking on is verification, not code.

Editorial conclusion

Adopt free-for-life as a starting point for finding free-tier infrastructure: DNS, PaaS, databases, email, SSL, monitoring and ML APIs, with the free allowance written into the table row. Do not treat a row as a contract. Pricing pages change without notice and the README does not state when each entry was last verified, so check the provider's own pricing page before you build on a tier. Skip it if you need a machine-readable feed with a schema; the repository ships data/ and scripts/, but the README does not document their format. First step: open free.hrsn.dev, pick the category, and read the linked provider's plan page.

Frequently asked questions

What is wdhdev/free-for-life?

It is an MIT-licensed list of services that offer free plans, published as Markdown tables in the README and rendered at free.hrsn.dev. The entries are grouped into 21 categories, from APIs, Data and ML to SSL, and each row gives a website and a one-line description of the free allowance.

How do I add an item to free-for-life?

The README carries a comment stating not to update the file directly and to read the contributing guidelines instead, and it links to free.hrsn.dev/#/contributing. The repository also ships a CONTRIBUTING.md at the top level, and the generated-data markers in the README explain why manual edits would be overwritten.

Does free-for-life have a licence that allows reuse?

Yes. The repository is MIT licensed, so you can reuse and modify the list provided the licence and copyright notice are kept. That covers the text of the list, not the terms of the services it links to.

Official sources

  1. Issues
  2. License: MIT
  3. Project website
  4. README
  5. wdhdev/free-for-life on GitHub
Community notes

Community notes