Pick a domain.
Before you can deploy anything, you need a URL for it to live at. Two minutes of decision-making, then go.
The candidates
Best options for KindlyChecked, in priority order. Hostinger sells all of these:
kindlychecked.app
~$15-20/year. The .app TLD auto-enforces HTTPS in browsers, looks modern, instantly tells visitors it's an app. Worth the slight premium over .com.
kindlychecked.com
~$10-15/year. Most universally recognized. Slightly less "app-y" but never wrong. Good fallback if .app is taken or feels excessive.
kindlychecked.co
~$10/year. Startup-flavored. Slightly less common than .com, but instantly readable as a real domain.
kindlychecked.io
~$30+/year. Tech-y but expensive, and the audience for KindlyChecked isn't tech-y. Save the money.
kindlychecked.com (or whatever you didn't pick) and forward it. Costs ~$10/year of insurance against someone squatting on it later. Hostinger lets you redirect domains in two clicks.Buy on Hostinger.
You probably already have your hosting plan. Now we add the domain to it.
-
1
Open the Domains section
Log into Hostinger, you'll land on hPanel. Look at the left sidebar — there's a "Domains" menu item. Click it. Sub-menu opens with options like "My domains," "Buy a domain," etc.
-
2
Click "Get a new domain"
Type your candidate (e.g.
kindlychecked) into the search box. Hostinger checks every TLD — .com, .app, .co, .io, etc. Shows you which ones are available and the price.If your first choice is taken, this is the moment you find out. Pick from the available list.
-
3
Skip the upsells
Hostinger will offer "domain privacy protection" (sometimes free, sometimes $5/year), "professional email" ($1-3/month), "SSL certificate" (this is included free via Let's Encrypt — don't pay for it). For an indie project: say yes to free privacy protection, no to everything else.
-
4
Wait 5-30 minutes
Domain registration takes a few minutes to propagate. The hPanel will show "Pending" briefly, then "Active." Don't panic if it takes a bit — fresh registrations sometimes take up to an hour.
Set up the website.
You bought a domain. You have hosting. They're not yet connected. This step links them.
On Hostinger this is mostly automatic if you bought both through them, but it's worth confirming. The path: hPanel → Websites (left sidebar) → "Add website" button. Pick your new domain from the dropdown. Hostinger creates the public_html/ folder for you.
You can skip this step
If you've used this hosting plan before, the public_html/ folder already exists. The domain just needs to point to it. In hPanel → Domains → DNS settings, make sure your domain's A record points to your Hostinger server (it almost certainly already does if you bought both through Hostinger).
public_html? It's the folder Hostinger serves to the internet. Anything in there is web-accessible. Your marketing-site.html needs to live in this folder (renamed to index.html so it loads as the homepage).Get FTP credentials.
FTP is how you copy files from your computer onto the server. Hostinger gives you a username, password, and server address — you'll plug these into a free desktop app.
Find your FTP details
In hPanel, navigate: Files (left sidebar) → FTP Accounts. You'll see a default account already created. Note these four pieces:
FTP Host: ftp.kindlychecked.app (Hostinger fills this in) Username: u123456789 (looks like u + numbers) Password: •••••••••• (you set this, or click "show") Port: 21 (standard FTP port)
Get FileZilla
FileZilla is the standard free FTP client. Works on Mac, Windows, Linux. Download from filezilla-project.org — make sure you grab FileZilla Client, not Server.
Open it. The top bar has four fields: Host, Username, Password, Port. Plug in the values from above. Click Quickconnect.
Upload your files.
FileZilla opens with two panes: your computer on the left, the server on the right. You drag files from left to right. That's the whole game.
Prepare the files
Before uploading, do one rename on your computer. The browser looks for a file called index.html when it visits the root URL. Currently we have marketing-site.html. Rename it:
Before: marketing-site.html After: index.html
So your local folder should now contain:
kindlychecked-bundle/ ├── index.html ← was marketing-site.html ├── 404.html ├── admin.html ├── install-guide.html ├── launch-kit.html ├── user-guide.html ├── mindyopet-concept.html └── .htaccess ← THIS IS CRITICAL
.htaccess: Files starting with a dot are hidden by default on Mac and Linux. In Finder, press Cmd + Shift + . to toggle hidden files. Make sure FileZilla shows hidden files too: Server menu → Force showing hidden files. Otherwise you'll skip the most important file in the bundle.Drag and drop
-
1
Navigate to
public_html/The right pane shows the server. Double-click into
public_html/. This is where your site needs to live.If there's a
default.htmlor Hostinger placeholder file in there, delete it. Anything in this folder is publicly visible. -
2
Find your unzipped bundle
Navigate the left pane to the folder where you unzipped
kindlychecked-bundle.zip. You should see all the HTML files and the.htaccessfile. -
3
Select all, drag to
public_html/Click the first file, scroll to the bottom, shift-click the last. Everything selected. Drag the whole batch onto the right pane. FileZilla starts uploading — you'll see a progress queue at the bottom.
For 7 small HTML files + .htaccess, this takes ~10 seconds.
-
4
Check the file list on the server
The right pane should now show all your files. Confirm
.htaccessis in there. If it's missing, force-show hidden files in FileZilla and re-upload it specifically.
Turn on SSL.
SSL is what makes the URL show https:// with a padlock icon. Required for most modern features (camera access on phones, for instance — your app needs this). Hostinger gives it free.
-
1
Navigate to Security → SSL
Left sidebar in hPanel: Security → SSL. You'll see a list of your domains.
-
2
Click "Install SSL" next to your domain
It uses Let's Encrypt — free, automatic, renews itself every 90 days. Click install, wait 1-3 minutes. Status flips to "Active."
-
3
Visit your domain in a browser
Open
https://kindlychecked.app. You should see your marketing site, with a padlock icon next to the URL. If you only seehttp://(no s), the.htaccesswe shipped already has a redirect rule — but it sometimes takes a minute to kick in. Force-refresh withCmd+Shift+R(orCtrl+Shift+R).
.app domains specifically: Browsers require HTTPS. If your SSL isn't installed yet and you visit the URL, you'll get a security warning. Don't panic — just wait for SSL to finish installing.Test & celebrate.
Your site is live. Time to verify everything works the way it should and figure out what's next.
Final checks
- Homepage loads at
https://kindlychecked.appand shows the marketing site - Padlock icon appears in the address bar (HTTPS working)
- Clean URLs work —
/user-guideloadsuser-guide.html(the .htaccess does this) - 404 page appears when you visit a fake URL like
/asdfgh - All nav links work across all pages — Home, User guide, etc.
- Admin gate works at
/admin— password iskindlychecked2026(change this in admin.html) - Mobile looks right — pull up the URL on your phone, scroll, see the whole thing
- Open Graph preview — paste the URL into iMessage or Slack, confirm a preview card appears
The full flow
The "Install free" and "Open app" buttons all point at /app/ — the live PWA. Click any of them and the app loads. The marketing site and the app are wired together. This is the whole product.
/app/. PWA icons in place. Manifest configured. iOS Add to Home Screen works. Android Add to Home Screen works. The whole thing exists on the internet. Marketing site sends traffic to the app, the app does its thing.What you can do right now
With a real URL, three things become possible that weren't before:
-
→
Share the URL with one friend
One. Not five. Pick the friend who's most likely to give you honest feedback about the positioning ("Does this feel like something you'd use?") rather than vibes ("Looks great!"). Watch what they click on. Note where they get confused.
-
→
Submit to Google Search Console
Go to search.google.com/search-console. Add your domain. Verify ownership (Hostinger lets you add DNS TXT records easily). Once verified, Google will start indexing the site. Useful to start tracking from day one.
-
→
Claim social handles
Now that you have a real URL backing the brand, grab @kindlychecked on Instagram, Twitter/X, TikTok, Bluesky. Don't post anything. Just claim. Five minutes of insurance against someone squatting later.
You did it.
The site is live. Mind your business. Don't optimize the marketing site for another two weeks — let real visitors hit it, watch what they do, and only then iterate.
When you're ready for Phase 2 (deploying the actual app), come back. The doc will be waiting.