# freepost This is the code powering [freepost](https://freepo.st), a free discussion board that allows users to post text and links that other users can read and comment. # Development ## Setup Python3 virtual environment cd freepost-directory python3 -m venv venv (if this doesn't work, try `virtualenv -p /usr/bin/python3 venv`) source venv/bin/activate pip3 install -r requirements.txt ## Run test server source venv/bin/activate python3 -m bottle --debug --reload --bind 127.0.0.1:8000 freepost ## Build stylesheets Build CSS files stylus --watch --compress --disable-cache --out freepost/static/css/ freepost/static/stylus/freepost.styl # Deployment - Build CSS stylesheets (see `Development` above) - Copy all files to your `public_html` folder - Make sure `settings.yaml` has restricted permissions, for instance `0600` - If the SQLite database is located in the same HTML folder, make sure this too has restricted access - Rename `.htaccess.wsgi` or `.htaccess.cgi` to `.htaccess` (if you use CGI or WSGI) - Change settings in `settings.yaml` if needed - Create Python virtual environment For tuxfamily only: run `newgrp freepost` before creating the virtenv, for quota reasons - Create a new empty SQLite database: `cat database.schema.sql | sqlite3 database.sqlite` Everything should be setup and working. Make sure your CGI or WSGI server is configured correctly. ## License freepost is [free software](https://www.gnu.org/philosophy/free-sw.html) licensed as GNU Affero General Public License, either version 3 or (at your option) any later version.