Contributing to Lito
We’re glad you’re interested in contributing to Lito. Whether you’re fixing a typo, reporting a bug, or building an entire framework template, every contribution matters and helps make documentation better for everyone.
Lito is an open-source project and we welcome contributions of all sizes. This guide will help you get started.
Ways to Contribute
Bug Reports
Found something broken? Open a GitHub issue with steps to reproduce, expected behavior, and your environment details. Good bug reports save everyone time.
Documentation
Improve existing docs, fix typos, add examples, or write new guides. Documentation contributions are one of the most impactful ways to help.
Framework Templates
Help bring Lito to React, Next.js, Vue, and Nuxt. The Astro template is production-ready and serves as the reference implementation for other frameworks.
Core Features
Contribute to the CLI, add new MDX components, improve the build pipeline, or work on planned features from the roadmap.
Framework Templates Need Your Help
The Astro template is production-ready with 20+ MDX components, full theming, search, and API documentation support. The other framework templates are at various stages and need community contributors to reach parity.
| Template | Status | Repository | What’s Needed |
|---|---|---|---|
| Astro | Production Ready | lito-astro-template | Bug fixes, new components |
| React | In Progress | lito-react-template | MDX components, sidebar, search |
| Next.js | In Progress | lito-next-template | MDX components, sidebar, search |
| Vue | Early Stage | lito-vue-template | Core layout, components, routing |
| Nuxt | Early Stage | lito-nuxt-template | Core layout, components, routing |
Each template shares the same design system (theme.css) so the visual output is consistent across frameworks. The main work involves porting the Astro components and layouts to each framework’s conventions.
Pick the framework you know best and start by porting a few core components (Card, Tabs, Steps, Accordion). The Astro template source code serves as the reference implementation.
Development Setup
Fork the repository
Fork the repo you want to work on from github.com/Lito-docs. For CLI work, fork lito. For template work, fork the relevant template repo.
Clone your fork
git clone https://github.com/your-username/cli.gitcd cliInstall dependencies with pnpm
Lito uses pnpm as its package manager. Install dependencies for the project you’re working on:
pnpm installStart the dev server
For CLI development, test against the sample docs:
node bin/cli.js dev -i ../sample-docsFor template development, run the template directly:
pnpm devMake your changes
Create a new branch, make your changes, and test them thoroughly. Run lito build -i ../sample-docs to verify production builds work correctly.
Code Style Guidelines
- Use pnpm for all package management
- Follow existing code patterns and naming conventions in the codebase
- CSS uses Tailwind v4 with OKLCH color space and
@theme inlineblocks - MDX components should use theme-aware CSS variables (
--primary-*,--gray-*, semantic tokens) rather than hardcoded colors - Keep components accessible: use semantic HTML, ARIA attributes, and keyboard navigation where appropriate
- Write clear, concise commit messages that describe what changed and why
Pull Request Process
Create a branch
Branch from main with a descriptive name: feat/vue-card-component, fix/sidebar-scroll, or docs/update-installation.
Make focused changes
Keep PRs focused on a single concern. Smaller PRs are easier to review and merge. If you’re making unrelated changes, split them into separate PRs.
Test your changes
Run the dev server and verify your changes work. For CLI changes, test both dev and build commands. For template changes, check light and dark mode, mobile responsiveness, and accessibility.
Write a clear PR description
Describe what you changed, why, and include screenshots for visual changes. Reference any related GitHub issues.
Submit and iterate
Open the PR against main. A maintainer will review it and may request changes. Don’t worry if revisions are needed — that’s a normal part of the process.
Questions?
Have questions about contributing, need help getting started, or want to discuss a feature idea? Join the Lito Discord server — we’re happy to help. You can also open a GitHub Discussion for longer-form conversations.
Related Resources
- Roadmap — See what’s planned and where help is most needed
- FAQ — Common questions about Lito
- Architecture — Understand how Lito works under the hood
- Components Reference — Full list of available MDX components