Picture This is a photo repository to store and categorize your favorite pics.
- Python/Flask with Unittest and bcrypt
- SQL/PostgreSQL
- SQLAlchemy ORM
- Jinja (HTML templating)
- CSS/Bootstrap
Users can create an account with a username, email, and password - passwords are hashed and salted using Python's bcrypt module and added to the PostgreSQL database using SQLAlchemy.
We are confident the database is set up proprerly because we ran our Unittest test suite before starting the server!
When a user logs in, their email and password are checked against the database with the help of bcrypt, then they are directed to their Board.
They can add new photos or tags, which will be committed to the database and rendered with Flask's Jinja2 HTML templating.
Don't forget to log out!
Requirements: Python3 PostgreSQL
To run locally (Mac):
- Clone this repository to your machine:
$ git clone https://github.com/coriography/picture_this
- Create virtual environment:
$ python3 -m venv env
- Activate your virtual environment:
$ source env/bin/activate
- Install dependencies:
$ pip3 install -r requirements.txt
- Set a secret key to run Flask by creating /secrets.sh in your root directory:
- Add your key to your environmental variables:
$ source secrets.sh
- Run tests:
$ python3 tests.py
- Create database and populate the app with data:
$ python3 seed.py
- Launch the server:
$ python3 server.py
-
Go to localhost:5000 in your browser
-
Create an account, or log in with existing account guppy@thecat.com, badpw
- add image hosting with Cloudinary API (see example of this in Cello Tree)
- add search, sort, and color customzation by tag
- store "private" images in hidden folder
- add click & drag arrangement of photos on My Board
Built by Cori Lint, with the help of Guppy the cat. 🐱
Cori is cellist-turned-software engineer with a knack for motivating and inspiring others. As her career has evolved from performance, to production, to web design, to software engineering, she has continued to seek growth and creative solutions. Cori brings to the tech industry leadership abilities, persistence, focus, empathy, and good judgment, along with a strong set of technical skills and prior experience in web development. She is a Summa Cum Laude graduate of the University of Michigan, and an active member of Artists Who Code, an online community that advocates for creative professionals in the tech industry.
Contact Cori on LinkedIn