Warbler is a Twitter clone and utilizes Flask, PostgreSQL, and SQLAlchemy, on the back-end and Jinja templating, jQuery, and Axios on the front-end. I built this application off of a semi-functioning clone.
Key components I worked on include:
- fixing bugs in the user profile, logout, and homepage routes
- adding profile editing functionality
- adding the ability to like a Warble
- extensive testing, including model and view unit tests
You can view a deployed version here.
- Clone this repository
- Create a virtual environment
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt
- Create the database
createdb warbler
python3 seed.py
- Start the server
flask run
- Create the database
createdb warbler-test
- Run tests:
- To run all:
python3 -m unittest
- To run specific file:
python3 -m unittest test_file_to_run.py
- To run all:
- Flask - Web Development Framework
- Flask-WTForms - integration of Flask and WTForms library, including CSRF protection
- PostgreSQL Database - SQL database management system
- SQLAlchemy - database ORM
- Jinja - templating engine
My partner for this project was Tracy Jiang.