This is a showcase project to bring together a number of different technologies in a hexagonal architecture:
Django, DRF (RESTful API), VueJS, Leaflet, Postgres, Nginx, Gunicorn, Docker
- develop application features
- represent offices, reservations and clients
- design and implement a RESTful API for them
- connect to kafka/rabbitmq message broker
- offload pdf bill generation to worker queue
- mount document storage for authenticated uploads
- frontend using VueJS
- about page presenting the project
- registration and authentication functionality
- map view with leaflet for local workspaces
- overview: tabular calendar for office/desk reservations
- detailed view: reservation, office
- setup CI to automate the following tasks
- linting flake8
- quality control with lumnify
- unit/integration tests
- test coverage reports
- performance regression tests
- dockerize the following containers
- production server for django application
- nginx front server
- reverse-proxy for api-calls
- serve static files for client interface
- serve file uploads and authenticate using nginx auth module
- postgresql database
- generate fixtures with mockaroo
- create indices where necessary
- duplicate the instance setup log-sharing
- message/task broker
- worker instance[s] to offload tasks
- automate process restart on error
- setup storage cluster for data volumes (SCSI)
- make the number of workers adapt to the number of tasks
- test behaviour of component outage
- do not expose object ids but, use slugs where available
Geographic centre: 47.21627/-1.54936