Skip to content
This repository has been archived by the owner on Jun 27, 2019. It is now read-only.

pyvec/cz.pycon.org-2017

Repository files navigation

⚠ This repository is archived 🗄

https://cz.pycon.org/2017/ is now served as a static website. Look for it in the repo for PyCon CZ 2019 (or further years).

PyConCZ 2017

PyCon CZ taking place in Prague for its third edition.

Contributing

PyCon CZ website is using Python 3.5/Django for the backend, NodeJS for bundling frontend assets and Postgresql as a database.

Setup dev environment

Django

Inside pyconcz_2017 directory, run following commands to setup project for local development:

  1. You can either use sqlite database, if you only need to work with static pages and styles, in which case, you don't need to setup anything. Or, if you need to work with dynamic apps, you need to use postgresql.

    Prepare postgresql database: user pyconcz, password empty, database pyconcz

    E.g. on Mac:

    $ createuser --pwprompt pyconcz
    $ createdb -Opyconcz -Eutf8 pyconcz
    
  2. python3 -m venv env

  3. pip install -r requirements-dev.txt

  4. copy pyconcz_2017/settings/local_template_dev.py to pyconcz_2017/settings/local.py

  5. ./manage.py migrate

Static files

You only need this if you work with styles or images.

For styles and images processing to work, you need to have node.js and gulp-cli installed globally (sudo npm install gulp-cli -g)

Inside root directory (the same directory where manage.py is) run npm install

Development

Django

You can run your dev server manually on http://localhost:8000 with:

./manage.py runserver --settings=pyconcz_2017.settings.local

Static files

To start development with static files being processed run gulp. It will also start dev server for you.

Open http://localhost:3000 and you should see development version of website with automatic compiling and reloading.

Everything in /static/css and /static/img is replaced with processed content of /static_src/css and /static_src/img respectively. So don't edit anything inside /static/css and /static/img manually.

Same would go for own JavaScript but we don’t have any.

Building

After each production build, you have to commit newly generated CSS and image files. Old files are automatically replaced.

  1. npm run build
  2. git add pyconcz_2017/static

Deployment

Just use fab production deploy to deploy to production or fab beta deploy to deploy to beta site.

License

This work is licensed under a MIT