Contributing
Welcome to the zpress contributing docs. This directory contains standards, templates, and guides for working in this codebase.
How to Use
- Standards define the rules -- read the relevant standard before writing code or docs.
- Concepts explain the "what" and "why" behind key architectural decisions.
- Guides are step-by-step walkthroughs for common tasks.
Table of Contents
Standards
TypeScript
- Naming -- File, variable, and property naming conventions
- Functions -- Object parameters, JSDoc, pure functions
- Design Patterns -- Functional patterns, factories, composition
- Coding Style -- Formatting, naming conventions, code organization
- State -- Immutability, state encapsulation, data flow
- Conditionals -- ts-pattern, branching logic
- Types -- Discriminated unions, branded types, type patterns
- Errors -- Result type, error handling
- Utilities -- es-toolkit reference
- Testing -- Test structure, mocking, coverage
Git
- Commits -- Commit message format and conventions
- Pull Requests -- PR creation, review, and merge process
Documentation
- Writing -- Writing standards and templates
- Formatting -- Code examples, tables, markdown
- Diagrams -- Mermaid diagram standards
Concepts
- Architecture -- Package ecosystem, sync engine, UI theme, data flow
- CLI -- Commands, dev server, file watching, build pipeline
Guides
- Getting Started -- Local setup, reading order, Claude Code configuration
- Developing a Feature -- Branch, code, test, changeset, PR, merge