Guides

Step by step, from a running app to the details that usually take an afternoon. Every guide was run on a fresh app before it was written.

Autograde Python assignments with tests and a rubric, inside Canvas or Moodle

pytest tests and hidden marking tests, a rubric for what tests cannot see, a ready lab for every student, and the final grade in the Canvas or Moodle gradebook. (Educators: /guides/autograde-python-canvas-moodle)

Deploy a Django app with PostgreSQL, free

A Django project on its own HTTPS address with a real PostgreSQL database and VS Code in the browser, on the free plan. (Developers: /guides/deploy-django-postgresql)

Deploy a FastAPI app with PostgreSQL, free

A FastAPI app on its own HTTPS address with a real PostgreSQL database, the driver installed for you, and VS Code in the browser, on the free plan. (Developers: /guides/deploy-fastapi-postgresql)

A free Heroku alternative where the database is not deleted after 30 days

Why free databases disappear, what Heroku, Render, Railway and Fly.io offer today, and moving a Heroku-style app with DATABASE_URL. (Developers: /guides/free-heroku-alternative-postgresql)

Free app hosting that does not expire and needs no credit card

Three questions to ask any free plan, how common plans answer them, and a free app with a database that stays. (Developers: /guides/free-app-hosting-no-credit-card)

Run WordPress with its own database in one click

A WordPress site of your own, installed and ready to log in, with its own MariaDB database: for staging, theme and plugin work, or a WordPress per student. (Developers: /apps/wordpress)

Run Gitea with PostgreSQL in one click

Your own Git server: Gitea with its own PostgreSQL database, on its own HTTPS address, with clone links that use it. (Teams: /apps/gitea)

Run Wiki.js with PostgreSQL in one click

A wiki for your team, course or product docs: Wiki.js with its own PostgreSQL database, on its own HTTPS address. (Teams: /apps/wiki-js)

Run HedgeDoc with PostgreSQL in one click

Markdown notes you write together in real time: HedgeDoc with its own PostgreSQL database, on its own HTTPS address. (Teams: /apps/hedgedoc)

Run Etherpad with PostgreSQL in one click

Documents you write together in real time: Etherpad with its own PostgreSQL database, on its own HTTPS address. (Teams: /apps/etherpad)

Run Mattermost with PostgreSQL in one click

Team chat you run yourself: Mattermost Team Edition with its own PostgreSQL database, on its own HTTPS address. (Teams: /apps/mattermost)

GitHub Classroom has closed: what you still have, and how to run next term

What GitHub kept, what is being deleted, finding your students' repositories, and the options for next term. (Educators: /github-classroom-closed)