In this Capstone project for the Photo Tourist you will implement a Ruby on Rails web application that makes use of both a relational and NoSQL database for the backend and expose the data through services to the Internet using Web services and a responsive user interface operating in a browser from a desktop and mobile device. You will have a chance to revisit and apply what you have learned in our previous courses to build and deploy a fully functional web application to the cloud accessible to your co-workers, future employers, friends, and family. In developing the Photo Tourist web application, you will get to work with different data types and data access scenarios (e.g., fielded data display and update, image upload/download, text search, access controlled information) to provide your users the ability to show off their photos and information from trips they have taken and to seek out photos and information from trips taken by others. Using the application you develop, your users will be able to • Create an account • Upload and download photos to the site and make them accessible to others • Provide descriptions of trips and photos that others can read • Organize photos by location and trip, • Find photos based on location • Find photos based on text searches of descriptions • Locate the place where the photo was taken on a map
- Week 1 - Technical Architecture and API Development Setup
In this module, we will start your journey into being part of an end-to-end application development as a Rails/AngularJS fullstack developer intern. In this module you will learn the technical architecture and software requirements of the targeted application ...
- Week 2 - SPA Development Setup
In this module, you will develop an AngularJS web application for the purposes of managing a resource hosted by a Rails server. As a part of that, you will learn the details of the Rails Asset Pipeline for hosting web applications, key features to address when...
- Week 3 - Testing
In this module, you will learn how to development model, request, and feature specs using RSpec and to leverage gems like DatabaseCleaner, FactoryGirl, and Faker in building those specs. You will also learn how to DRY their tests using RSpec shared_contexts an...
- Week 4 - Security and the Photo Tourist Domain Model
In this module, you will learn how to implement authenticated interfaces providing role-based authorization required to protect web resources. You will also practice these techniques while implementing the core resources for the Photo Tourist application. You ...
- Week 5 - Image Content
In this module, you will implement image content within the end-to-end application. At the data tier, you will use the BSON::Binary type to store binary data within MongoDB, manipulate image sizes and content using ImageMagick/MiniMagick, implement model vali...
- Week 6 - Geolocation
target deployment module 6: Mar20
- Week 7 - UI Layout and Subjects Page
target deployment for module 7: Apr03
- Week 8 - Mapping
target deployment for module 8: Apr17 - contains a mandatory project
Adjunct Professor, Graduate Computer Science
Computer Science, Whiting School of Engineering