Aukcije-online is real time bidding system written in Flask. On backend side, it uses Flask-SocketIO for real time changes in bid values. On frontend side, it uses MaterializeCSS to display everything in Material design.
Features:
Flask-WTF
for form creation and validationFlask-SQLAlchemy
for database accessFlask-Admin
for easy control panel over actions on platformFlask-SocketIO
for real time update of valuesTinyPNG
for compression of profile and article images- Registration with reCaptcha to protect from spam and abuse
- Hashing passwords with PBKDF2 to reduce vulnerabilities to brute force attacks
Check at http://aukcije-online.herokuapp.com. It should load in few seconds if dyno is down.
You can use username dummy
and password dummy123
to look around and explore(create an article, update profile and bid on articles)
Landing page:
Profile page:
Article page:
- Go to desired location where you want to place project and clone using
git clone https://github.com/dinko-pehar/flask-realtime-auction.git && cd flask-realtime-auction
- Create virtual environment
- With virtual env activated, install dependencies using pip as
pip install -r requirements.txt
- Export
FLASK_APP
environment variable to be equal to aukcija (e.g.export FLASK_APP=aukcija
) - (OPTIONAL) Export
RECAPTCHA_PUBLIC_KEY
andRECAPTCHA_PRIVATE_KEY
to use reCaptcha on registration form. You can generate keys at https://www.google.com/recaptcha/intro/v3.html - With
flask run
, you will run and expose application on port 5000
Alternative to above is to build and run application inside Docker container as:
docker build -t aukcije:latest .
docker run --rm -ti p 5000:5000 aukcije
Pull requests are welcome. Fork, rewrite or use this application any way you want.