Thank you for your interest in contributing to StoryCraftr! We welcome contributions from everyone and encourage collaboration to make this project better. Whether you’re a developer, a writer, or someone passionate about improving writing tools, your input is valuable.
Start by forking the repository to your own GitHub account. You can fork the project by clicking the "Fork" button on the top-right of the repository page.
After forking, clone the repository to your local machine:
git clone https://github.com/your-username/storycraftr.git
cd storycraftr
Create a new branch for your feature or bug fix:
git checkout -b feature/my-feature-name
Implement your feature, fix a bug, or improve documentation. Ensure that your changes are consistent with the coding style and structure of the project. If you are adding a new feature, make sure to add corresponding documentation or comments where necessary.
If applicable, make sure your changes pass all tests. You can run the tests locally using:
# Example if we have a test suite
poetry run pytest
If there are no formal tests in place, please test your changes to the best of your ability.
Use Semantic Commit Messages to make your changes clearer and more organized. The format is:
<type>(<scope>): <description>
- Type: Describes the kind of change. For example:
feat
,fix
,docs
,style
,refactor
,test
,chore
. - Scope: The part of the project the change affects (optional). For example:
worldbuilding
,outline
,chapters
. - Description: A brief explanation of the change.
Examples:
-
Adding a new feature:
git commit -m "feat(worldbuilding): add new geography prompt handling"
-
Fixing a bug:
git commit -m "fix(outline): correct plot points generation bug"
-
Updating documentation:
git commit -m "docs: update README with new installation instructions"
Make sure to commit often with meaningful messages to keep track of your changes effectively.
Push your branch to GitHub:
git push origin feature/my-feature-name
Go to the original repository on GitHub and open a pull request from your forked branch. Provide a detailed description of your changes and explain the problem you’re solving or the feature you’re adding.
Once you've submitted your pull request, be open to feedback from maintainers and other contributors. We may ask for changes, additional tests, or improvements to ensure the quality and stability of the project.
We appreciate all kinds of contributions, including:
- Bug Fixes: If you find a bug, please let us know by opening an issue or fixing it yourself and submitting a pull request.
- Feature Requests: Suggest new features by opening an issue, or even better, implement the feature and open a pull request.
- Documentation: Improving the documentation is a great way to help other developers and users. This includes improving README, adding examples, and creating tutorials.
- Refactoring: If you see areas where the code could be improved, feel free to make those changes.
- Tests: If there is missing test coverage, feel free to add tests.
Please be respectful and considerate in all interactions with the community. We strive to create an inclusive and welcoming environment for all contributors. See our Code of Conduct for more details.
If you encounter an issue with StoryCraftr, please report it using the issue tracker. Include details such as your system environment, steps to reproduce the issue, and any error messages or logs.
If you’re not sure where to start, feel free to ask questions by opening an issue or starting a discussion. We’re here to help!
Thank you for helping make StoryCraftr better! 🚀