Social Eats

Never miss out on a great lunch again! Social Eats Event Page

SocialEats is a Ruby on Rails 5 application designed to solve the problem of feeling you missed out on a great lunch outing. Our goal was to build a social networking tool that would let a user set up a lunch event and invite their friends, coworkers or classmates. We did this by using Rails 5’s ActionCable to facilitate real-time communication over websockets between users, and ActionMailer to give users the ability to send email invitations to their friends.

Technologies used:
  • Ruby on Rails 5
    • ActionCable for real time communication over over websockets.
    • ActionMailer to email invitations to users for events.
  • JavaScript and jQuery
    • AJAX call to Yelp API occurs asynchronously without reloading the page.
  • OmniAuth
    • Users can use their Facebook account to log in and retrieve their user image.
  • Heroku
    • Deployed application to Heroku using Heroku CLI toolbelt.
  • Bootstrap

Signet

Quickly send files as far as you can shout! Signet Home Page

Signet is a Ruby on Rails application, designed to be a great way to quickly share a handful of files with family, colleagues or friends as far as your voice will reach. With an account, a sender can upload files, which are saved to a temporary record with a single-word url. Senders can share that word to make navigating to the files easy. Hitting the page where the files are shown, a recipient can download individual files, or download a zip archive of all the files at once.

We utilized Rails ActionMailer to confirm the email accounts users register with, as well as scheduling Chron Jobs with the Whenever Gem to perform scheduled rake tasks to clean up the database as envelopes (collections of files to be shared) will be cleaned up after the expiration time a user selected.

For this project we followed the Services design pattern to remove lots of code from our Controllers to keep them clean, DRY and readable, as well as writing tests in order to facilitate future enhancements of the project without unknowingly damaging functionality.

Technologies used:
  • Ruby on Rails 5
    • Carrier Wave for uploading of files to AWS S3 Storage.
  • Amazon Web Services S3 Storage
    • Scalable, secure storage of uploaded files. Edited CORS settings and permissions.
  • RubyZip
    • Zipped files returned from AWS S3 into a single archive for easy multiple-file downloading.
  • Heroku
    • Deployed application to Heroku using Heroku CLI toolbelt.
  • Bootstrap
  • RSpec, FactoryGirl and Faker to facilitate testing.

Picset

Learn mastery of your digital SLR through a series of image recognition exercises. Picset Lessons Index

Picset is an Ember.js application that behaves as a set of flashcards to train users to recognize what effect camera settings like aperture and shutter speed have on photographs. Images are presented with a pair of slider form elements that let users input their perceived settings for that photograph, and upon form submission they are show the true values of the settings pulled from the photos metadata. Picset utilizes a Ruby on Rails API for its persistence layer, connected to the Ember.js application by ActiveRecord Serializers transmitting to Ember’s adapter in JSON API format. User authentication is handled by a custom implementation of Ember Simple Auth on the Ember application, which requests a JSON Web Token (JWT) from the Rails API for additional request authentications.

Technologies Used
  • Ember.js
    • Ember Simple Auth with custom Authorizer to utilize JSON Web Tokens (JWT) for authorization with Rails API.
    • Closure Actions for form and login submission to make those submissions context-aware.
  • Ruby on Rails and Rails API Gem.
    • JWT gem to generate JSON Web Tokens used in Authentication.
    • RESTful API setup to hit the correct endpoints from the front end application.
  • Bootstrap
  • Heroku
    • Deployed application to Heroku using Heroku CLI toolbelt.