Skip to content

chakeresa/oddio

Repository files navigation

Oddio

Oddio is an audio walking tour app built in 10 days by Alexandra Chakeres, Patrick Duvall, Martin Mercer, Logan Pile, and Mills Provosty.

In Oddio, visitors can explore a map populated with Denver locations stored in our database. These locations are generated from a rake task that hits the Google and TomTom APIs. Users can navigate to different points on the map and open a page with details for the landmark. They also can listen to user-uploaded audio for that location. Users can log in by making an account (or by using google OAuth) to gain the ability to upload and vote on recordings, tours, and landmarks. Admins have CRUD functionality to moderate and delete inappropriate content.

See the deployed app here

Built using

  • Rails 5.2.x
  • Ruby 2.4.1
  • Google OAuth for user authentication
  • Javascript and Leaflet JS for map functionality
  • PostgreSQL database
  • AWS S3 bucket to store audio files
  • Sinatra to host a microservice (API) that manages upvotes & downvotes

View the Sinatra microservice's repo here

Selected Screenshots

Landmarks Index

Landmarks Index Screenshot

Landmark Show Page

Landmark Show Page Screenshot

Tours Index

Tours Index Screenshot

Tour Show Page

Tour Show Page Screenshot

Welcome Page

Welcome Page Screenshot

Schema

Schema

Running on your local machine

  1. $ git clone [email protected]:chakeresa/oddio.git
  2. $ bundle
  3. $ bundle exec figaro install -- add your API keys to config/application.yml:
TOMTOM_API_KEY: <your TomTom API key>
AWS_ACCESS_KEY: <your AWS access key>
AWS_SECRET_ACCESS_KEY: <your AWS secret access key>
AWS_BUCKET: <your AWS bucket name>
AWS_REGION: <your AWS region>
GOOGLE_CLIENT_ID: <your Google client ID>
GOOGLE_CLIENT_SECRET: <your Google client secret>
GOOGLE_INDIV_UID: <your individual Google UID>
GOOGLE_INDIV_TOKEN: <your individual Google token>
MAPBOX_API_KEY: <your Mapbox API key>
GOOGLE_PLACES_API_KEY: <your Google Places API key>
VOTES_API_KEY: <your API key for the Sinatra Votes app>
  1. $ rails db:{create,migrate}
  2. $ rake landmarks:all
  3. $ rails db:seed
  4. Run the test suite with $ bundle exec rspec
  5. Start a local server with $ rails s -- access in your browser or Postman at localhost:3000

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published