[MORSALIN]
Service 13.3Updated September 2026

Legacy PHP to Laravel Migration, One Module at a Time

I move an old custom PHP or CodeIgniter app to Laravel module by module, while the old app keeps running, so you never face a big-bang switch. Every project starts with a Codebase Assessment. For small SaaS teams and businesses. From $1,300 ($1,000 founding) per monthly milestone; typical projects take 3+ months, from $3,900 ($3,000 founding).

See a sample report, proposal and weekly update
Price
from $1,300
Founding
from $1,000
Timeline
1 month each
Format
Fixed scope, fixed price
Hours
US Eastern Time, async
01Fit

Who this is for.

A good fit if

  • Businesses running on custom PHP, CodeIgniter or an old framework nobody wants to touch
  • Founders whose app can’t get new features because every change breaks something
  • Teams that tried a full rewrite before and it stalled

Common triggers

  • The app only runs on an end-of-life PHP version
  • No developer wants to work on the codebase
  • A security finding that can’t be fixed in the old structure

Not a fit if

  • You want a fixed price for the whole rewrite before any assessment
  • You need it finished in a month
  • The app is WordPress or a closed-source product
02Scope

What I do, and what you get.

What I do

  • Require a Codebase Assessment first, then write a module-by-module plan with an order and a price per module
  • Put Laravel in front of the old app, so each request goes to Laravel if the module is migrated, or to the old code if not
  • Share login and sessions between old and new so users notice nothing
  • Migrate one module per milestone: routes, logic, database access, tests
  • Keep the same database at first and change the schema only where a module needs it
  • Deploy each module on its own, with a switch back to the old code if needed

What you get

  • Module plan with order, risk and price per module
  • Laravel app running in front of the legacy app from milestone 1
  • Each migrated module with tests, deployed to production
  • A progress count: which routes still reach the old code
  • Monthly milestone report
  • Handover notes per module, and a final one when the old code is retired

Your part

  • A completed Codebase Assessment
  • A person who knows how each module should behave and can test it
  • Decisions on which old behavior to keep or drop
  • A staging environment (or budget for one)

Included

  • Laravel front and fallback to legacy code
  • Module migration with tests
  • Shared login between old and new
  • Per-module deploy and switch-back
  • Monthly milestone reports

Not included

  • Whole-app fixed price before assessment
  • New features during migration (quoted separately)
  • Visual redesign
  • Data cleanup and content entry
  • Mobile apps
03Plans & price

Fixed prices, agreed before work starts.

Migration milestone
$1,300per monthly milestone
Founding price $1,000
1 month each

One or more modules as priced in the plan

Typical project
from$3,900
Founding price $3,000
3+ months

Priced per module after the Codebase Assessment. From 3 monthly milestones of $1,300 ($1,000 founding). The Codebase Assessment (from $520) is required first and credited toward the project.

Build your scope

1 · Plan
2 · After handover (optional)
Your scope
$1,300
Timeline
1 month each
Payment
Monthly milestones, each paid at the start of the month
Earliest start
Oct 5
Not a commitment. I confirm the exact price in a written proposal.

Founding price: 3 of 7 spots left, until Mar 31, 2027 — one-off work, in return for a testimonial. How it works

Prices are in USD, paid by bank transfer against an invoice. Work under $1,000 is paid upfront; larger work is 50% to start and 50% before handover, or monthly milestones. How working together works

Variations

CodeIgniter 3/4
Routes and controllers map closely, so each module usually moves faster.
Plain PHP (no framework)
A front controller is added first, with more work on routing and security.
Very old PHP (5.x/7.x)
The old code runs in its own container or server until retired (see Containerize a Legacy App).
Front end
Kept as is (Blade or existing templates) unless a Vue front end is quoted.
04Process

How it runs.

  1. 01

    Codebase Assessment

    Every project starts with a Codebase Assessment.

  2. 02

    Module plan

    You get a module plan and a quote per module.

  3. 03

    Laravel in front

    Milestone 1 puts Laravel in front, shares login and moves a first low-risk module.

  4. 04

    Monthly modules

    One or more modules move each monthly milestone, each tested and deployed.

  5. 05

    Retire the old code

    The old code is retired when no requests reach it, followed by a final handover.

05Proof

Where I have done this before.

06FAQ

Questions buyers ask.

Why not rewrite everything at once?

Big rewrites often stall and miss edge cases the old app handled. Module by module, you get working, deployed parts every month.

Will users notice?

They shouldn’t. URLs and logins stay the same while modules move behind the scenes.

Why is an assessment required?

Without it, any price would be a guess. The assessment finds the modules, risks and hidden dependencies.

Can we pause between milestones?

Yes. Each milestone leaves the app working.

Can you add features along the way?

Yes, quoted separately so the migration keeps moving.

07Start

Ask about Legacy PHP → Laravel.

Tell me what you have and where it hurts. I reply within one US business day with either a fixed quote or the entry step that makes a fixed quote possible.

Helpful to include

  • Framework (or none) and PHP version
  • Approximate size (files or lines)
  • Main modules
  • Database
  • Hosting
  • Who knows the business rules
  • Target date and reason
Reply within one US business day. No calls needed.

Prefer your own email app? Write to [email protected]. Your details stay with me, never on a list. An AI model drafts a private summary of your message for me.

More in Application Modernization