The TiDB community consists of developers, users and partners in the TiDB ecosystem, dedicated to building a “database for the future” and a sustainable ecosystem for TiDB. With the continuous efforts and help of the entire community, the TiDB ecosystem is also growing, with more and more open source projects becoming part of the TiDB family. Such as TiKV, an open source distributed transaction key-value database; Weir, a service-oriented database management platform for TiDB; And TiBigData, a big data component for connecting technology stacks like TiDB and Apache Flink.

In the future, more projects will sprout, grow, mature and even develop into independent projects in the TiDB community. In order to help these projects gain more resources and help from the community, and grow quickly to a mature stage with practical application scenarios, TiDB community has officially launched the incubator project!

The significance of joining an incubator

Being part of TiDB’s incubator means that these projects fit well within the TiDB ecosystem and have a wide range of application scenarios that benefit from community support and management.

During the incubation phase, the TiDB community provides technical and regulatory guidance for these projects, including open source agreements, up-to-date template documentation, and healthy open source collaboration processes. Projects will be developed in accordance with the TiDB community code of conduct. Once these projects meet certain criteria, they become graduate projects. The TiDB community will provide comprehensive marketing support for graduation projects and help them quickly gain attention in the community and outside world.

The specific project benefits are mainly as follows:

  • The TiDB community provides technical and regulatory guidance for incubation projects, including open source agreements, up-to-date template documentation, and healthy open source collaboration processes.

  • Experienced mentors help projects to be quickly landed without detours;

  • Incubation project developers become open source project maintainers, increase open source collaboration experience, honor bonus;

  • TiDB community provided promotion support for the project, and the project quickly gained community participation and external attention.

Incubating projects

TiBigData

Initiated by Zhihu, the Incubator project TiBigData aims to solve the integration problem of TiDB between various technology stacks in the enterprise big data scenario. At present, TiDB has been provided with the integration capability of Flink and Presto, and has been applied in zhihu’s data integration platform and OLAP analysis scenarios. **TiDB Community TOC (Technical Oversight Committee) Chairman Sun Xiaoguang “TiBigData project is initiated by Zhihu and belongs to the whole TiDB community. On the one hand, we hope to benefit users with similar needs in the community, and on the other hand, we also hope to activate the community’s power to complement TiDB’s support capability in various technology stacks of big data. To build TiBigData into a one-stop solution for TiDB in big data.”

Weir

**Weir is a database middleware platform for distributed database initiated by Panyu. It has completed MySQL protocol support, multi-tenant management, connection pool, back-end load balancing, configuration hot loading, platform-based management and other functions, and started to promote business access within Panyu. Xianlin Chen, member of **TiDB Community TOC and director of Banyu Technology Center says, “By participating in TiDB Community Incubator project, we can quickly find like-minded friends. We can share ideas and collaborate together to make open source easier and more interesting.”

TiDE

TiDE is a TiDB plug-in based on the popular Code editor Visual Studio Code. It can develop and debug TiDB clusters locally/remotely, allowing developers to easily start test clusters locally and debug real-time writing without having to understand the internal mechanics of TiDB. Greatly improve the developer development and debugging TiDB project experience. This project won the second prize and CTO Special Award in TiDB Hackathon 2020.

zh.md

En. Md has implemented a set of Chinese document analysis and detection tools, which can systematically scan and diagnose documents, evaluate their quality, optimize and repair them based on AST (Abstract syntax tree) and word segmentation, and assist authors to write documents in accordance with style specifications based on the results of document analysis, using statistics /NLP and other tools. This project won the third prize in TiDB Hackathon 2020.

Ti-Improve

Ti-improve projects can use AWS infrastructure to test TiDB, such as S3 to store backup files, lambda to perform specific test matters, AWS codepipeline to serve as the scheduling execution engine, and cloud watch to observe TiDB performance. And you can use Chaos Mesh®️ for injection, etc. The project won the TiDB Hackathon 2020 — Most Potential Market Award.

All of the above incubating projects are hosted under the TiDB Incubator Repo:Github.com/tidb-incuba…Welcome more interested partners to contribute ~

How to join an incubator?

If you would like to incubate a new project in TiDB Ecology, please follow the “Project Incubation Process” below to join the TiDB Incubation program.

Requirements for entering the incubator

  • Projects must extend the functionality or performance of existing TiDB and fall within the scope of TiDB ecology;

  • There are basic project information files, including:

    • README.md

    • LICENSE (Apache 2)

  • The source code is stored on GitHub;

  • Have at least 2 committers;

  • The TiDB Community TOC was voted to pass.

Project incubation process

Apply for incubation → Start incubation → project promotion proposal → graduation process

🌟 Apply for incubation

Step 1: Write a proposal

Submit the proposal to the Community repo as a GitHub Issue and include the following:

  • A problem to be solved;

  • Initial team members and expected number of members;

  • Estimated completion time. Incubation programs are usually completed within 12 months;

  • Submit links to design documents with PR to determine if the project meets standards.

Step 2: Mentor (optional)

Mentor regularly checks on the completion of projects and provides timely guidance and advice. After submitting the application for project incubation, one or two mentors can be found in the community. This is not necessary, however, and TOC will assist projects in the incubation phase if they do not have mentors.

Step 3: Get TOC approval

TOC organizes project defense for projects that apply for incubation. Depending on the defense and project maturity criteria, TOC votes on whether to approve the project incubation application.

Step 4: Recruit members

Team recruitment should be completed within 1 week after the proposal for project incubation is approved. If it can’t be done within a week, TOC can help build a team or delay incubation.

🌟 start incubation

The entire incubation process will be carried out as a working group. Each incubation project will receive a REPO under the TIDB-Incubator organization. The project owner will add the following files under the REPO:

  • The README. Md file

  • LICENSE File (Apache 2.0)

The above files can be referred to the relevant template documents by clicking the link.

For each incubation project, monthly reports will be submitted each month for the first 10 months. Monthly reports must be publicly available online, and Google Docs is recommended. The monthly report is for the mentor of the project. If there is no mentor, the monthly report will be one of the topics in the TOC monthly meeting.

🌟 project promotion proposal

When most of the project members feel that the project has reached a higher level, discuss with Mentor and submit a proposal for the next stage. If mentor has no opinion, the project owner can create a PR and submit an application. TOC will organize promotion defense for the project.

🌟 Graduation process

Graduation from the program includes the following process:

  • Submit graduation PR

  • TOC members organize graduation defense (if required)

  • TOC members take a stand by replying to PR

  • The relevant working group was dissolved

If the graduation application is not accepted, the program will continue to incubate. In principle, all incubators must graduate within 12 months, and if they cannot graduate within 12 months, TOC has the discretion to discontinue the incubators.

Welcome more excellent projects to join the TiDB incubator and incubate your technology ideas with us! If you have any questions or suggestions, please feel free to contact us through the # Incubator Channel at TiDB Community Slack.