PandaBot Project Story

Inspiration

PandaBot was inspired by the need for a well-rounded study bot that can support study groups in a natural and engaging way. We wanted to create a bot that could be more than just a simple Q&A tool; something that can help students study, connect, and interact with information more meaningfully. By blending useful features like quizzes and AI-driven responses, PandaBot provides an experience that keeps study sessions both informative and interactive.

What It Does

PandaBot currently has two main active features:

  • Quiz System: PandaBot allows study groups to create interactive quizzes. Users can join quizzes through the group channel, answer questions privately in their DMs, and receive instant feedback. A scoreboard is shared in the group at the end, enhancing the competitive and collaborative learning experience.
  • Ask AI Anything: Users can ask general questions, and PandaBot will respond with answers powered by the OpenAI API, making it versatile and useful for a range of inquiries. The bot can

How We Built It

PandaBot was developed using:

  • Languages & Frameworks: Node.js, Discord.js, JavaScript, TypeScript
  • Data Streaming: Redpanda Connect for seamless data management
  • AI Integration: OpenAI API for generating responses in the Q&A feature
  • Databases: Postgres for data handling and Sequelize as the ORM for managing migrations

Challenges We Ran Into

  • Message Length Limitations: Discord’s message character limits required us to adjust by using embeds, making the message output cleaner and more organized.
  • Hosting Redpanda: We initially tried running Redpanda with Docker on Heroku, but it wasn’t viable. Switching to a serverless Red Panda cloud solution was a turning point, as it was both easy to set up and cost-effective.
  • Integrating AI Response: Initially, we faced difficulties in ensuring the AI responses were relevant and accurate. Tuning the parameters and managing the context for each question required iterative testing and adjustments.

Accomplishments We Are Proud Of

  • For the first time, our team was able to complete a project from start to finish. Previously, we’d started projects but never fully completed them together.
  • Successfully integrated multiple technologies to create a functional and engaging bot.
  • Gained practical experience in assigning tasks, coordinating teamwork, and aligning efforts to reach the project's goals.

What We Learned

Throughout the process, we gained valuable insights:

  • Redpanda Data Streaming: Helped us understand data streaming and resource management in a real-world application.
  • Team Collaboration: We learned how to work together effectively, assigning tasks and supporting each other to achieve our goal.
  • Technology Integration: Building PandaBot involved using OpenAI’s API for the first time, Redpanda, and multiple frameworks and libraries. This broadened our skills in bot design, feature implementation, and cross-platform functionality.
  • Real-World Deployment Experience: This project provided me with hands-on experience in deploying applications in a real-world environment. I navigated the complexities of ensuring the application was robust, scalable, and user-friendly.

What’s Next for PandaBot

We envision PandaBot evolving into an even more comprehensive study tool. Upcoming features include:

  • Enhanced Scheduling & Calendar Sync: To support study session planning and reminders.
  • Study Games: Introducing mini-games that make learning engaging.
  • Pomodoro Timers: Adding timers to help users focus during study sessions.

With these additions, PandaBot aims to offer an even better experience for students and study groups.

Built With

Share this project:

Updates