How to Contribute
Thank you for your interest in contributing to the CoAssembly Bylaws! This page explains the full contribution process and guidelines.
📋 Contribution Process
Section titled “📋 Contribution Process”1. Propose a change
Section titled “1. Propose a change”Option A: Via GitHub Issue
Best for: raising questions, suggesting directions, discussing article concerns
- Go to the Issues page
- Click “New issue”
- Describe your suggestion (please be as specific as possible)
- Wait for member discussion and response
Option B: Submit a Pull Request directly
Best for: clear and specific changes (typos, formatting, supplementary notes)
2. Fork & Clone the project
Section titled “2. Fork & Clone the project”# Fork this project to your account# Then clone locallygit clone https://github.com/your-account/co-assembly.gitcd co-assembly
# Install dependenciesnpm install
# Start local dev servernpm run dev3. Create a feature branch
Section titled “3. Create a feature branch”# Create a new branch from maingit checkout -b feature/your-change-description
# Examples:git checkout -b fix/membership-typogit checkout -b feature/add-remote-work-clause4. Make your changes
Section titled “4. Make your changes”Edit the corresponding MDX files:
- Bylaws:
src/content/docs/bylaws/*.mdx - Glossary data:
src/data/glossary.json(then runnpm run gen:glossary) - Changelog: auto-generated — run
npm run gen:changelog - Contributing guide:
src/content/docs/meta/contributing.mdx
5. Check translation sync
Section titled “5. Check translation sync”After editing ZH source files, check whether EN translations need updating:
npm run i18n:checkIf updates are needed, generate a ready-to-paste LLM prompt:
npm run i18n:prompt > translation-prompt.mdAfter completing translations:
npm run i18n:fix6. Submit a Pull Request
Section titled “6. Submit a Pull Request”- Push your branch to GitHub
- Open a Pull Request
- Fill in the description (what changed and why)
- Wait for review from Co-op members
📝 Writing Guidelines
Section titled “📝 Writing Guidelines”Article code format
Section titled “Article code format”Article codes (e.g., MEM-01, GOV-06, POOL-03A) are automatically linked — you don’t need to write [MEM-01](/bylaws/02-membership/#mem-01). Just write the code and it becomes a link.
Glossary terms
Section titled “Glossary terms”Glossary terms are also automatically linked on first occurrence per page. The source of truth is src/data/glossary.json. To add or change a term:
- Edit
src/data/glossary.json - Run
npm run gen:glossaryto regenerate both ZH and EN glossary pages - Both glossary pages are auto-generated — do not edit them directly
Bylaw parameters
Section titled “Bylaw parameters”Numbers like thresholds, periods, and ratios live in src/params.json. To change a value:
- Edit
src/params.json - All pages using
{params.KEY}will automatically reflect the change after rebuild - Run
npm run i18n:check— the system will flag all EN files that may need review
🔢 Versioning
Section titled “🔢 Versioning”We use Semantic Versioning:
- Major (x.0.0): Significant structural changes or backward-incompatible modifications
- Minor (0.x.0): New sections or important articles added
- Patch (0.0.x): Text corrections, clarifications, typo fixes
🔔 Stay Updated
Section titled “🔔 Stay Updated”Watch this project on GitHub and select “Releases only” to receive notifications for new versions.