diff --git a/FUNDING.md b/FUNDING.md new file mode 100644 index 0000000..efbafc6 --- /dev/null +++ b/FUNDING.md @@ -0,0 +1,32 @@ +# Funding + +Lingui is an open-source project maintained by a dedicated community of contributors. While the project itself doesn't collect direct donations, we deeply appreciate the support of our contributors. + +## Supporting Contributors Directly + +You can support individual Lingui contributors through GitHub Sponsors (preferred) or other platforms. Whether they are a maintainer, a frequent contributor, or someone whose work you appreciate, you have the freedom to sponsor whomever you'd like. + +Your sponsorship helps contributors dedicate time to: + +- Developing new features and improvements +- Fixing bugs and addressing issues +- Maintaining documentation +- Supporting the community + +## The Lingui Fund + +Lingui is maintained under the stewardship of [Crowdin](https://crowdin.com), which dedicates a monthly budget to the **Lingui Fund** to ensure the project's sustainability. + +This fund provides sponsorship (one-time or recurring) to active community members. Eligibility is based on impact, such as significant code contributions or bug fixes, documentation improvements, or helping the community in support channels. + +## Other Ways to Support + +If you're unable to provide financial support, there are many other valuable ways to contribute to Lingui: + +- **Contribute code**: Submit pull requests for bug fixes, features, or documentation improvements +- **Help others**: Answer questions and help users in our [Discord community](https://discord.gg/gFWwAYnMtA) +- **Report issues**: File detailed bug reports or feature requests +- **Spread the word**: Share Lingui with others and write about your experiences +- **Review pull requests**: Help review and provide feedback on open pull requests + +Learn more about contributing in our [Governance documentation](GOVERNANCE.md). diff --git a/GOVERNANCE.md b/GOVERNANCE.md new file mode 100644 index 0000000..7547548 --- /dev/null +++ b/GOVERNANCE.md @@ -0,0 +1,130 @@ +# Governance + +This document outlines the governance model for Lingui. This includes detailed descriptions of different roles, nomination processes, code review processes, and Code of Conduct enforcement. + +👉 **All community members must follow the [Code of Conduct (CoC)](CODE_OF_CONDUCT.md).** + +## Roles + +Lingui's governance is structured around different roles that recognize various levels of contribution and responsibility within the project. These roles help organize the community and ensure the project's long-term health and success. + +The project recognizes the following roles: + +- **Steward**: Administrative role responsible for project assets and final decision-making +- **Core Contributors (Maintainers)**: Active contributors who help maintain and grow the project +- **Contributors**: Contributors who have made significant contributions to the project +- **Alumni**: Former Maintainers who have stepped away from active contribution + +### Steward + +The **Steward** is an administrative role responsible for maintaining sensitive project assets, assisting in resolving conflicts, and acting as tiebreakers in the event of disagreements. + +The Lingui project is maintained under the stewardship of **Crowdin**, which serves as the project steward and maintains oversight of the project and its assets. + +In extremely rare cases, a Steward can act unilaterally when they believe it is in the project's best interest and can prove that the issue cannot be resolved through normal governance procedure. The steward must publicly state their reason for unilateral action before taking it. + +#### Responsibilities + +- Administration privileges on the [Lingui GitHub organization](https://github.com/lingui) +- Publish access to Lingui npm packages (`@lingui/*`, `eslint-plugin-lingui`) +- Administration privileges on the [Lingui website](https://lingui.dev) (Domain registration, Vercel hosting, Algolia search) +- Management of the [Lingui Fund](FUNDING.md) +- [@LinguiJS X(Twitter)](https://x.com/LinguiJS) account administration +- Administration privileges on Discord community server +- Project planning and moderation decisions +- Marketing and partnership activities + +#### Members + +- [andrii-bodnar](https://github.com/andrii-bodnar) as a representative of Crowdin + +### Core Contributors (Maintainers) + +Core Contributors are active contributors who help maintain and grow the project. + +#### Privileges + +- `@core` role on Lingui Discord server +- Push access to repositories in the Lingui GitHub organization +- Ability to triage issues and pull requests + +#### Members + +- [andrii-bodnar](https://github.com/andrii-bodnar) (triaging issues and planning, website and documentation, blog, CI/CD and release process, coordinating marketing activities) +- [timofei-iatsenko](https://github.com/timofei-iatsenko) (triaging issues and planning, tooling, technical direction of the project) +- [vonovak](https://github.com/vonovak) (React and React Native integrations, tooling) + +Note: The above responsibilities are neither exhaustive nor exclusive. Core Contributors may take on different responsibilities based on their interests and areas of expertise. Often, responsibilities are shared among team members. Core Contributors share responsibility for project direction and planning. + +#### Nomination + +Core members may self-nominate or be nominated by any existing Core Member or the Steward. To be nominated, a candidate should already perform some of the responsibilities of a Core Member. These responsibilities include: + +- Consistently contributing code, documentation, or other improvements +- Actively triaging issues and reviewing pull requests +- Helping to maintain the project over an extended period + +Nominations are reviewed and approved by existing Core Members and the Steward. + +### Contributors + +Contributors are community members who have made significant contributions to the Lingui project. + +#### Privileges + +- `@contributor` role on Lingui Discord server +- Recognition as a Contributor +- Eligibility for sponsorship from the [Lingui Fund](FUNDING.md) + +#### Examples of recognized contributions + +- Submitting merged pull requests (features, bug fixes, documentation) +- Filing detailed bug reports or feature requests +- Reviewing pull requests and providing feedback +- Helping users in [community channels](#communication-channels) +- Improving documentation or creating content about Lingui + +#### Responsibilities + +No extra responsibilities or time commitment required. + +#### Nomination + +Contributors can be nominated by any Maintainer or can self-nominate by reaching out to a Maintainer with links to their contributions. + +### Alumni + +**Alumni** is a special designation for Maintainers who have stepped away from the project and no longer contribute regularly. + +- [@tricoder42](https://github.com/tricoder42) +- [@semoal](https://github.com/semoal) + +## Communication Channels + +The Lingui community uses several channels for different types of communication. Choose the appropriate channel based on your needs. + +### GitHub + +- **Issues**: Report bugs, request features, or ask questions about the project +- **Discussions**: General questions, ideas, and community discussions +- **Pull Requests**: Code contributions and code review discussions + +### Discord + +- **General support**: Quick questions and community help +- **Real-time collaboration**: Live discussions with Maintainers and Contributors +- **Announcements**: Project updates and important news + +### Social Media + +- **X (Twitter)**: [@LinguiJS](https://x.com/LinguiJS) - Project updates and community highlights + +### Contacting Maintainers + +For private matters, security issues, or Code of Conduct violations, you can: + +- Reach out to Maintainers directly via Discord +- Use GitHub Discussions for public inquiries +- Contact the Steward for governance-related matters + +For more information about community standards, see the [Code of Conduct](CODE_OF_CONDUCT.md). diff --git a/README.md b/README.md index f0997ae..91a1a51 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,7 @@ Welcome! This repository contains community health files for the @lingui organization. > **Note**: Learn more about [community health files](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file) for GitHub + +- [Code of Conduct](CODE_OF_CONDUCT.md) +- [Governance](GOVERNANCE.md) +- [Funding](FUNDING.md)