Geophotr is a clone of Flickr built on Rails and Backbone. Users can:
- Create accounts
- Create sessions (log in)
- Upload photos
- Specify latitude/longitude for photo uploads via UI
- View geotagged photos on map
- View individual photos
- Follow other users
- View public feed without logging in
- View public map without logging in
- View a feed of individual photos from followed users (including public photos)
- 'Like' button for signed-in users
- 'Like' counter on all photos
Implement user authentication in Rails based on the practices learned at App Academy. Make users and photos controllers. Users will be unable to actually upload photos; they will be able to upload captions and urls. Eventually the url field of the photos model will link to assets on AWS.
Add API routes to serve photo data as JSON, then add Backbone models and collections that fetch data from those routes. Add Backbone views for 'PhotoShow' and 'PhotoIndex'. By the end of this phase, the existing Rails views will have been ported over to Backbone. Authentication will remain server-side. I will start figuring out how to use CarrierWave and Amazon S3.
Make photo uploads happen. I'm hoping to do it with a generic file-select dialog box--hopefully without Filepicker, but instead with CarrierWave and AWS. I found some RailsCasts on the subject; hopefully it will all work.
Develop the 'PhotoIndex' Backbone view to serve three purposes: display all public photos (for non-logged-in users); paginate/limit somehow? display followed users' photos (for logged-in users). display a user's photos (the "profile" page). need two different collections to do this? the logged-in/not logged-in will hit the same Rails route (Photos#index); user's photos will hit Users#show
Try to incorporate Google Maps API to locations for photos (either public or
followed). Ideally will be able to click on a photo and go to PhotoShow
view,
but I'd settle for manually setting lat/long for photos.
- Tag photos
- users can view all of their liked photos
- users can set their profile picture thumbnail
- map displays medium size photo
- users enter text location and auto-convert to lat/long for map display
- Pagination
- Search for photos by title
- Search for photos by tag
- Reblogging
- Custom urls for photos
- Support for multiple open sessions