I designed my Sinatra project to build off my first project, the CLI data gem. For the latter, I scraped a skincare website for different products, categorized them, and gave users further details for each product. I felt proud I was able to create synergistic class models, CLI logic and scraping methods to form a simple little functioning gem. But, I knew entering the Sinatra section, everything was about to come together and the power of coding, from the database and models, to views and everything in between, was about to leverage my ability to create real value.
For my Sinatra project, I created an application called Adrift Beauty that takes my CLI project and transforms it into a real-world case study of this concept. Users can sign up and login to their account, where they can search, add and edit products in their skincare collections. I created a class to scrape google images, interpolating the individual product namd and brand to render a current photo of the product added to their unique collection. Users can also view other skincare junkies’ collections and any notes or reviews left by those users. The idea is for users to curate, track and explore skincare on their own and with others with the same interest.
Eventually, I’d love to see this idea unfold into a social platform where users can have their own profiles and connect with others, blog about skincare, and shop through links.
The most difficult part of this project for me, besides juggling all the moving parts, was the front-end portion. Ruby has been where my head’s at, and it’s been awhile since I’ve refreshed my html/css skills, so it seemed secondary in nature for me to focus on the design aspect. Using bootstrap and bootply, I was able to create a simple twitter-inspired layout so I could focus on the Ruby functionality, http requests and Active Record associations of my app (my favorite part).
I love how with each project, the flootgates to new gems, concepts, methods and tools gush open and my love for coding and its bottomless pit grows, feeling at ease that although I’ll never get it all done, that also means I can never get it wrong.