Rust library to generate static websites
1# Contributing to Maudit
2
3First, a huge **thank you** for dedicating your time to helping us improve Maudit ❤️
4
5> [!Tip]
6>
7> **New to open source?** Check out [https://github.com/firstcontributions/first-contributions](https://github.com/firstcontributions/first-contributions) for helpful information on contributing
8
9## Before Opening Issues
10
11- **Do not report security vulnerabilities publicly** (e.g., in issues or discussions), please refer to our [security policy](https://github.com/bruits/maudit/blob/main/SECURITY.md).
12- **Do not create issues for questions about using Maudit.** Instead, ask your question in our [GitHub Discussions](https://github.com/bruits/maudit/discussions/categories/q-a) or on [our Discord](https://maudit.org/chat).
13- **Do not create issues for ideas or suggestions.** Instead, share your thoughts in our [GitHub Discussions](https://github.com/bruits/maudit/discussions/categories/ideas) or on [our Discord](https://maudit.org/chat).
14- **Check for duplicates.** Look through existing issues and discussions to see if your topic has already been addressed.
15- Please include a reproducible example to help us understand your issue.
16- In general, provide as much detail as possible. No worries if it's not perfect, we'll figure it out together.
17
18## Before submitting Pull Requests (PRs)
19
20- **Check for duplicates.** Look through existing PRs to see if your changes have already been submitted.
21- PRs don't need to be perfect. Submit your best effort, and we will gladly assist in polishing the work.
22
23## Code of Conduct
24
25We’re committed to fostering a welcoming and respectful community. Any issue, PR, or discussion that violates our [code of conduct](https://github.com/bruits/maudit/blob/main/CODE_OF_CONDUCT.md) will be deleted, and the authors will be **banned**.
26
27## Getting started
28
29Maudit is a fairly standard Rust project with a typical directory structure. It does not rely on any third-party build systems, complex configurations or dependencies in other languages.
30
31### Prerequisites
32
33- Latest stable version of [Rust](https://www.rust-lang.org/)
34- (Optional, for website, examples using Tailwind and the CLI) [Node.js](https://nodejs.org/) and [pnpm](https://pnpm.io/).
35 - We recommend installing pnpm using [Corepack](https://pnpm.io/installation#using-corepack).
36
37### Project structure
38
39Maudit is a Rust monorepo using [Cargo workspaces](https://doc.rust-lang.org/book/ch14-03-cargo-workspaces.html).
40
41```bash
42├── crates/
43│ ├── maudit/ # Maudit
44│ ├── maudit-macros/ # Proc macros the library exposes (e.g. #[route])
45│ └── maudit-cli/ # Maudit's CLI and dev server
46├── examples/ # Various examples showcasing Maudit's capabilities, also used as templates
47└── website/ # Maudit's website and documentation
48```
49
50---
51
52Thank you once again for contributing, we deeply appreciate all contributions, no matter how small or big.