Viraj CBlogProjectsAbout
Projects I have worked on:

Simple Calendar Events


This was a take-home assignment for a job I had applied for.

Easily access your Google Calendar events for today, classified by calendar names.

Deployed here:

Problem Statement was:
  • As a user, I want to have my Google Calendar events for today listed on a Web interface, classified by calendar names
  • When a user connects the Google account, all the calendars and events are imported to the App.
  • The subsequent events which get created/updated/deleted are sync'd to the app automatically
  • Using the Google Calendar APIs directly rather than using the gem like google-api-client would be preferred.

Implementation Details

  • Ruby on Rails app with PostreSQL as database
  • Implements a basic authentication system using Google OAuth. (without passwords)
  • Uses OAuth2 flow for authorization to user's resources (calendars/events)
  • Implements a service to talk with Google Calendars API which handles:
    • fetching calendars for a user
    • fetching events for a calendar of user
    • registering webhooks for listening to changes to events/calendars
  • Does not use background processing jobs for any tasks yet
    • potential to use for some use-cases
  • Uses Rspec for testing
    • Test coverage still low

Possible improvements/pending tasks

  • Since the whole code was written under a short deadline; the codebase still needed a few changes when it was submitted.
  • Please take a look at Issues section of the Github repository.