MultiNote

An amazing notes app that can help you keep a track of your notes and essential tasks.

The app is a Ruby On Rails based web application

Link to hosted application:

https://stark-savannah-91363.herokuapp.com/

Features Implemented

  • Addition/Deletion/Updation of Notes
  • App supports addition of images by both markdown and separate image upload
  • Sort the posts/notes
  • Filter by user email
  • Information stored about notes
    • Title
    • Label
    • Content
  • Addition of Admin Panel
  • Filtering on the basis of Label
  • Filtering on the basis of Date
  • Searching the notes based on substring matching
  • Support for 9 different tags - Medium Priority, Non-critical, Work, Trackback, Family, Deadline, In Progress, Important, Priority
  • User Authentication
  • Validation on the naming of the notes
  • Support for Markdown
  • Link Highlighting
  • Smooth Scroll

Installation

Follow the steps below to run the project.

  1. Clone the Repository
$ https://github.com/singhsanket143/Hemlet-Assignment-App.git
  1. Install the gems
$ bundle install
  1. To set up the tables in the database
$ rake db:migrate
  1. We always have default data that we want to have in our application for testing purposes. The seed command exists to automate this process. To do that use,
$ rake db:seed
  1. Run the rails server using the command line simply using,
$ rails server
  1. Run the application on http://localhost:3000/

Functionalities

Admin Panel

The main purpose of Admin Panel is to add/remove the labels to the notes and keep a track of the current users of the app.

image

To access the admin panel go to the route '/admin' Credentials for default admin: Email: 'admin@example.com' password: 'password'

View all the Notes:

Each note can be viewed, edited and deleted depending on the requirements of the user.

Screenshot 2019-12-30 at 7 58 35 PM

Screenshot 2020-03-26 at 11 15 18 PM

Label Filtering on Notes:

The notes can be filtered on the basis of label assigned to them. Simply write the name of the required tag and press Apply Filters. The required notes will be displayed. Eg: Display the notes which have the tag Deadline.

Screenshot 2019-12-30 at 8 04 18 PM

Notes Filtering on the basis of Date

In order to filter the notes, on the basis of date, write the start date and the end date and press Apply Filters.

Screenshot 2019-12-30 at 8 30 25 PM

Searching in Notes

Notes can be searched on the basis of the substring. Write the name of the notes you want to in the search bar and press the button search.

Screenshot 2019-12-30 at 8 18 24 PM

New Notes Page:

To add a new note click on Create new note. Add the title and the description of the note. You can also add labels such as Medium Priority, Non-critical, Work, Trackback, Family, Deadline, In Progress, Important, Priority

Screenshot 2019-12-30 at 6 11 24 PM

Edit a note:

To edit a note, simply click on the edit note button corresponding to the note that you want to edit.

Screenshot 2019-12-30 at 8 12 45 PM

Display a Note:

To view a particular note, click on the button View Note

Screenshot 2019-12-30 at 8 14 26 PM

User Authentication:

Screenshot 2019-12-30 at 8 20 10 PM

Markdown Support

Screenshot 2019-12-30 at 8 42 32 PM