Snip-Cal 🌿
💡 Inspiration
The inspiration for our app came from one of our members and his desire to make an app for his aging grandma, so that she could easily keep track of her many doctor appointments.
🚀 Functionality
We are team CTRL + ALT + DEFEAT! This is our submission for Dubhacks '23. We've come together to create Snip-Cal 🌿, an app that simplifies appointment management for seniors. Just take a snip of an appointment note or any event details, and Snip-Cal 🌿 will automatically schedule the appointment right into your Google Calendar!
Some of our main features include:
- Snipping Tool: Your calendar scheduling is one snip away! Just take a screenshot of a meeting request, or snap a picture of a note with your camera on the spot.
- Google Calendar Integration: Events are automatically synced to your Google Calendar, so you can get timely reminders and centralized organization for your events!
- Priority Ordering: Based on the content of each appointment, it is automatically assigned a level of importance (which can be manually updated if need be). Your events are color coded by importance, so you can easily see which appointments are most pressing at a glance!
⚙️ Development
We built Snip-Cal 🌿 using Ionic Capacitor with ReactJS, which allowed seamless integration of web APIs into a native mobile environment. We also used Tesseract for OCR, GPT for appointment information retrieval, and Google Cloud for integration with Google Calendar.
⛰️ Challenges
- Our main hurdle was making the Google login process work seamlessly - it always seemed like we were mismatching some piece of information no matter how we approached the problem or what APIs we attacked (ex. auth token vs oauth2client, keyfilepath vs service credentials, etc). Ultimately, we overcame the problem with brute force API bashing and lots of coffee!
- Another hurdle was integrating GPT into our pipeline. We were referring to outdated documentation for their function calling API, and only realized after many tears shed on demo code that didn't work.
- Lastly, our team was mostly backend developers, so creating user-friendly designs was a challenge for us.
🌟 Accomplishments
We're proud of successfully connecting the frontend and backend, as well as designing a user-friendly app, even as a mostly backend-focused team. We also had to integrate 3 APIs into our pipeline for converting an image to a calendar event, so seeing all of it finally fit together within such a short time was extremely gratifying.
✏️ What We Learned
Working within a time constraint, we improved our collaboration skills, effective communication, and time management abilities. Since none of us knew each other before the hackathon, we had to adapt and collaborate well with one another to ensure we were able to finish what we set out for ourselves.
🌘 Future
In the future, we aim to enhance Snip-Cal, making it work seamlessly and improving the lives of seniors even further. Some future avenues of improvement include:
- Emergency Detection: The regular appointment patterns (both medical and social) of elders can often shed telltale warnings before unexpected disasters. We could integrate machine learning algorithms to predict when an elder is "high-risk", and warn their list of emergency contacts ahead of time.
- Improved Calendar: In the future, we plan to implement features such as recurring events, as well as specific times of day in events.
- Security: There are always avenues for improvement in terms of application security, especially when dealing with OAuth2 in a mobile environment!
Built With
- capacitor
- chatgpt
- css
- figma
- google-calendar
- html
- ionic
- javascript
- node.js
- ocr
- react
- tesseract
- typescript
Log in or sign up for Devpost to join the conversation.