Giter Club home page Giter Club logo

mid_mod_4's Introduction

Mid-Module Assessment - Module 4

This was the mid-module assessment for module 4 at Turing School of Software and design. The goal was to create a website using Rails and JavaScript that would allow the user to post links to a site and it would inform them if they were read or unread.

Link to my production site

mid_mod_4's People

Contributors

matthewecampbell avatar

Watchers

James Cloos avatar  avatar

mid_mod_4's Issues

Iteration #1 - Sign Up Details

As an unauthenticated user, if I click "Sign Up", I should be taken to a user form where I can enter an email address, a password, and a password confirmation.

I cannot sign up with an email address that has already been used.
Password and confirmation must match.
If criteria is not met the user should be given a message to reflect the reason they could not sign up.
Upon submitting this information, I should be logged in via a session cookie and redirected to the "Links Index" page.

Iteration #2 - Submitting and Viewing Links

(This section will be testing your basic Rails CRUD abilities, with some validation logic thrown in. Aim to complete this section in 90 minutes or less.)

As an authenticated user viewing the main page (links#index), I should see a simple form to submit a link.

The Link model should include:

A valid URL location for the link
A title for the link
Additionally, all links have a read status that is either true or false. This status will default to false.

Submitting an invalid link should result in an error message being displayed that indicated why the user was not able to add the link.

Hint: Use Ruby's built in URI.parse method to determine if a link is a valid URL or not. This StackOverflow post has more information. Alternatively, you could use a gem like this one.

Once a link has been submitted, loading the index page should display all of my links only.

Iteration #3 - Updating Link Status

(Aim to complete this section in 30-45 minutes.)

As an authenticated user who has added links to my URLockbox, when I view the link index:

Next to each unread link I should see an option to "Mark as Read".
Clicking this should visibly change the read status to true, and the change should persist.
Next to each read link I should see an option to "Mark as Unread".
Clicking this should change the read status to false, and the change should persist.
Read links should be stylistically differentiated from unread links. You could gray them out or use a strike through or anything you think appropriately informs the user that their link is read or unread.
Note: Later iterations will require that you be able to update the status of the link without reloading the page. Depending on your approach, it might be easier to implement that now.

Iteration #4 - Editing Links

Aim to complete this section in 45 minutes.)

As an authenticated user who has added links to my URLockbox, when I view the links index:

Each link has an "Edit" button that either takes me to a page to edit the link or allows me to edit the link in place on the page.
I can edit the title and/or the URL of the link.
I cannot change the URL to an invalid URL. Show the same error message as above.

Iteration #1 - Sign up

As an unauthenticated user, when I visit the root of the application, /, I should be redirected to a page which prompts me to "Log In or Sign Up".

Nota Bene: You should aim to complete user auth in the simplest way possible. Using Rails' "built-in" gem Bcrypt is the most straightforward and recommended way to implement this functionality.

Iteration #1 - Sign Out

Sign Out

As an authenticated user viewing the index page, I should see a link to "Sign Out" and not see a link to "Sign In". This should redirect me back to the root of the application where I should see a link to "Sign In".

Iteration #5 - Client Side

Iteration 5 - Client-side

(Aim to complete this section in 90 minutes.)

As an authenticated user, I can do the following in the link index without reloading the page:

Mark a link as read or unread
Filter the list of links by a search term as I type
Click buttons/links to filter the list by status (e.g. "read" and "unread")
Sort the list alphabetically.
This does not have to persist, but can if that's easier.

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.