2019-10-04 15:39:03 +00:00
# Contribution Process
2020-08-11 04:32:31 +00:00
1. Confirm your desired features fit into our bigger project goals [Roadmap ](https://github.com/pirate/ArchiveBox/wiki/Roadmap ).
2019-10-04 15:39:30 +00:00
2. Open an issue with your planned implementation to discuss
3. Check in with me before starting development to make sure your work wont conflict with or duplicate existing work
2019-10-04 15:39:03 +00:00
4. Setup your dev environment, make some changes, and test using the test input files
5. Commit, push, and submit a PR and wait for review feedback
6. Have patience, don't abandon your PR! We love contributors but we all have day jobs and don't always have time to respond to notifications instantly. If you want a faster response, ping @theSquashSH on twitter or Patreon.
**Useful links:**
2021-01-13 10:55:46 +00:00
- https://github.com/ArchiveBox/ArchiveBox/issues
- https://github.com/ArchiveBox/ArchiveBox/pulls
- https://github.com/ArchiveBox/ArchiveBox/wiki/Roadmap
- https://github.com/ArchiveBox/ArchiveBox/wiki/Install#manual-setup
2019-10-04 15:39:03 +00:00
### Development Setup
```bash
2021-01-13 10:55:46 +00:00
git clone https://github.com/ArchiveBox/ArchiveBox
2019-10-04 15:39:03 +00:00
cd ArchiveBox
2020-10-11 01:49:45 +00:00
# Ideally do this in a virtualenv
pip install -e '.[dev]' # or use: pipenv install --dev
2019-10-04 15:39:03 +00:00
```
### Running Tests
```bash
2020-10-11 01:49:45 +00:00
./bin/lint.sh
./bin/test.sh
./bin/build.sh
2019-10-04 15:39:03 +00:00
```
2021-01-13 10:55:46 +00:00
For more common tasks see the `Development` section at the bottom of the README.
2019-10-04 15:39:03 +00:00
### Getting Help
2020-10-11 01:49:45 +00:00
Open issues on Github or message me https://sweeting.me/#contact.