This repository hosts the next generation of plat/al, Polytechnique.org's PLATform for ALumni.
It is intended as a brand new, clean redesign of the main site:
- A clean backend accessed through a REST API
- A new, full-browser UI built upon React.js (to be confirmed)
The final design should be built around the following components:
- A main SQL database
- A cache (likely Redis)
- A search engine (likely ElasticSearch)
- A Django-based backend, exposing an API through django-rest-framework
- A full UI, using Backbone.js, Flux and React.js
backend/
contains the backend projectui/
contains the JS partsdocs/
include the documentation, built using Sphinx.
- For the API:
- Install Python3.4
- Create a virtualenv:
pyvenv ~/dev/venvs/platal2
- Enter it:
. ~/dev/venvs/platal2
- Install requirements:
cd backend; make install-deps
- Adapt
example_settings.ini
into alocal_settings.ini
suitable to access the production database - Setup the Django part:
./manage.py syncdb
- Start it up!
./manage.py runserver
- For the UI:
- Install nodejs
- Enter the UI directory:
cd ui
- Install the dependencies:
make install-deps
- Compile the project:
make build
- Run the UI:
make runserver
- In order for the UI to be able to fetch data, open https://platal2-demo.polytechnique.org/auth/login/?next=/api/ and login there
- The UI is distributed under a yet-to-be-defined license, likely GPLv3
- The API code is distributed under the AGPL license.