Inspiration

As Engineering students, we already have it hard enough. We have demanding school schedules, with assignments, labs, and a new midterm every single week. On top of that, we're also expected to stay active, focus on our mental health and enhance our social lives. But see, that takes ALOT of time management and scheduling, which ironically, we don't really have time for.... and that's where NorthStar comes in!

What it does

NorthStar is a Personal AI Assistant who is dedicated to guiding you to get back to becoming your best self. Whether you're an Engineering student like us, or someone with a lot going on in your life, NorthStar has a catered response best suited to your needs. NorthStar takes care of the hassle of creating schedules and tasks to complete during the day, and designs a schedule and plan for you to get back on track.

How it works

NorthStar is powered by Gemini Pro, using our OAuth database and React frontend, it receives your Google Calendar information in the form of an .ics file, and feeds it to Gemini. You're also able to tell Gemini what kind of person you are, and what you prefer to do during the day. For example, if you plan to go to the gym and also study in the same day, but you prefer to go to the gym after studying, you can mention this to Gemini, who will design your schedule in such a way that these conditions are met by returning a modified .ics file.

What sets it apart from a glorified secretary is that it uses effective time management methods such as the Eisenhower Matrix, the Pomodoro Technique, and Time Chunking to maximize your efficiency throughout the day. Moreover, NorthStar keeps track of all your goals, and makes sure that you meet them by storing your tasks/goals in the OAuth database, and rewards users who remain consistent. It is the perfect solution for you to get back on track if you're overwhelmed and it helps you deal with your responsibilities smoothly.

How we built it

As mentioned before, we've used an OAuth database to receive user's Google Calendar details, with a Javascript backend powered by Next.js, we're able to send this information as well as any other user specifications to Gemini who returns our customized schedule to the React frontend in the form of an .ics file, which the user can then use to update their Google Calendar.

Challenges we ran into

It was difficult to get the OAuth database to collaborate with all of our code, as it did involve the use of locally included files, however we did manage to overcome this obstacle. The backend to frontend integration would probably have to have been the hardest part of this task, as we were very ambitious to get the best outcome. There was also some conflict in getting Gemini to produce the expected output, and there was some trouble in importing this back into Google Calendar, but we did resolve that, and learned something new about Google's backend (They hate it when 2 files with the same name and .ics are used on 2 different accounts).

Accomplishments that we're proud of

Given the small time frame and a new prompt (UN Sustainability Goals), we did manage to create something quite exceptional, especially since we came up with it on a whim. We chose to dedicate our solution to improving Good Health & Well-being, since the reason why so many students struggle with maintaining their mental health is because they don't have the time nor the motivation to sit down and truly think about and divide their responsibilities accordingly, which is where NorthStar comes in to alleviate the mental strain!

What we learned

It was our first time using the OAuth Database and receiving user details from their Google Accounts, so that was a bit of a struggle for us, but we managed to solve that and learn something new in the process!

What's next for NorthStar

Using Javascripts built-in Geolocation API, we can make sure that users actually complete their goals. Gemini does return the locations that each task is expected to be completed in in Longitude and Latitude coordinates, and if those coordinates are within a certain range of the user's detected coordinates within the respective timeframe that they're expected to be there THEN that task is marked as completed.

This way, user's tasks are taken care of automatically, and we plan to hold users accountable for their goals by reminding them via SMS to remain consistent and active. Moreover, we plan to introduce a virtual currency that can be collected by users and can be used to provide accessories to the personal assistant Nova!

Built With

Share this project:

Updates