Satisfying type made easy.
Creating print-like vertical rhythm for the web has always been an absolute pain, requiring tedious adjustments. Rhythmic tries to solve that problem, speeding up the process of lining up type, and other elements, to your baseline grid.
Documentation for supported languages can be found at /src/language/[lang]/help.md.
We appreciate all contributions to this project! Before you get started, please take a moment to review our contribution guidelines.
For general contributions, please follow these steps:
- Open an issue: Create a new issue and apply the "feature" label.
- Describe your idea: Explain the new feature or update you're considering.
- Let's discuss: We'll talk it through to find a good path forward.
- Create a PR: Once we're on the same page, submit a pull request.
Translations are especially helpful in making this project accessible to a wider audience. If you'd like to contribute a translation:
- Create translation files: Add your translated content to
i18n.mdandhelp.md. - Update
supportedLanguages.js: Include your language code in this file. - Submit a Pull Request: Create a pull request with your changes for review.
npm installThis project uses Vite for rapid development. To start a local development server with hot reloading:
npm run devThe app will be available at the URL printed in your terminal (typically http://localhost:5173).
To create an optimized production build:
npm run buildThe build output will be in the dist directory.
To preview the production build locally:
npm run previewTo check for code style issues:
npm run lintTo run the test suite:
npm testThis project is licensed under the terms of the GNU Affero General Public License v3.0. See the LICENSE file for full details.