Inspiration
Ever thought you would get an idea from just looking at the walls? As I was noticing all the ugly cracks in my walls, I started to dive deeper into why. As my walls were bumpy and rough-looking, I explored modern paint practices which tell that before paint is applied, the wall must be sanded-down. After applying each coat of paint, the wall must be sanded down for each coat in order for the paint to last effectively. As I was exploring on how to paint projects for my own needs, I noticed that online guides were unstructured and time-consuming as people want the best result, which again takes time. In the process, I assumed doing informative decision-making with AI would best cater to the needs of an individual. Another situation where the lack of knowledge may be critical in building trust between consumers and employees, especially when it comes to new hire sales representatives attempting to sell paint to consumers. For example, Sherwin William's Paint struggles to sell paint with their new hires as they lack the knowledge of a paint specialist in order to sell paint. To put the cherry on top, I recently had my bathroom renovated by a third party service speaking only Spanish. Despite being cheap, they used poorest painting practices as they didn't apply coats nor did they sand the walls down. Third-party services may want to only operate for the best price, whereas the average consumer wants the best result. To account for all these problems, I developed Paintfor, Streamlit project, which helps create users their own personalized paint guides, as well as helping build trust between consumers and these third-party services.
What it does
Paintfor asks seven important questions about the details of your project in relation to location, surface, finish, colors, area, and environmental concerns. With prompt engineering, I take generate an enriched prompt addressing the user's needs and pass it to GPT-3.5 LLM. You can assign a role to the model itself, which was designated as professional paint specialist. The enriched prompt is the most important aspect of this project as it states to generate a guide on how the user should paint their project, as well as the techniques for surfaces angled differently. Additionally, I incorporated GoogleTrans in order to make the generated guide readable for foreign-third party services.
How we built it
I just built this project using Streamlit for UI and Python for backend interactions between user and OpenAI. For colors, I webscraped Sherwin William's +1700 Color Palettes and made it more usable for those buying Sherwin William's paint colors. Despite there being millions of color palettes, chances are many of these palettes have similar RGB values to each other. For further usecases, I preprocessed the data in case I wanted to add in all these other color palettes as their names depend on these RGB values.
Challenges we ran into
As Streamlit has limited UI capabilites, I spend a lot of my time developing on my custom version of the st.multiselect feature. Currently, st.multiselect doesn't provide the option to show unique colors for every displayed field. Using OpenAI, I was developing on this feature which is still in progress and I hope to bypass this problem soon. Additionally, GoogleTrans doesn't work in production no more for Streamlit Apps and so that's also another thing I have to figure out in the near future.
Accomplishments that we're proud of
If the US doesn't use the best painting practices, chances are that others outside of US suffer more and so I believe I built a project that can help everyone out in the future. Especially for those who can't afford the need for third-party-services and want to do it themselves. Some might ask why didn't we go with a chatbot, and that's because I wanted to promote ideas on interchangeability and make the product more fun to play with, versus using a chatbot. I believe I've built one of the first prompt enrichment guides that can be applicable in multiple scenarios. I'd like to think I'm at the forefront of prompt engineering and this guide is a great way for you to understand what prompt engineering is about. I love using Streamlit as I'm able to build a project that can be rendered both mobile and computer, making Paintfor a more available product.
What we learned
-Department stores (Lowe's, Home Depot, etc) only use 8 primary colors in order to generate millions of color palettes as they typically have their color schemes uploaded in their systems.
What's next for Paintfor
-Ability to add your own LLM to generate your own custom paint guide.
-Online Paint Mixer
-Figuring out how 8 colors make millions of these color palettes. Additionally, we may want to use OpenAI to figure out how the paint compositions may change look when applied as you have to account for more advanced factors such as humidity and temperature.
Built With
- googletrans
- openapi
- python
- streamlit

Log in or sign up for Devpost to join the conversation.