Contribute a Sub-project to an Existing TLP¶
Joining forces with an established Top‑Level Project (TLP) can be the fastest way to grow. Sub‑projects benefit from shared community, trusted governance, and discoverability—while keeping a clear technical scope of their own. This page explains the journey in plain language and links you to the canonical policies and templates.
Before you draft anything, scan the current project landscape to find the best fit for your work:
- LFDT projects directory: https://www.lfdecentralizedtrust.org/contribute-to-code
- Project Lifecycle & maturity criteria: https://lf-decentralized-trust.github.io/governance/governing-documents/project-lifecycle.html
Is a sub-project the right home?¶
If your code extends, complements, or fits neatly within an existing TLP’s scope, a sub‑project can give you momentum immediately—shared community channels, docs patterns, release processes, and a familiar governance model. If your scope is broader or distinctly different, a new TLP may be a better path. When in doubt, talk to the host project’s maintainers and the TAC; they’re happy to help you choose wisely.
What a strong sub-project proposal looks like¶
Think narrative first, not checkboxes. Help readers see the fit:
Explain the problem and the fit. Describe what the sub‑project does and how it reinforces the host TLP’s mission. If there’s overlap with existing components, note how you’ll collaborate or differentiate.
Show the community behind it. List initial maintainers (ideally multi‑org), early adopters or pilots, and how you’ll welcome contributors. Healthy contributor dynamics matter as much as code.
Outline a near‑term plan. Describe releases, testing/CI, documentation, and security hygiene (e.g., signed artifacts) you intend to follow under the host TLP’s processes.
Align with open governance. Confirm license (Apache‑compatible), contribution model (e.g., DCO/CLA approach), and where the code will live within the host’s repos or org. Link to the host TLP’s CONTRIBUTING and governance docs where relevant.
Use the official proposal template to keep things consistent and easy to review: https://github.com/LF-Decentralized-Trust/project-proposals.
How evaluation works¶
Sub‑project proposals are typically socialized with the host TLP’s maintainers and then brought to the TAC where appropriate, applying the same lifecycle signals used for projects in Incubation and beyond. Review focuses on scope fit, community health, and your plan to meet maturity expectations over time.
- Lifecycle & criteria (source of truth): https://lf-decentralized-trust.github.io/governance/governing-documents/project-lifecycle.html
The journey: connect → propose → align → onboard¶
Start by meeting the host TLP’s community—Discord/mailing list, maintainers, and working groups. Share a short summary, listen for feedback, and refine the scope together. When you’re ready, complete the proposal template and open a PR in the proposals repo. Coordinate with the host maintainers to present, answer questions, and agree on repo placement, releases, and branding. Once accepted, you’ll onboard into the TLP’s standard processes.
- Proposals repo: https://github.com/LF-Decentralized-Trust/project-proposals
- Meeting calendar (for TAC/host sessions): https://www.lfdecentralizedtrust.org/meeting-calendar
- TAC mailing list: https://lists.lfdecentralizedtrust.org/g/tac/topics
Stay connected¶
The best sub‑projects start with friendly conversations. If you’re still exploring options—or want introductions—drop a note in community spaces:
- How to contribute (overview): https://www.lfdecentralizedtrust.org/how-to-contribute
- Contribute to code (by project): https://www.lfdecentralizedtrust.org/contribute-to-code
- Host your project at LFDT: https://www.lfdecentralizedtrust.org/host-your-project
- TAC call archives (YouTube): https://www.youtube.com/@LFDecentralizedTrust/search?query=TAC
- Newsletter (digest & dev updates): https://www.lfdecentralizedtrust.org/newsletter