Move off an ageing framework without stopping the product

Move your product to a current framework in stages, while it keeps shipping.

Before: your product works, but it stands on a framework past the end of its support. After: the same product stands on a current framework, moved across in small steps that each went live when you said so, while new features kept arriving.
  • Your product works, but its framework has reached the end of its support.
  • The move arrives in small steps, and you decide when each one goes live.
  • Your roadmap keeps moving, and new features carry on arriving.

What changes for you

You stop treating every upgrade as a project. Once a framework is past its support date, each new version of anything around it turns into a negotiation. This library no longer works with that one. This security fix cannot be taken without a larger change. The engineer you want to hire has never used the framework and would rather not start now.

After the move, upgrading is ordinary again. Your team works on a framework that is current, documented and familiar to the people you want to recruit.

Waiting has a cost, and it rises. An end-of-life framework collects risk quietly. The longer it stays, the larger the eventual jump becomes, and the more of your team’s attention goes to keeping old ground from shifting instead of building on it. You may feel this long before you can put a date on it: estimates grow, small changes feel nervous, and “we should really upgrade” becomes a sentence nobody wants to finish.

The move does not need a pause in your product. Your users keep getting what they came for, and your roadmap keeps its place on the calendar. Your product keeps moving forward, week after week.

Where this fits

This is for products that still earn their keep but sit on something their makers have stopped supporting. It might be a front end on an old major version, a back end on a release that no longer gets security fixes, or a build setup that nobody dares to touch. The product works. It is the ground under it that has aged.

It is not a rebuild from scratch. If the product itself has outlived its purpose, or the code is beyond saving, the better path is a rebuild, and we will say so. When the product is sound and the framework is the problem, a move is usually the calmer choice.

What you decide

You decide the destination. A new framework is a long commitment, and it should fit your team and your plans for the next several years. For context, products delivered so far are built with TypeScript, Vue, Astro, and PHP with Laravel.

You decide the order. The part of the product that hurts your team every week can go first. So can the part that carries most of your revenue, or the part where an old dependency worries your security people. You set the direction, and you can change the order as you learn more.

You decide the pace. You may want the move to come first for a while, or to run as a slow, steady transition behind a busy release schedule. Both are reasonable.

You decide what ships. Nothing reaches your users without your approval. A moved part goes live when you say so, and not before.

You decide whether to stop. Your code and your product stay yours to take anywhere, so pausing or ending the work never costs you what has already arrived.

What you see along the way

You see changes arrive in your own code repository. Your engineers can read them, question them, ask for something different or send them back.

You see your roadmap keep moving. New features are not queued behind the framework work. They carry on arriving.

You see the old framework shrink over time, until the parts that remain are the ones you have chosen to leave as they are.

What it costs you in time

A first conversation settles where the product stands and which area to try first. After that your part is to read what arrives, answer the questions that are yours to answer, and approve what ships.

If this is your situation

Start with a small first piece. Pick one area of the product that your team dreads touching, and see how it feels to move it before you decide anything larger. It starts with a conversation, with no obligation.

Start with one small first piece and judge the result yourself.

Not sure the time has come? Is it time to rebuild? A checklist

Want to see when a version stops receiving fixes? Framework end-of-life calendar

Unsure which path to take? Rebuild or refactor? The decision path

Questions leaders ask

Does the roadmap stop while the framework changes?

That is the main thing to protect. Your product keeps moving forward, week after week, and the framework move runs alongside it instead of in front of it.

Do we have to move everything before we see any benefit?

No. You choose the order, so the area that hurts most can move first and the rest can wait its turn.

What if the new framework is not the one we would have picked?

Then say so. The choice of destination is yours, and so is the choice to hold back until you are sure.

What happens to the upgrades we have been putting off for years?

They belong to the move, and you decide which are worth doing now and which can wait.

Can we stop halfway if priorities change?

Yes. What has arrived is already in your repository and stays yours. You can pause, and pick it up again whenever you choose.

Should we move the framework or rebuild the product?

It depends on whether the product itself is still right for you. If it is, a move is usually calmer. If it is not, a rebuild is the better conversation, and we will tell you which we see.

Lift your eyes and let us carry the rest.

Talk to us and see what carrying your product forward looks like.

Book a conversation

Prefer to write directly? contact@zefana.com