Inspiration

Our inspiration for this project stemmed from the need to make presentations more engaging and interactive. Static graphs and traditional slides often fail to capture audience attention and can be limiting in terms of data visualization. We wanted to create a tool that empowers users to craft dynamic, data-driven presentations with ease, leveraging modern technology.

What it does

Our application allows users to create interactive and customized presentations effortlessly. It includes features for choosing predefined templates, adding text, images, and browse csv file dataset to generate graphs dynamically, and even interacting with a chatbot for further customization. Additionally, it supports saving presentations both locally and to a MongoDB database for easy retrieval and sharing.

How we built it

We built the application using Streamlit for the user interface, leveraging its simplicity and rapid development capabilities. The backend is powered by MongoDB, which stores the presentation data. We also integrated Snowflake Arctic for our graph recommendation system, enabling efficient data access and visualization. For image handling and processing, we used the Python Imaging Library (PIL).

Challenges we ran into

One of the main challenges was ensuring seamless interaction between different components, especially managing state within Streamlit. Handling image uploads and converting them to a format suitable for storage and display was also tricky.

Rendering the e-chats code into the streamlit application from the backend was extremely tricky due to the code integrity of the output generated by the backend

Storing the data was another challenge we ran into as we are using mongo DB to store the changes that the user made in the slide and then when the user enters the project title to load an existing project , we had to fetch all the data stored in the Database in the form of a string and render that in our application .

The last but the most critical challenge was designing an intuitive user interface that accommodates all the features without overwhelming the user.

Accomplishments that we're proud of

We are particularly proud of the integration of interactive elements within the presentation tool. The ability to dynamically add content and visualize data in real-time is a significant achievement. We also successfully implemented a chatbot interface that enhances user experience by providing easy customization options. Additionally, the robust backend integration with MongoDB ensures that user data is securely stored and easily accessible.

What we learned

Throughout this project, we learned a great deal about managing state in Streamlit applications, extraordinary features of Streamlit, working with MongoDB for data storage, and integrating external libraries such as PIL for image processing. We also gained insights into building user-friendly interfaces and the importance of making applications intuitive and responsive. We learnt how to integrate snowfake arctic with replicate to run our model seamlessly. Multi modal integration and memory storing and management for LLMs was another major learning that we got to experience through this project.

What's next for Presently

Moving forward, we plan to enhance the chatbot's capabilities, making it smarter and more responsive to user needs. We also aim to incorporate more advanced data visualization tools and expand template options. Additionally, we are considering adding collaboration features, allowing multiple users to work on a presentation simultaneously. Improving performance and scalability to handle larger datasets and more complex presentations is also on our roadmap.

Built With

Share this project:

Updates