πŸ“‹Software Delivery8 min readUpdated: Jun 1, 2026

Finished Web Application Handover

A simple task list for a project handover β€” from the code repository and hosting access to verifying the production environment.

πŸ‘¨β€πŸ’»
Roman
aboutthe.app

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.

Git history cleanliness

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.

Task listClick to toggle

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.

Task listClick to toggle

3. CI/CD pipelines and environment variables

Automated deployments remove human error from handovers. Document every secret the deployment pipeline needs.

.github/workflows/deploy.yml
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.

Tip for other projects

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.

InformationPublic viewPrivate (unlocked) view
App version & release dateVisible to everyoneSame, plus full history
Author & licenseVisibleSame, plus agency contact
Repository & design linksHiddenVisible with the unlock code or depending on role
Deployment & environment statusHiddenVisible with the unlock code or depending on role
aboutthe.app

Want to make handovers easier?

Add your application to aboutthe.app for free.