Contributing to Zeno
September 28, 2025 ยท View on GitHub
Thank you for your interest in contributing to Zeno! We welcome developers, designers, and writers to help make Zeno better.
๐ฆ How to Contribute
1. Fork & Clone
# Fork this repository on GitHub
# Clone your fork
git clone https://github.com/your-username/zeno.git
cd zeno
2. Install Dependencies
npm install
3. Make Your Changes
- Bug Fixes: Check the issues labeled
bug. - Features: Check the issues labeled
enhancementor propose your own. - Themes: Create a new theme in
themes/folder and make it compatible. - Plugins: Add plugins in the
plugins/folder following the plugin hook conventions. - Tests: Be sure to include unit tests in
*.test.jsmodules for your contributions.
4. Test Your Changes
# Run the test suite
npm run test
# Serve locally
npm run dev
5. Commit and Push
git add .
git commit -m "Add your descriptive message"
git push origin your-branch
6. Open a Pull Request
- Go to your fork on GitHub and open a PR to the main repository.
- Include a description of your changes and why they improve Zeno.
๐ Plugin & Theme Guidelines
- Plugins: Follow the plugin hook interface:
onMarkdownParse,onRenderHTML,onPostBuild. - Themes: Ensure the folder contains
index.html,post.html,style.cssand optionallycomponents/. - Naming: Keep theme and plugin names lowercase and hyphen-separated.
๐งน Code Style
- Use ES Modules (
import/export), not CommonJS. - Use 2-space indentation.
- Keep functions small and modular.
- Document new hooks, features, or changes in
README.mdif relevant.
โ ๏ธ Issues & Bug Reporting
- Create issues for any bugs or feature requests.
- Include steps to reproduce, expected behavior, and screenshots if applicable.
๐ค Be Respectful
- Treat maintainers, contributors, and users with respect.
- Keep discussions constructive and focused on the code or content.
Thanks for helping make Zeno an amazing, hackable Markdown blog framework!