A place to fleet your thoughts. (We're still workshopping the tagline.)
Demo
Table of Contents
Flitter is a Twitter-clone. It was originally built in 2023 as a project at Rithm School.
The app is entirely backend, built with:
- Python
- Flask
- PostgreSQL
- SQLAlchemy
The deployed backend is hosted on Render and the database is hosted on ElephantSQL.
This project offered learning opportunities around:
- User authentication and authorization
- User sessions and cookies
- Password hashing and encryption
- Building RESTful APIs
- Database design and modeling
You can log into the demo site with the following credentials:
- Username:
test
- Password:
password
- Users can sign up and log in
- Users can edit their profile and add a new image
- Users can follow other users
- Users can publish short posts
- A user's homepage shows their recent posts and posts written by followers
- Users can see another user's profile and posts
- Users can like and unlike others' posts
- Users can view followers, following, and likes
This project was built in May 2023 with the following:
See requirements.txt for a full list of dependencies.
To get a local copy up and running follow these steps:
-
Clone the frontend and backend repos
git clone https://github.com/julianecassidy/flitter
-
Create a virtual environment
python3 -m venv venv source venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Create database
createdb warbler
-
Seed database
python seed.py
-
Run the app
flask run
-
Go to localhost:5000 to view the app
- Add user profile page with options to edit profile
- Add a "forgot password" feature
- Refactor styling with Tailwind CSS
Project Link: https://github.com/julianecassidy/flitter
Live Demo: https://flitter.julianecassidy.com/
I completed this project at Rithm School. I would like to thank the my pair for the project, Justin Clark. I'd also like to thank the staff of Rithm for code reviews and assistance.