Skip to content

Project CSV Parser | Node JS (CSV Parser, MongoDB, HTML, JS, CSS)

Notifications You must be signed in to change notification settings

9Yogesh9/Csv-Parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project CSV Parser Live App

This app will help you Parse and Display the data for CSV files. Check it out !

Following are the features of this app:

  1. Home page.
    • Let you upload CSV file.
    • Shows a list of files uploaded in database.
    • While uploading the file following checks are implemented:
      1. Only CSV files are allowed to be uploaded.
      2. File with the name same as already uploaded file will be rejected.
      3. File above 10 MB will be rejected.
  2. File Details page:
    • Display the file data in the table format.
    • Table headers will be modified dynamically as the uploaded CSV's first row will be treated as coloumn headers.
    • Maximum 100 records are allowed to be displayed on the page.
    • If records are above 100 then you can browse the data by navigation buttons provided at the bottom.
    • If records are below 100 then pagination feature will be disabled.
  3. Special features:
    1. Pagination : 100 Records/Page.
      • Navigation buttons - Start Page, Prev Page, Next Page, End Page.
    2. Sorting : You can sort the whole data just by clicking on any column header.
      • Click on Left side of column header - Sorts the column in Ascending order.
      • Click on Right side of column header- Sorts the column in Descending order.
    3. Searching : You can search a data from Second column of file
      • Sorting will be enabled for the search results.
      • If search records are move than 100 then pagination will be enabled.
      • If search is performed for empty value then all records will be visible.
    4. Delete : You can delete the opened file to free up the storage.
      • In backend once the data is parsed the file will be deleted from the server and data will be stored in json format inside database.
      • To delete the stored file data from the database this feature is provided.
    5. Page Number : You will get to know the current page number at the right bottom of the screen.
      • The value for page will be changed dynamically as per the size of database.
      • Once you run the search query the page number will start pointing to the search results data.
This will open the live hosted application

Prerequisites:

  1. Node should be installed on your Device
  2. Mongo DB should be installed

How to setup ?

  1. Download the zip file for this project from the repository or Click here to download !
  2. Extract the file open in VS Code.
  3. Run npm i this will install all dependencies.
  4. Run nodemon index.js (if this command doesn't work, then nodemon is not installed globally in your system, please run npm i nodemon before running this command.)
  5. The app will be live on port 8000, you can access it using url http://localhost:8000 in your browser.
  6. Note : To run in local environment and link to your local mongo data base just uncomment the line 9 and comment line 3 and 10 in mongoose.js as the project is linked to cloud data base.

Screenshots:

Home Page

File Details Page