Skip to content
/ boilerplate Public template

A Vue/Django project template with async communication

License

Notifications You must be signed in to change notification settings

schajee/boilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Boilerplate

Getting Started

  • Copy .env.template to .env and make neceessary changes
  • Run docker-compose up --build -d to complete setup
  • Browse to http://localhost to view the application

How it works

The demo application is a simple task management app, that allows user to login and manage tasks. Tasks can be executed and users will be notified when tasks are complete.

  • The frontend application for task management is built with VueCLI (80)
  • The backend API is built with Django and Django Rest Framework (8000)
  • A background worker running Celery to execute long-running tasks (8000)
  • Frontend is connected via web sockets to the backend using Channels (WS)
  • Worker sends messages to frontend using sockets when tasks are completed
  • Channels and Celery both use Redis as message broker (6379)
  • Workers and tasks can be monitored using Flower (5555)
  • Postgres is the primary database (5432), but SQLite will be used if environment variables are not found
  • Postgres is managed by PGAdmin (8080)