https://github.com/samardzicnenad/flongo
A template application for the Python/Flask - MongoDB environment
https://github.com/samardzicnenad/flongo
docker-compose flask gunicorn jinja2 libsass mongo nginx python
Last synced: 5 months ago
JSON representation
A template application for the Python/Flask - MongoDB environment
- Host: GitHub
- URL: https://github.com/samardzicnenad/flongo
- Owner: samardzicnenad
- Created: 2016-03-01T20:54:41.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-03-30T20:56:58.000Z (about 9 years ago)
- Last Synced: 2025-04-05T18:14:08.135Z (about 1 year ago)
- Topics: docker-compose, flask, gunicorn, jinja2, libsass, mongo, nginx, python
- Language: Python
- Homepage:
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Flongo
## Description:
Flongo is a "template application" for the Python/Flask - MongoDB environment.
It also provides a simple user management system that serves the following API endpoints:
- / (it will redirect to /login or /index depending on the existence of the active user session)
- /signup
- /login
and
- /index
There is also an auxiliary endpoint:
- /info
which is not actually a part of the project, but exists in order to provide additional info to the application users.
Once a user signs up and logs in, the session cookie is created and it is valid for 30 minutes
## Usage:
Running
$ docker-compose up
command will pull images and build, create, start and link the container instances for the services defined in the docker-compose.yml file, resulting in flongo application running on:
http://0.0.0.0 (and/or http://0.0.0.0:80)
* docker-compose.yml defines three services that will get started and linked:
* flongo (python:2.7.12 with the following dependencies: flask, pymongo, libsass)
* nginx
* mongo (mongo:3.3.10)
## Data model specifics:
The application stores data in three collections:
- users
- usernames and email addresses are unique
- sessions
- the list of the most recent user sessions
- past_sessions
- the list of the past user sessions
## Additional elements:
The application uses:
- Gunicorn - application server
- Nginx - front end reverse proxy
- Jinja2 - templating engine and
- libsass - CSS preprocessor
## Notes:
- during the login and signup processes, non ascii characters will be ignored