Skip to main content

Deploy

Empty repo to a live custom domain on free plans: a step-by-step guide

This walkthrough takes you from an empty folder to a live site on your own domain with HTTPS, using free plans. It also covers the two DNS details that cause most "it does not work" moments.

By AltFTool editors · 01 Nov 2026 · 6 min read

A terminal prompt on a dark screen showing a sudo command.

What you need

A Git hosting account and a domain. If you do not have a domain, a free community subdomain such as is-a.dev or eu.org works the same way here, because the DNS steps are identical.

Many static and frontend hosts offer a free plan. Check each host's sign-up page for whether it asks for a card, since this changes over time.

Push your project to Git

Create a project, start a repository and push it. Any framework your host supports will do.

Make the repository the source of truth from the first commit. Hosts change their free plans, and a project that deploys from Git can move to a new host quickly.

mkdir my-site && cd my-site
git init
# scaffold your framework of choice here
git add -A
git commit -m "initial commit"
git remote add origin git@github.com:you/my-site.git
git push -u origin main

Connect a host

Import the repository from the host's dashboard. Most hosts detect common frameworks and fill in the build command and output folder for you.

After the first deploy you have a live site on the host's own subdomain. That is already shareable; the custom domain is the next step.

The two DNS steps tutorials skip

First, the apex. DNS rules do not allow a CNAME on a bare domain such as example.com. Use your DNS provider's ALIAS, ANAME or CNAME-flattening feature, or use the host's nameservers. Some guides say to CNAME the apex; that only works where the DNS provider flattens it for you.

Second, give DNS time. Your host can only issue an HTTPS certificate once the new records resolve publicly. Wait a while before you start troubleshooting, and avoid changing records again while you wait.

  • www: a CNAME pointing to the target your host gives you.
  • Apex: ALIAS/ANAME/flattened CNAME, or your host's nameservers.
  • HTTPS: most hosts issue it automatically once DNS resolves.
  • Redirect one hostname to the other so visitors and search engines see one address.

Keep it portable

You now have a site on your own domain, served over HTTPS and rebuilt on every push.

Keep the setup simple and written down: the repo, the build command, and the DNS records. If your free host changes its terms, you can repeat these steps somewhere else.

Back to the free hosting directory

Free tier updates

Get changes to free tiers by email.

A short email when a free plan in this directory changes its limits, adds a card requirement or ends.

Privacy policy
  • Free
  • No spam
  • Unsubscribe in one click

Keep reading

More guides

Browse the directory