Giter VIP home page Giter VIP logo

bookmark-manager's People

Contributors

anphil avatar sportz avatar

Watchers

 avatar  avatar  avatar

bookmark-manager's Issues

UserSettings model

Create model for user settings.
Contains all settings which are not affected by devise-gem

Associations

  • 1:1 belongs_to_one devise: User

Properties

  • Background image

User authentication

Implement user sign up, sign in and sign out using Devise.

Gemfile:

# Use Devise for authentification
gem 'devise','3.4.1'
  • Validation via opt-in
  • letter_opener gem during development

Removed tasks

  • delete route edit_user_password

Bootstrap layout

Bootstrap layout using rails-bootstrap.

Views:

  • Landing Page: Containing a welcome message as well as ...
    • Signup form
    • Login form
  • Profile view: Form to edit e-mail address and password and upload background image
  • Home view: Displaying a list of categories besides the bookmarks contained in the category
    • Navbar partial view
    • Category partial view
    • Bookmark partial view
  • Bookmark editing views
  • Tag management views 
  • Single bookmark view
  • Mails
  • Resend unlock instructions
  • Confirmation view

Removed Tasks:

  • Bookmark sharing modal

Bookmark share

Sharing a bookmark via email using a modal dialog.

Fields

  • To-Addressee
  • Subject
  • Body

Tasks

  • view for modal dialog
  • insert values in email-fields
  • send email

Tags model

Create model for Tags

Associations:

  • n:m has_and_belongs_to_many Bookmarks
  • n:1 belongs_to User

Properties:

  • Name
  • Color

Operations:

  • Create
  • Update
  • Delete

Deployment

  • Production configuration and gems
  • Postgres database connection
  • Deploy to Heroku

After deployment

  • Edit domain-name for Custom-Mailer from field

User model

Create User with gem devise

Association

  • 1:n has_many Bookmarks
  • 1:1 has_one User Settings

Properties

  • managed by devise

Page redirections

Configure the correct redirections after forms were used.

  • Tag form
    • New tag (entered from tag management, redirect back to tag management)
    • New tag (entered from tag toolbar, redirect back to previous category)
  • Tag deletion (redirect back to tag management)
  • Bookmark form (redirect back to previous category)
  • Bookmark deletion (redirect back to previous category)
  • Transfer to bookmarks after login
  • Transfer to landing after logout
  • Transfer to home if bookmarks, tags, &c. are accessed when the user is logged out User can reach landing page from the Login page instead
  • Stay on settings page after changing settings
  • Transfer to bookmarks if landing page is accessed when the user is logged in

File upload

File upload for background images for each user.

  • 1:1 association between user and background image
  • Upload to server using Carrierwave gem
  • Transfer to AWS using Fog gem
  • Remove default image string

Validate bookmark URLs

If the URL property of a bookmark is not a URL (i.e. does not start with http:// or https://) the browser will issue a GET request to Rails, causing an exception.

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.