Finished Web Application Handover
A simple task list for a project handover β from the code repository and hosting access to verifying the production environment.
Overview & context
Handing over finished work to a client or an incoming development team is a common phase of a software project. This task list is here to help make sure nothing gets forgotten. Use it as a starting point and adapt it to your project's specific needs.
1. Source code repository and ownership transfer
Before a project is marked as "delivered", all source code must live in a repository owned or managed by the client.
If the project is hosted on a developer's personal account, transfer ownership to the client, or make sure the client has full rights to the repository.
Committing .env files or private API keys is one of the most common causes of security incidents during handovers. Rotate any exposed keys before transferring access.
2. Hosting, domain and infrastructure
Transfer ownership of the production hosting account to the client's billing account.
Check the domain's DNS records, the hosting account, and SSL certificate backup/renewal β make sure everything is set up correctly and working.
3. CI/CD pipelines and environment variables
Automated deployments remove human error from handovers. Document every secret the deployment pipeline needs.
name: Production deploy
on:
push:
tags:
- 'v*'
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Deploy to production
run: npm run build && npm run deploy
env:
DATABASE_URL: ${{ secrets.PRODUCTION_DATABASE_URL }}4. Add links to your application in aboutthe.app
Instead of writing a handover document, add links directly to the application for the repository, CI/CD pipeline, domain administration and other services.
This gives the client or future maintainer instant access to every service directly from the application they use or maintain.
Adding the aboutthe.app widget to every project gives each handover the same predictable shape, which cuts down on "where do I find X" questions later. It'll always be in the same place, in the same form.
| Information | Public view | Private (unlocked) view |
|---|---|---|
| App version & release date | Visible to everyone | Same, plus full history |
| Author & license | Visible | Same, plus agency contact |
| Repository & design links | Hidden | Visible with the unlock code or depending on role |
| Deployment & environment status | Hidden | Visible with the unlock code or depending on role |
Want to make handovers easier?
Add your application to aboutthe.app for free.