/CSV-File-Reader

The CSV File Reader is a Full Stack Application built using MongoDB, ExpressJS, NodeJS, EJS, Express Partials-Layouts, GulpJS. Users are able to upload, read, delete the files from the application. Front End & Back End Validation has been applied for uploading CSV Files less than 2MB. This website is completely Responsive across all the Devices. Users can Upload Files in CSV format. Uploaded Files are displayed in the sidebar & can be Selected. The CSV Parser Reads the file and displays it in a Tabular format. Users Receive Notifications for Deleting, Uploading the Files. Users can Delete the uploaded Files. Users can Search for the Keywords for a particular selected column in the Table. Users can Sort the selected column in the Table in ASC/DESC order upon clicking the headings. Users can navigate through the records using the Pagination which displays 100 records per page. Users can view Column Chart & Pie Chart for a selected column in the Table, just below the Table.

Primary LanguageJavaScript

𝐂𝐒𝐕 𝐅𝐢𝐥𝐞 𝐑𝐞𝐚𝐝𝐞𝐫 🚀


⭐ Introduction

The CSV File Reader is a Full Stack Application built using MongoDB, ExpressJS, NodeJS, EJS, Express Partials-Layouts, GulpJS. Users are able to upload, read, delete the files from the application.

This website is completely Responsive across all the Devices.

  • Users can Upload Files in CSV format.

  • Uploaded Files are displayed in the sidebar & can be Selected.

  • Front End & Back End Validation for uploading CSV Files less than 2MB.

  • The CSV Parser Reads the file and displays it in a Tabular format.

  • Users Receive Notifications for Deleting, Uploading the Files.

  • Users can Delete the uploaded Files.

  • Users can Search for the Keywords for a particular selected column in the Table.

  • Users can Sort the selected column in the Table in ASC/DESC order upon clicking the headings.

  • Users can navigate through the records using the Pagination which displays 100 records per page.

  • Users can view Column Chart & Pie Chart for a selected column in the Table, just below the Table.



🔥 Getting Started With The Project

  • Fork the Project in your Repository.
  • Clone the Forked Repository in your Local System.
  • Install & Configure - NodeJS, MongoDB, Robo3T, POSTMAN.
  • Create '.env' file & Set the Environment Variables in it, as per the 'ENV_FORMAT.json' file.
  • Run 'npm install' in GitBash Terminal
  • For Development Mode:
    Go to 'package.json' & inside the 'SCRIPTS', find "start":"...."
    Change it to - "start": "SET NODE_ENV=development & nodemon index.js",
  • For Production Mode:
    Go to 'package.json' & inside the 'SCRIPTS', find "start":"...."
    Change it to - "start": "SET NODE_ENV=production & node index.js",
  • If you want to run the project in development mode locally then go to '.env' file & set,
    DEPLOYMENT=local
  • If you want to run the project in production mode then go to '.env' file & set,
    DEPLOYMENT=local OR other OR Heroku OR AWS
  • Run 'npm start' in GitBash Terminal
  • Enjoy :)

For any issues related to the project, raise an ISSUE in the respective Repository.

🔨 Tools Used

  • Library:
    • cors
    • csv-parse
    • del
    • dotenv
    • ejs
    • express
    • express-ejs-layouts
    • gulp
    • gulp-cssnano
    • gulp-imagemin
    • gulp-rev
    • gulp-sass
    • gulp-uglify-es
    • mongoose
    • morgan
    • multer
    • node-sass-middleware
    • nodemon
    • rotating-file-stream
  • Framework: ExpressJS, Bootstrap
  • Database: MongoDB
  • Version Control System: Git
  • VCS Hosting: GitHub
  • Programming / Scripting: JavaScript
  • Front-End: SCSS, EJS
  • Runtime Environment: NodeJS
  • Integrated Development Environment: VSCode

🔗 Links

Checkout the Website Web Application

Checkout the Application Demo Video YouTube


💻 Screens


🐦 Follow Me:

Dev Community

Twitter

LinkedIn

YouTube

I hope you like the project. Thanks for reading :)