Taking over a Laravel project from another vendor is not a rewrite. It is risk management: you need to understand what works, what is fragile, and what could break after the first change. Below is the 30-point checklist I use before the first commit in someone else’s codebase.
If you need a developer to take over the project step by step, see the Laravel project takeover service. The checklist below is also the basis for a standalone audit.
Why takeovers fail
- The most common scenario: the new vendor receives a repository, a few sentences from the client and a deadline of “yesterday”. Two weeks later it turns out that half of the features work by accident, there are no tests, and deployment means copying files over FTP. Then comes the temptation to “rewrite everything”.
The second trap is missing documentation. Code without documentation is not self-documenting, even if it looks clean. The third is the lack of a business owner: nobody knows which processes are critical, so priorities cannot be set.
That is why a takeover starts with an audit and a plan, not with refactoring. A good takeover is not about changing code as fast as possible; it is about knowing what not to touch.
The 30-point checklist
Code and architecture
- Does the repository have full commit history, or only a flat snapshot?
- Are there branches, tags and a clear release process?
- Does the directory structure follow Laravel conventions, or is everything in
app/Http/Controllers? - Are module boundaries visible, or is business logic spread across controllers and models?
- Are there places where the framework is bypassed (raw SQL, manual queries,
DB::statement)?
Security
- Are secrets in
.env, or in code and commit history? - Is
APP_DEBUGdisabled in production? - Is input validation in Form Requests, or scattered across controllers?
- Are permissions checked through Policies/Gates, or through
ifstatements in views? - Has the project passed a basic OWASP Top 10 review — XSS, CSRF, SQL injection, mass assignment, unsafe uploads?
Tests and quality
- Are there automated tests, or are “tests” manual clicking?
- Do tests cover critical paths: login, payments, orders, exports?
- Are tests run in CI, or only locally?
- Is static analysis (PHPStan/Larastan) configured?
- Is code review part of the process, or does a commit go straight to production?
Infrastructure and deployments
- Is deployment automated or manual?
- Is there a staging environment that mirrors production?
- Is there a rollback, and has anyone tested it?
- Are there database and file backups, or does “the host does backups”?
- Do monitoring and alerts work, or do you learn about incidents from the client?
Data and integrations
- Are there migrations, and can the schema be rebuilt from scratch?
- Are there queues, scheduled jobs and workers — and is anyone monitoring them?
- Do external integrations have retries, idempotency and logs?
- Is personal data GDPR-compliant: retention, access, export, deletion?
- Are there places where data is duplicated across systems without a source of truth?
Team and documentation
- Is there deployment and configuration documentation?
- Is there an architecture description and critical flow map?
- Is there access to all systems, and is it in one place?
- Is there a person who knows the project, and can you talk to them?
- Does the client know which processes are critical and which can wait?
If most answers are “I don’t know”, this is not a refactoring project yet. It is an audit project.
How to run the audit in 5 days
Day 1 — project map. Repository, dependencies, configuration, local setup, structure review.
Day 2 — security and data. Secrets, permissions, validation, OWASP, migrations, backups.
Day 3 — tests and deployments. CI/CD, staging, rollback, monitoring, queues.
Day 4 — integrations and critical paths. Payments, orders, exports, webhooks, retries.
Day 5 — report and plan. Risk list, priorities, 30/60/90 plan and quote.
After five days you should know whether the project is suitable for a modular takeover or needs a rewrite. That is a business decision, not a technical one.
Red flags that should stop the project
- No commit history and no repository outside the production server.
- Secrets in code or commit history.
- No tests and no way to run the project locally.
- FTP deployments and manual database changes.
- Integrations without retries and logs.
- Code that nobody can run, and a client with no access to the vendor.
Each flag increases the cost of a takeover. Some mean a rewrite is cheaper, but that is rare — a modular takeover is usually faster and less risky.
How much does a Laravel takeover cost?
The audit starts at 2,500 PLN net + VAT and usually covers 3–5 business days. Further work is quoted after the audit, based on the 30/60/90 plan. If the project is in good shape, the takeover can cost less than a rewrite. If it is in bad shape, the audit is still cheaper than six months of work without a plan.
See also the articles on Laravel application security and CI/CD for Laravel.
Modular takeover vs rewrite
| Criterion | Modular takeover | Rewrite from scratch |
|---|---|---|
| Initial cost | Medium | High |
| Time to first change | 2–4 weeks | 3–9 months |
| Business risk | Low | High |
| Process knowledge retained | High | Often lost |
| When to choose | A working system with technical debt | An unsupported system where maintenance costs exceed a new build |
In practice, the best model is hybrid: take over module by module and rewrite the most problematic part separately, with tests and rollback.
Frequently asked questions
How long does a Laravel takeover take?
Audit 3–5 days, plan 1–2 days, data protection and tests 2–5 days. The first production changes usually happen 2–4 weeks after the start. The pace depends on the project condition and business priorities.
Do I have to stop production?
No. I work module by module, behind feature flags and with rollback. If the risk is too high, we fix the critical paths first and refactor the rest later.
Will you take over a project without documentation?
Yes. Missing documentation is one of the most common reasons for a takeover. I first reconstruct the system map, dependencies and critical paths, then document what matters most.
Do you sign an NDA?
Yes, as standard before receiving code and data. I can sign your NDA or provide my own.
Who owns the code after the takeover?
The code stays in your repository. The rules for transferring economic rights to new code and documentation are defined in the contract.
Can you only advise, without taking over the project?
Yes. The audit can end with a report and recommendations, with no further engagement. You decide after seeing the risks and the quote.