Skip to content

julianecassidy/flitter

Repository files navigation

Flitter

A place to fleet your thoughts. (We're still workshopping the tagline.)

Demo

Top Languages GitHub repo size GitHub code size in bytes GitHub last commit

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. Contact
  7. Acknowledgments

About The Project

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

(back to top)

Screenshots

Logged in homepage
Homepage for logged in users

User profile page
User profile page

Add a new message saying hello
Add a new message

(back to top)

Key Features

  • 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

(back to top)

Built With

This project was built in May 2023 with the following:

  • Flask
  • Python
  • Jinja
  • SQLAlchemy
  • PostgreSQL
  • WTForms
  • Bcrypt
  • Gunicorn
  • Jquery
  • Bootstrap

See requirements.txt for a full list of dependencies.

(back to top)

Getting Started

To get a local copy up and running follow these steps:

  1. Clone the frontend and backend repos

    git clone https://github.com/julianecassidy/flitter
  2. Create a virtual environment

    python3 -m venv venv
    source venv/bin/activate
  3. Install dependencies

     pip install -r requirements.txt
  4. Create database

     createdb warbler
  5. Seed database

     python seed.py
  6. Run the app

     flask run
  7. Go to localhost:5000 to view the app

(back to top)

Roadmap

  • Add user profile page with options to edit profile
  • Add a "forgot password" feature
  • Refactor styling with Tailwind CSS

(back to top)

Contact

JulianeCassidy

LinkedIn

Project Link: https://github.com/julianecassidy/flitter

Live Demo: https://flitter.julianecassidy.com/

(back to top)

Acknowledgments

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.

(back to top)

About

A Twitter-clone backend app developed with Python, Flask, SQLAlchemy, and Postgres. Deployed on Render. | Demo username: test | Demo password: password

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published