Inspiration

It began when my friends and I started researching new technologies and topics to explore for Knight Hacks 2025. When we reached the topic of the cloud, we felt confused and lost. We sat there trying to learn it for a few hours due to it being a complex topic, and after that, we had an idea. To help other groups and organizations understand cloud storage in simple English.

What it does

CloudSaver is a tool that assists in cloud cost optimization by analyzing a billing report file, specifically a .csv file, and provides actionable advice for each optimization. It is a 3-step process: uploading your cloud billing CSV -> after being parsed, it leverages an LLM to transform technical findings into understandable explanations that are provided with easy-to-follow steps to solve the issue at hand -> it presents the recommendations, estimated savings, and supporting charts.

How we built it

CloudSaver is split into two main components: the frontend, built using React and Vite, and the backend, a high-performance API powered by FastAPI. The workflow begins in the frontend, with a cloud billing CSV being uploaded that sends a call to analyze.py in the backend. FastAPI handles the file upload and passes the core data to analyze.py, where Pandas is used to parse the billing data. The secret to this part is asyncio, which, for every identified saving, initiates a concurrent call to the LLM, drastically reducing the time complexity. The LLM then generates easy-to-understand explanations and concrete action plans, which are compiled with the saved data, sent to the frontend, and displayed alongside supporting charts.

Challenges we ran into

Initially, we faced our shortest problem, and we were struggling to find examples of cloud billing data. That is where Kaggle came in, helping us source various .csv files to test our app on. Our next problem, and arguably the most important one, was the time complexity and latency of our system. We were initially going through each issue one by one, which on larger .csv files took forever, that's when we did research into asynchronous LLM workflows. Learning that we could analyze each fix at the same time increased our speed nearly 10-fold. Our last and final issue was the overall aesthetic. We were so focused on functionality that we forgot about the visual appeal and UX. Then we all got together, brainstormed, and made something we are all proud of.

Accomplishments that we're proud of

We are all proud that together we took on an issue that we faced, and we assume many others have also faced, and made it much simpler to understand. Tackling technologies we were unfamiliar with, learning more about cloud storage as a whole, and creating a story we will talk about for years to come. Also, just creating a full-stack solution with LLM-driven output that we were able to build upon. We successfully engineered prompts and response parsing to create a non-technical explanation and a concrete action plan, bridging the gap between financial analysis and engineering action.

What we learned

With two of us never participating in a hackathon, our development journey had some bumps, but those only pushed us to learn even more. We all decided that we wanted to work on topics that we were not the most familiar with, so we split up the work with Frontend, Backend, and LLM integration. However, once someone laid the base for one topic, we branched out, dipping our toes into each topic. Learning asynchronous programming, data handling with Pandas, and prompt engineering to structure LLMs are all topics we are so grateful to learn in a short period of time, to deliver a solution to something that we faced at the start of the competition.

What's next for CloudSaver

The next phase for CloudSaver involves transforming from a file-upload analysis tool to a continuous optimization tool. The first step is to transition to direct API integrations with major cloud providers, allowing us to move towards real-time, continuous cost monitoring. Also including advisor intelligence using ML models for detecting anomalies, and predictive cost modeling, allowing users to forecast future spending based on current trends. Ideally, integrating the information provided on Slack or Jira to push the action plans directly to development teams, saving time and increasing workflow.

Built With

Share this project:

Updates