Thank you for considering contributing to ChatCraft.org! This document outlines the guidelines and steps to contribute to the project.
To get started with contributing to ChatCraft.org, please make sure you have the following:
- Fork the repository on GitHub.
- Clone your forked repository to your local machine.
- Navigate to the project's root directory.
- Install the project dependencies by running the following command:
pnpm install
To run the ChatCraft.org site locally, use the following command:
pnpm dev
This command will start the development server and open the site in your default browser. Any changes you make to the source code will automatically trigger a rebuild and refresh the browser.
ChatCraft uses CloudFlare Pages Functions, R2 Buckets, GitHub OAuth, etc. to provide various APIs.
Running a local version of these backend services is possible using the following command:
pnpm dev-functions
This will start the app as well as a local version of CloudFlare (via wrangler), which will proxy everything at http://localhost:9339/
When you're ready to submit your changes, please follow these steps:
- Commit your changes to your local repository.
- Push your changes to your forked repository on GitHub.
- Open a pull request against the main repository.
We follow a specific code style to maintain consistency throughout the project. Please make sure your code adheres to the following guidelines:
- Use consistent indentation (preferably 2 spaces).
- Follow the naming conventions used in the existing codebase.
- Write clear and concise comments when necessary.
- Keep lines of code within 80 characters.
- use
prettier
via VSCode or run theprettier
script to auto-format. We also format on commit with Husky.
See README.sops.md for details regarding how we encrypt and share secrets.
If you make a change, please record a video or describe feature in a blog post.
When creating an issue or pull request, please provide as much detail as possible. This includes a clear description of the problem or proposed change, steps to reproduce (if applicable), and any relevant code or screenshots.
We welcome contributions from everyone in the community. If you have any questions, suggestions, or need assistance, please feel free to reach out to us on our official Discord server.
By contributing to ChatCraft.org, you agree that your contributions will be licensed under the MIT License.