innlouvate / bookmark_manager

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Makers Academy week 4: Bookmark Manager

This week's project is a bookmark manager. The goal is to expose you to the following aspects of web development:

  • Relational databases
  • Security considerations
  • More feature testing with Capybara

In addition to the technologies mentioned above, this project is going to be more challenging on the front-end. The task was to build a bookmark manager, similar to pineapple.io or delicious.com in spirit, as a good use case for exploring how relational databases work.

A boomark manager is a website to maintain a collection of links, organised by tags. You can use it to save a webpage you found useful. You can add tags to the webpages you saved to find them later. You can browse links other users have added.

Setup

This project was completed using TDD and pairing. The daily changing pair programming nature of Maker's means that the project code base can change on a daily basis. Therefore, there are seperate (often ophan) branches for each session and these have not been merged due to differences in approach.

Challenges

  1. Creating User stories
  2. Understanding Databases
  3. Setting up a Database
  4. Creating Your First Table
  5. Manipulating Table Data
  6. Using DataMapper
  7. Research CRUD
  8. Viewing Links
  9. Creating a Link Model
  10. Creating a Modular Sinatra App
  11. Creating Links
  12. Configuring DatabaseCleaner
  13. Configuring the Rack Env
  14. Deploying to Heroku
  15. Tagging Links
  16. Filtering Tags
  17. Multiple Tags
  18. Adding User Accounts
  19. Password confirmation
  20. Improving Sign Up Workflow
  21. Levels of Validation
  22. Preventing Duplicate Registrations
  23. Signing in
  24. Signing Out
  25. Refactoring
  26. Password Recovery
  27. Mailing the Token

User Stories

As a user
So that I can access my bookmarked URL's
I want to see a list of saved links
As a user
So that I can increase my bookmark collection
I want to add new links to my collection
As a user
So that I can easily group specific bookmarks
I want to be able to add tags to an entry
As a user
So that I can easily access specific bookmarks
I want to be able to search by tag

About


Languages

Language:Ruby 95.6%Language:HTML 4.4%