ShardVault is a secure file storage web application built as our major college project, designed to protect user data using advanced cryptographic segmentation.
It allows users to upload, encrypt, and store files securely, with a unique decrypting key sent to their email for file recovery.
Deployed live on Vercel 🚀
🔗 Live Demo: https://shardvault.vercel.app
📊 Project Status Dashboard: View on Looker Studio
📄 Research Paper Published: View on EBSCOhost
ShardVault provides a robust platform for secure document storage and retrieval.
It ensures privacy by splitting files into multiple encrypted fragments using different cryptography techniques and merging them back only through a unique decrypting key.
-
File Encryption & Segmentation
Files are divided into multiple parts and encrypted with various cryptographic methods. -
Secure File Uploads
Upload documents through a user-friendly form. Each upload generates a 16-digit alphanumeric decrypting key, shown in a popup and emailed to the user. -
Authentication System
Users can register, log in, and manage their profiles securely. -
Dashboard Interface
Displays uploaded files, allows downloads, and visualizes file type distribution using a pie chart. -
File Type & Size Restrictions
Accepts PDF, DOCX, PNG, JPEG formats up to 1 MB. -
Responsive Modern UI
Includes dark/light mode toggle, modern layout, and smooth transitions. -
Integrated Analytics
Embedded Google Analytics for monitoring app performance. -
Chatbot Integration
A custom chatbot link is embedded in the<head>section for assistance.
| Category | Technologies |
|---|---|
| Frontend | HTML, CSS, JavaScript |
| Backend | Node.js / Express (or Flask if Python-based) |
| Database | MongoDB / Firebase / Local JSON |
| Deployment | Vercel |
| Charts | Chart.js / Recharts |
| Email Service | Nodemailer / SMTP API |
| Analytics | Google Analytics + Looker Studio |
| Version Control | Git & GitHub |
ShardVault/
│
├── public/
│ ├── logo.png
│ ├── images/
│ └── favicon.ico
│
├── src/
│ ├── index.html
│ ├── styles.css
│ ├── script.js
│ ├── dashboard.html
│ ├── upload.html
│ ├── auth/
│ │ ├── signin.html
│ │ ├── signup.html
│ │ ├── profile.html
│ │ └── logout.html
│ └── components/
│ └── footer.html
│
├── server/
│ ├── app.js
│ ├── routes/
│ │ ├── upload.js
│ │ ├── auth.js
│ │ └── files.js
│ └── utils/
│ ├── encrypt.js
│ └── mailer.js
│
├── package.json
└── README.md
-
User Registration/Login
Users sign up or log in using their name, email, and password. -
File Upload
Users upload files using the provided HTML form. -
Encryption & Key Generation
- File is split into encrypted fragments.
- A unique 16-digit alphanumeric decrypt key is generated.
- The key is displayed in a popup and also sent via email.
-
Dashboard Display
Uploaded files are shown in the dashboard, along with a pie chart showing the file type breakdown. -
File Retrieval
Users can securely download their encrypted files using the decrypt key.
-
Clone the repository
git clone https://github.com/ekasnh/shardvault.git cd shardvault -
Install dependencies
npm install
-
Run the development server
npm run dev
or
node server/app.js
-
Open in browser Visit:
http://localhost:3000
The project is deployed on Vercel for smooth CI/CD and global scalability.
To redeploy:
vercel --prod- Real-time activity and performance monitoring via Looker Studio:
👉 Check Project Status Dashboard
- End-to-end decryption and verification system
- Secure sharing via expiring links
- Advanced key management with blockchain integration
- AI-based anomaly detection for file access
Made by:
- Ekansh Agarwal
- Shubham Sharma
Major Project – NMIMS University, 2025
Deployed on Vercel
Research Paper Published on: EBSCOhost
📬 If you want access to the project code, please fill this form:
👉 Request Repository Access
We will share the repository link with you directly.
This project is for educational and research purposes only.
All rights reserved © 2025 ShardVault Team.
🧠 “Data security is not a feature, it’s a foundation.”