GithubHelp home page GithubHelp logo

wdi_3_rails_hw_bookmarks's Introduction

Bookmarkr™

"Who got this CRUD all over my bookmarks?"

Create a Rails app that allows me to track my bookmarks! Bookmarks have:

  • a URL (required, must start with "http")
  • a title (required)
  • a comment (optional)
  • a category (optional, select from "Serious", "Funny", or "Useful")
  • a checkbox that indicates this is a "favorite" bookmark

The app root should show a list of all my bookmarks, sorted by title. URL and comment should not be displayed here, but I should be able to see which bookmarks have a comment, as well as which ones are "favorite". Clicking a bookmark's title should take me to its URL, and there should be an option to view all attributes of a bookmark. I should be able to add new bookmarks and edit or delete existing bookmarks. I should also be able to filter the list by category (e.g. show me only Serious bookmarks).

Since this is a decently-sized project, put some polish into it! The details of how to display the needed information are up to you – make your bookmarker a product someone would actually want to use. If you're feeling ambitious, you can try a CSS framework like Bootstrap or Foundation.

One more thing: Make sure you provide some working seed data so we can easily test your app without typing in a bunch of bookmarks. Pulling down a fresh copy of your app and running rake db:setup should not give any errors.

Specifications

  • App has a database schema with appropriate columns and indexes
  • App has working seed data that creates a variety of bookmarks
  • User can view bookmarks in an alphabetical list with titles/categories
  • User can see from the list which bookmarks are favorite/commented
  • User can filter the list of bookmarks by category, and clear the filter
  • New categories can be easily added to your code without any duplication
  • User can view all attributes of a specific bookmark
  • User can submit new bookmarks
  • User can edit the attributes of existing bookmarks
  • User can delete existing bookmarks
  • Bookmarks have appropriate validations and show errors to the user
  • App has at least basic styles to provide an attractive and intuitive experience
  • App generates HTML and CSS that validates with no errors
  • Code is placed in the correct locations and files according to Rails conventions
  • Code follows style conventions and has descriptive variable and method names
  • Repository has clean, logical, single-task commits with descriptive messages

Extra Challenges

  • Instead of the real URL, link bookmark titles to another path within your app that redirects to the real URL and increments a click-tracking counter. This will allow me to share specific bookmarks with friends and track their popularity.
  • Extra points will be awarded for crafting an impressive and attractive user experience that makes use of a CSS framework such as Bootstrap or Foundation.

wdi_3_rails_hw_bookmarks's People

Contributors

jakeaustin avatar grantovich avatar digitalcora avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.