SILVA

ISpeakPlantish
For my first full-stack web application, I developed an online houseplant journal to record and track your plant journey!
For my Hackbright capstone project, I explored my passion for problem-solving by building several tools myself and gathering my own data through web-scraping. I wanted to combine my recent interest in houseplants and coding into a project to help new plant lovers, like me. With that, ISpeakPlantish was created!
ISpeakPlantish is an indoor gardening notebook-style web application that offers tracker logs to grow, nurture, and care for your small-space greenery.
It provides a social network for individuals to journal, record, and share their journey. Users are offered the option to receive SMS watering and/or fertilizer reminders utilizing the Twilio API.
To help users catalogue their houseplants and the plants’ light preferences and progress, I scraped websites for data so that users could have a more extensive plant list to choose from. Since it can be challenging to remember plants’ common names and latin names, I was inspired to create an autocomplete search box that would filter the plants based on what the user types, and would then sort and display the names alphabetically. I built this search box using Regex and JS, which was challenging because regular expressions use a small set of symbols, and sometimes these symbols can take on different meanings inside and outside of character classes. When building this autocomplete feature, I challenged myself by learning about reusable React components, props, component states and using CSS with react.
To encourage discussion and community among users, I explored the ideas of forum and chat room technologies. I envisioned a way for users to discuss plant deficiencies, trade cuttings, and give away plants, and decided to use web sockets to create chat rooms that could be centered around specific topics, such as plant diagnosis.
I learned that I can use socketIO to establish a connection between a client and a server using a websocket. I decided to use Javascript for the client and Flask Socket IO for the server. Using websockets and the Flask Socket IO library allowed me to create a gate which enables communication, as long as the gate(socket) is open.
In the near future, I hope to implement storing thread discussions and save user comments to resemble a forum alongside a chat. I definitely want to explore the Google Maps API to possibly render nearby plant nurseries dependent on the user’s current location.
Tech Stack includes:
PostgreSQL
Javascript
Python
Flask
FlaskSocketIO
jQuery
Bootstrap
BeautifulSoup
APIs used:
Twilio
Cloudinary
Project Snippets



