keepcalculator

06 Numbers and Powers

Where Do Open Source Projects Go When They Die?

Card No. 06·12138 · Updated · Standard formula, shown below

Project health score 0.175
Time to solve (min)
30 min
You entered
Difficulty (1-10)
5
You entered
Code quality (1-10)
7
You entered
You enter
Time to solve (min), Difficulty (1-10), Code quality (1-10)
You get
Project health score
Rounding
2 dp

Open source projects don’t disappear when they die; they are archived, forked, or resurrected. A project’s code, issues, and documentation usually remain publicly accessible on platforms like GitHub or GitLab, and the community can continue it under a new name or fork.

Formula

The “project health score� is a rough, illustrative metric that combines three factors: the time a maintainer can dedicate (in hours), the difficulty of the codebase (on a 1–10 scale), and the code quality (on a 1–10 scale). The formula is:

Score = (Time in minutes ÷ 60) × (Difficulty ÷ 10) × (Code quality ÷ 10)

Variables:

  • Time (t) – minutes per week a maintainer can spend. Converted to hours.
  • Difficulty (d) – subjective rating of how hard it is to understand and modify the code. 1 = trivial, 10 = very complex.
  • Code quality (c) – subjective rating of documentation, tests, and structure. 1 = poor, 10 = excellent.

This score is not a real standard; it’s a mental model to show how maintainer time, code complexity, and quality interact.

Worked Example

Using the defaults from the calculator: t = 30 minutes, d = 5, c = 7.

  1. Convert time to hours: 30 ÷ 60 = 0.5 hours.
  2. Multiply by difficulty: 0.5 × 5 = 2.5.
  3. Multiply by code quality: 2.5 × 7 = 17.5.

The score is 17.5 (rounded to 2 decimals). This is not a meaningful absolute number, but it shows how a project with more time, higher difficulty, and better quality scores higher. In practice, you’d compare scores across projects or over time for the same project.

What “Death� Means for an Open Source Project

An open source project “dies� when no one maintains it: no commits, no issue responses, no releases. But the code itself rarely vanishes. The most common outcome is that the repository remains online in a read-only state. For example, the popular JavaScript library left-pad was briefly removed from npm in 2016, causing widespread build failures, but it was restored within hours. That incident shows how fragile and also how resilient open source can be.

When a project is abandoned, the license still applies. If it’s MIT or Apache-2.0, anyone can fork it and continue development legally. If it’s GPL, derivatives must also be GPL. The code never truly dies; it just stops evolving.

Where the Code Goes: Archives, Forks, and Mirrors

There are several places where dead projects live on:

  • GitHub/GitLab archives – The original repo stays up, often with a notice like “No longer maintained.â€�
  • Software Heritage – A nonprofit that archives all public source code, including abandoned projects.
  • Internet Archive – Crawls and stores code repositories, documentation, and websites.
  • Fork networks – Other developers may have already forked the repo, so copies exist on many accounts.
  • Package registries – Published versions remain downloadable from npm, PyPI, Maven Central, etc., even if the project is dead.

For example, the once-popular Ruby on Rails plugin acts_as_paranoid was abandoned, but its code is still on GitHub and mirrored on RubyGems. Anyone can install it, but no one fixes bugs.

How to Tell if a Project Is Dying

You can often spot a dying project before it’s officially dead:

  • No commits for over a year.
  • Issues and pull requests pile up unanswered.
  • The maintainer posts a “looking for a new maintainerâ€� notice.
  • Dependencies become outdated and security fixes are not applied.
  • The project’s website or documentation goes offline.

For example, the Grunt JavaScript task runner is still used, but its development slowed dramatically after 2016 as many users moved to Gulp or npm scripts. It wasn’t officially archived, but it’s effectively in maintenance mode.

What Happens to the Community?

When a project dies, its community usually disperses. Some users migrate to a fork, some to a competing project, and some just stop using that tool. Occasionally, a group of users bands together to revive the project under a new name. A well-known example is MariaDB, which was forked from MySQL after concerns about Oracle’s ownership. MySQL wasn’t dead, but the fork created a vibrant new community.

More often, the community just dissolves. Mailing lists go quiet, chat rooms empty, and the project’s website eventually expires. The code remains, but the social structure around it is gone.

Can a Dead Project Be Revived?

Yes, but it takes effort. A revival usually starts with a fork. The new maintainers must:

  1. Fork the repository and create a new name (or keep the same name if the license allows).
  2. Update dependencies and fix critical bugs.
  3. Set up a new community space (forum, chat, issue tracker).
  4. Release a new version to signal the project is alive again.

A notable revival is Neovim, a fork of Vim that started in 2014 to modernize the codebase. Vim was not dead, but Neovim provided a path for new features. Similarly, OpenBSD was forked from NetBSD in 1995 and is still actively developed.

Common Misconceptions

One misconception is that a dead project means the code is unusable. In reality, many abandoned projects are stable and perfectly functional. The risk is not that they stop working, but that they don’t get security updates. For example, the Apache Struts framework had a critical vulnerability in 2017, but many systems still ran older versions because they were stable. The danger is not death itself, but the lack of maintenance.

Another misconception is that “abandoned� and “dead� are the same. A project can be in maintenance mode – still accepting bug fixes but no new features – and that’s not dead. Conversely, a project with no activity for a year is usually considered dead, but it could be revived at any time.

How to Choose a Healthy Open Source Project

If you’re evaluating a project to depend on, look for these signs of health:

  • Recent commits (within the last 6 months).
  • Responsive maintainers who close issues or comment on PRs.
  • Regular releases (even if just patch releases).
  • Good documentation and a clear roadmap.
  • An active community on forums or chat.

If a project fails these checks, consider a fork or an alternative. For example, moment.js is now in maintenance mode, and the maintainers recommend using Luxon or the built-in Intl API for new projects. That’s a graceful “death� – the project is still usable, but the community has moved on.

Frequently Asked Questions

Can I still use a dead open source project?

Yes, you can use it, but you assume the risk. If it’s stable and you understand the code, it may work fine. However, you won’t get security patches, and if a bug affects you, you’ll have to fix it yourself or hire someone to do so. Always check the license to see if you can modify and redistribute it.

What happens to the copyright when a project dies?

The copyright stays with the original authors. The license still governs how you can use the code. Even if the project is dead, you cannot use it in ways the license forbids. For example, GPL code must remain GPL in derivative works, even if the original project is abandoned.

Can I take over an abandoned project?

Legally, yes, if the license allows it. You can fork the code and continue development under a new name. However, you cannot use the original project’s name or trademark without permission. Many maintainers are happy to hand over the project if you ask, but if they’re unresponsive, a fork is the practical route.

How do I find out if a project is dead?

Check the repository’s commit history, the date of the last release, and whether issues get responses. You can also look for a “maintenance mode� or “deprecated� notice in the README. Services like Libraries.io show activity metrics for many open source projects.

What is the best way to preserve a dead project I depend on?

Fork it to your own account or organization. That way, you have a copy of the code and can make changes if needed. Also, consider archiving it to Software Heritage or the Internet Archive, so it’s preserved for the future.

Are there any famous projects that have died and been revived?

Yes. Neovim revived Vim’s development, MariaDB revived MySQL’s spirit, and LibreOffice was forked from OpenOffice.org when that project stagnated. These revivals show that a community can keep a project alive even if the original maintainers stop.

Related

Formula used
in t | Time to solve (min) | min | 30 | 0
in d | Difficulty (1-10) | - | 5 | 1 | 10
in c | Code quality (1-10) | - | 7 | 1 | 10
out score | Project health score | - | (t / 60) * (d / 10) * (c / 10) | 2

Each line is one input (in, sel, list) or one result (out: label, unit, formula, decimals). How the calculators work

Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.

More cards in this drawer

The whole Numbers and Powers drawer →