Thanks for taking the time to contribute! 🎉
Contributing goes a long way, there are lots of ways you can still help, even if you can't contribute to the code. All methods are outlined in the sections below, but the two main things other than code are testing and creating issues.
The easiest way to contribute! By just using the software, you're already helping the project grows. Simply use and let us know if you run into problems, or there's some use case you would like to use it for but are not yet covered, this is the most common way we uncover bugs or implement new features. Open a new issue or start a new discussion.
Documentation is especially helpful! You can add something that hasn't been covered or is missing in the docs and help guide others with your experience. The source for the documentation lives in the workspace/content directory.
Follow this if you're looking to contribute to the code.
First step is to prepare your environment and make sure that pnpm is available to use, you can follow their installation guide or enable them through corepack.
corepack enable
corepack prepare pnpm@latest --activate
The next step is to checkout the code by forking and cloning the repository.
The first script to run is "watch"
in workspace/aubade
, this will compile and watch for changes in the source code. The next step is to run the dev server with "dev"
in workspace/website
, this will host the documentation site locally and it's the easiest way to see the code changes that you do in workspace/aubade
source.
How the project and code is structured, and some entry points to be aware of
workspace/content
- unprocessed markdown files containing all of the documentationworkspace/aubade/src/core
- aubade core module, compiler componentsworkspace/aubade/src/artisan
- aubade artisan module, syntax highlighter and markerworkspace/aubade/src/browser
- aubade browser module, DOM hydrating functionworkspace/aubade/src/compass
- aubade compass module, read files from diskworkspace/aubade/src/transform
- aubade transform module, transformers fortraverse
workspace/aubade/styles
- stylesheets used and exportedworkspace/website
- source code for the website
For maintainers of the project.
- prepare a new release draft with a new tag
- bump version in
package.json
and commit with~ vX.Y.Z
- publish release draft and title release with
X.Y.Z