Contributing
Learn how to contribute to the Arcane project, from reporting bugs to submitting code.
Ways to Contribute
Reporting Bugs: If you encounter a bug, please help us by submitting a detailed bug report.
Use the Bug Report template on GitHub.Suggesting Features: Have an idea for a new feature or an enhancement? We'd love to hear it!
Use the Feature Request template on GitHub.Code Contributions: If you'd like to contribute code, please follow the process outlined below.
Documentation: Improvements to the documentation are always welcome.
Code Contribution Process
Fork the Repository: Start by forking the main Arcane repository on GitHub.
Clone Your Fork: Clone your forked repository to your local machine:
git clone https://github.com/ofkm/arcane.gitCreate a Branch: Create a new branch for your feature or bug fix. Use a descriptive name:
git branch -m feat/my-new-feature
Backend
For the backend you can use
airfor hot reloading:go install github.com/air-verse/air@latest
Then just run
airinarcane/backendfolder.Frontend
The frontend uses vite for development:
cd frontend
npm run dev
Make Changes: Implement your feature or bug fix. Write clear, concise code.
Lint and Format: Ensure your code adheres to the project's style guidelines by running the linters and formatters:
cd frontend
npm run lint
npm run format
Test Your Changes: Test your changes thoroughly to ensure they work as expected and don't break existing functionality.
Commit Changes: Commit your changes with a clear and descriptive commit message.
We use Conventional Commitsgit add .
git commit -a -m "feat: add feature X"
#or
git commit -m "fix: resolve issue Y"
Keep Your Branch Updated: Periodically update your branch with the latest changes from the upstream repository:
git fetch upstream
git rebase upstream/main
Push Your Branch: Push your changes to your forked repository:
git push origin feature/my-new-feature
Open a Pull Request: Go to the original Arcane repository on GitHub and open a Pull Request (PR) from your branch to the main branch of the upstream repository.
- Provide a clear title and description for your PR.
- Reference any related issues (e.g., "Closes #123").
- Be prepared to discuss your changes and make adjustments based on feedback.
Code Style
Arcane uses ESLint and Prettier to enforce code style and consistency. Please run npm run lint and npm run format in the frontend directory before committing your changes. Configuration files are included in the repository.
Development Tips
- Use Svelte 5 syntax for all frontend files
- Follow the existing code patterns and conventions
- Keep commits focused and atomic
- Write meaningful commit messages
- Test your changes in both development and production builds
Thank you for contributing to Arcane! We look forward to your pull requests and appreciate your help in making Arcane better. If you have any questions or need further clarification, feel free to reach out to the maintainers or the community.