Source code and documentation for the "Code for Good" Conference (hackathon) for Free Geek.
Check out the docs where we keep a copy of the feature requests from Free Geek staff.
Also, we abide by the Free Geek volunteer Code of Conduct to make sure you review it here
$ pip install geeksched
$ git clone https://github.com/codeforgoodconf/freegeek.git
$ mkvirtualenv freegeek
$ pip install -e freegeek/
The project documentation is auto-rendered from the github repository to read the docs.
After changes are made in markdown files run these from the level of free-geek folder:
$ python freegeek/convert_docs.py
$ python freegeek/link_fix.py
$ python setup.py docs
These commands:
- Convert .md to .rst files
- Fix links in README.rst
- Build sphinx docs (read the docs)
Pandoc is required to convert the files. Installation is OS dependent.
It is possible to add the above python scripts to pre-commit hooks. Changes will not be commited, but they are generated for the next commit/push.
Please follow the "Adding flake8 into a pre-commit hook" for instructions on pre-commit hook, and use this script instead.
#!/bin/sh
flake8 .
python freegeek/convert_docs.py
python freegeek/link_fix.py
python setup.py docs
exit 0
It is possible to further automate the generation by adding git commands to the bash script. It is hover not reccomended to auto commit to git, thus it is left from the instructions.
pip install -r test-requirements.txt
- Open the hidden
.git
folder inside free-geek folder - Open the
hook
folder. - You are now in
free-geek/.git/hooks/
. - Create a file
pre-commit
. No extensions. - Write this into the file:
#!/bin/sh
flake8 .
exit 0
- Make the file executable:
chmod +x pre-commit
Commits must be executed in the terminal, not GUI.
Now before every commit flake8 will run and display the output into terminal window. It will not prevent the commit.