Inspiration
We understood that A/B testing is often a time-consuming and expensive process, so we sought to streamline this for businesses, and essentially eliminate the need for large teams to conduct the testing. What began as a simple CSS re-rendering algorithm turned into an entire new approach to business websites: something dynamic that could adapt it's design, text and various algorithms based upon the needs of its users. Though we weren't able to implement all of our proposed features, what we have is pretty special and something we are all proud of.
What it does
Darwin is a SaaS that enables companies to improve their interactions within their websites, ultimately leading to greater sales. This is done by dynamically injecting custom CSS variations and keeping track of user engagements and metrics. The most effective variation is then selected, which means that businesses will always be designing their online platforms in the most effective manner possible. Forget about constructing teams of designers, developers, analysts, data specialists, project and product managers to conduct A/B testing. Now the entire process is automated as part of the deployment itself. Businesses have comprehensive, readable data that is easily accessible for them to locate the best-performing components of their site.
How we built it
The app uses React in the frontend and a fast-api backend connected to a NoSQL database on Firebase. We track user retention and engagement and compare these values to our CSS variants. These act as the nodes for a proprietary evolutionary algorithm that coupled with vector embeddings, push the CSS towards a more engaging style. Users also have the option to take a pick from the top recommendations and to seamlessly integrate these changes to their code via a GitHub pull request created by Darwin.
Challenges we ran into
As a team that already knew each other, we were fortunate to know each-others' strengths and weaknesses going into the competition. However, upon reflection, coordinating the completion of tasks early on would have helped us communicate our progress effectively to make sure we were all on the right track. Other than that, one of our team members ran out of storage on his laptop - which made it extra tricky to edit the video! Overall, lots of lessons were learnt but it all made for a fun experience.
Accomplishments that we're proud of
For this section, we have listed our favourite aspects of the final project
- Beginning of the pitch video
- Allocating time to conduct comprehensive research
- Creating a novel approach for bounding the evolutionary algorithm using semantic embedding vectors
What we learned
A universal learning for our team was probably the process of iterative testing and deployment within businesses. Since we all came from tech-related backgrounds, we didn't fully understand the business-side of A/B testing. We each sharpened our hard skills, gaining experience with many tools, from Adobe Premiere Pro to python, to Firebase to Canvas, and Figma to Capcut.
What's next for Darwin
The more we developed our product, the more we saw its potential. Instead of just dynamically injecting custom CSS variations to maximise user engagements, we hope to one day trial variant search and ranking algorithms as well as looking into re-wording text within these online platforms. There are so many web components that could be optimised for users, and we seek to explore all of these. We also considered saving the data of high performing components sorted by similar online platforms, and then utilise machine learning to make suggestions to developers alongside the web-building process.
Log in or sign up for Devpost to join the conversation.