/frogstagram

A frog-centric social media application

Primary LanguageJavaScript

frogstagram

The the world's most advanced frog photo sharing app


What is frogstagram?

Frogstagram is a photo sharing app that allows users to upload photos of frogs and view photos of frogs uploaded by other users. Users can also comment on photos and like photos.

Only users who are logged in can upload photos and comment on photos. Users can also delete their own photos and comments.

The catch with frogstagram is that it only allows photos of frogs to be uploaded. If a user tries to upload a photo that is not of a frog, they will be notified that their photo is not a frog and will not be able to upload it. Determining whether a photo is a frog or not a frog is done by a machine learning algorithm that is trained on a dataset of photos.


Homepage of Frogstagram

Frogstagram homepage

Creating a post

To create a post, click the upload button in the navigation bar. This will take you to the upload page. Here you can upload a photo of a frog and add a caption to the photo. Once you have uploaded the photo and added a caption, click the "Upload" button to upload the photo to the database.

Create post page

Upload page

If your photo is a frog...

If your photo is recognized as a frog, you will be redirected to the success page, and your photo will be uploaded to the database. After, you can view your photo on the homepage, and other users will be able to view your photo.

Failure page

Upload page with a frog photo selected

Success page

Success page after uploading the frog photo

If your photo is not a frog...

If your photo is not recognized as a frog, you will be redirected to the failure page, and your photo will not be uploaded to the database.

Failure page

Upload page with a non-frog (me) photo selected

Failure page

Failure page

The Technical Stuff (for nerds)

Frogstagram is built using a React frontend and a FastAPI backend. The FastAPI backend utilizes a SQLite database and utilizes SQLAlchemy as an ORM. The backend also utilizes TensorFlow to leverage the imagenet model to classify images. If the image is classified as a frog, the image is uploaded to the database. If the image is not classified as a frog, the image is not uploaded to the database.