Inspiration
My stepfather is an amateur photographer and I wanted to build a site that he could use and manage by himself. He isn't technically skilled, so creating a product that was manageable by someone who couldn't code was important to me. I also made it to be kind of a mock-MVP (minimum viable product) of a SaaS.
What it does
Provides a place to post the photos or artwork of a photographer or artist.
How I built it
I started by designing the bones of the website in HTML and CSS. I added in admin functionalities and brought in Lightbox2, which is a public javascript library that allows images that you define with the lightbox2 classes to be click-on-able, transitioning with a basic animation and making them as big as possible (with respect to screen size). I added in database connectivity and connected an AWS S3 bucket, because storing the photos in the Heroku PostgreSQL database proved to be more expensive than storing them in an S3 bucket.
After the project was done, I deployed it to a Heroku server. It's viewable here: https://photosbyforrest.herokuapp.com
Challenges I ran into
I had challenges every step of the way. There's a lot of information flow in the project, with 7 or 8 major functionalities and (I'm guessing) over a hundred functions that support those functionalities: with such complexity brings inevitable challenge. The most challenging part was getting all of the admin functions working.
Accomplishments that I'm proud of
I'm most proud of getting this project fully deployed, and of the fact that it would take 5 minutes for me to set up a duplicate site for anyone interested in owning their own version. The code is very modular in that way.
What I learned
- I learned about managing photos in AWS and information in a postgresql database.
- I learned about being able to setting up easy-to-use ways to manage that information inside the database (easy to use from the user perspective).
- I learned about deploying projects using a PaaS (Heroku).
What's next for Photogallery
I'd like to add functionality to change the layout of the webpage and background colors (dark mode). I want to create a builder for this site, so that someone could go online and enter a few bits of data and have a version of Photogallery built for them.
Log in or sign up for Devpost to join the conversation.