Host your final-year project free
A project that only runs on your laptop cannot be marked, demonstrated or linked in a CV. This is how to put it on a real HTTPS URL for ₦0, and what to check the night before you defend it.
What ₦0 actually includes
The Free plan on OneBit Deploy needs no card at all:
- 5 apps
- 1 GB of memory and 5 GB of storage
- Automatic HTTPS on every app
- Custom domains, if you have one
- Live build and runtime logs
Five apps is more than one project. A frontend, an API and two experiments fit inside it, which matters when your supervisor asks for "a version without the new feature".
The one catch, said plainly
On the Free plan an app scales to zero when it is idle. After a quiet period it sleeps, and the next request wakes it — so the first load after hours of no traffic is slower than the rest.
For a project this is almost never a problem, but it has one failure mode worth planning around: you open the link in front of an examiner, it takes a few seconds, and you panic. The fix is free and takes ten seconds — open the URL yourself a minute before you present. The app is then awake and every load after that is normal. Scaling and idle describes the behaviour in full.
Getting it deployed
Your project needs to be in a GitHub repository, and it needs to start the way a server starts.
cd my-project
git init
git add .
git commit -m "Final year project"
git branch -M main
git remote add origin [email protected]:you/my-project.git
git push -u origin mainIf it is a Node or Next.js app, read the port from the environment rather than hard-coding one:
const port = process.env.PORT || 3000;
app.listen(port, '0.0.0.0');If it is a plain HTML, React or Vite build, there is no server at all — the build output is served directly.
Then connect the repository and deploy. Deploying from GitHub covers connecting the account and picking the branch; builds and frameworks covers what is detected and how to change it.
Before you submit
Move your keys out of the code. A database password in a public repository is a mark deduction in some departments and a real incident in others. Set them as environment variables instead — see environment variables and secrets.
# check nothing sensitive is in the history you just pushed
git log -p | grep -iE "password|api[_-]?key|secret" || echo "clean"Read the logs after the first deploy. A build that succeeded and an app that runs are two different things. Logs and metrics shows both streams live.
Write the URL into the document. Then open it on your phone, on mobile data, away from your own machine. That is the only test that proves it works for someone who is not you.
Limits worth knowing
OneBit Deploy runs in a single region. It builds Node.js, Next.js and static sites — other language runtimes are not available yet, so check which one your project needs before you plan around this. There are no automated backups, so keep your own export of any data you cannot regenerate. The rest are in limits.
Managed PostgreSQL, MySQL, MariaDB and MongoDB are available on paid plans (₦30,000 and ₦89,000 a month, plus 7.5% VAT at checkout). On the free tier, a project that needs a database usually runs one you host elsewhere, or SQLite — with the caveat that a scaled-to-zero container is not a place to keep anything you cannot lose.