checkMate is a document verification solution designed to automate the process of verifying documents such as academic results, admission cards, and college ID cards. By utilizing machine learning and blockchain technology, checkMate ensures secure, tamper-proof storage of verified documents, making the verification process faster and more efficient for users.
- Frontend: HTML5, React, CSS3
- Backend: Node.js, Flask, Python
- Machine Learning: PyTorch, OpenCV
- Database: MongoDB
- Storage: IPFS
- Authentication: Auth0
- User-friendly interface for document uploads.
- Automatic document type verification using AI/ML.
- Text extraction from documents using OCR.
- Secure storage of documents on IPFS with unique hashes.
- Dashboard for users to view document verification status.
- Manual verification request functionality.
- Future integration for companies to access verified documents via API.
- Document Upload: Users upload a document and select its type from a dropdown menu (e.g., result, admit card, college ID card).
- Type Verification: The AI/ML model checks if the uploaded document matches the selected type.
- Text Extraction: If the type is correct, the model extracts text and features from the document.
- Database Comparison: Extracted data is compared against a dummy database using the FuzzyWuzzy algorithm.
- Verification Stamp: Verified documents receive a stamp and are stored in IPFS, generating a unique hash.
- Data Storage: The hash and relevant user data are stored in a MongoDB database.
- User Dashboard: Users can view their document verification statistics on a dashboard.
- Manual Verification Requests: Users can request manual verification by sending an email to the Head of Department with the hash of the unverified document.
Follow these steps to set up the project on your local machine:
-
Clone the repository:
git clone https://github.com/ansh-d23/checkMate.git
-
Install React dependencies:
cd checkMate npm install
-
Set up the backend:
cd engine python -m venv .venv pip install -r requirements.txt
-
Relocate to root directory:
cd ..
-
Run the application:
npm run dev
After successfully running the application, navigate to http://localhost:5173
in your web browser. From there, you can upload documents, view verification statuses, and access your user dashboard.
- Develop an API for companies to access verified documents of students by entering their Aadhaar card number.
- Improve the AI/ML model for better accuracy in document type verification.
- Enhance user interface and experience based on user feedback.
This project is licensed under the MIT License - see the LICENSE file for details.