Inspiration

As college students, we know firsthand how much of a hassle it can be to keep track of multiple organizations and their events on campus. We’ve almost missed out on events or struggled to manage multiple organizations’ schedules with each organization preferring a different type of communication. For example, some organizations prefer discord announcements, others use GroupMe messages, and some only use email. We wanted to create a solution that simplifies student life—something that helps students stay engaged without the chaos of managing their time. That’s how Aggie Agenda was born: a tool designed to bring all your campus activities together in one place.

What it does

Aggie Agenda helps students keep track of events across all the organizations they’re involved with. Instead of juggling multiple calendars and missing important events, users can follow their favorite organizations and see all upcoming events in a single, easy-to-navigate page. It syncs calendars, sends notifications, and ensures students are always in the loop.

How we built it

We built Aggie Agenda using Next.js for the front end, Prisma with PostgreSQL for our database, and NextAuth.js for authentication. We focused on creating an intuitive interface that organizes events efficiently while allowing students to customize their preferences. Integration with Google OAuth authentication made it easy for users to sign in and manage their profiles securely. Along the way, we optimized the experience for both desktop and mobile users.

Challenges we ran into

One of the biggest challenges was integrating multiple features seamlessly, like handling calendar synchronization across different organizations while maintaining a simple user experience. Another major hurdle was authentication—initially, we faced issues with integrating Google login, so we pivoted to trying to manually create an authentication solution, which required us to rethink some of the app’s architecture. Debugging errors and aligning all these moving parts tested our persistence, but we pushed through and learned a lot in the process. Finally, the biggest hurdle was implementing calendar functionality. We initially tried the Google Calendars API to allow events created by the organizations to make a Google calendar link which prompts the user to add it to their google calendar, however, we ran into many issues integrating this with the rest of our app so we decided to use a simpler approach of just having the events displayed on the user dashboard of the app.

Accomplishments that we're proud of

First, we are proud of how our concept for Aggie Agenda turned out—especially the fact that we managed to find a solution to centralize campus activities into one cohesive platform. We’re proud of how user-friendly and clean the interface feels, and that we overcame major technical hurdles like authentication and database management. Most of all, we learned a lot about changing the way we thought about getting the final outcome given the amount of constant challenges we encountered.

What we learned

Through this project, we learned the importance of adaptability—sometimes what you plan doesn’t always work out, and you need to pivot and adjust quickly. We also deepened our knowledge in full-stack development, especially integrating third-party APIs, handling authentication securely, and managing complex data relationships with Prisma. Lastly, we learned how important it is to build a project that solves real problems that we and our peers face daily.

What's next for Aggie Agenda

We plan to expand Aggie Agenda by adding more features like personalized event recommendations based on student’s interests, deeper integration with external calendars like Google Calendar, and tools for organizations to engage more actively with their members. We also aim to add more functionality for organization administrators to be able to create their own profiles that users can browse, improved searching for organizations, and maybe adding a further authentication layer that allows only organization members to view events.

Built With

Share this project:

Updates