Protect the integrity of your documents with a SHA-256 based verification hash
HashProof is a lightweight, open-source webapp tool that allows users to generate SHA-256 hashes for digital PDF documents while ensuring maximum privacy.
Unlike other verification tools, HashProof does not store any files—everything happens in memory, making it a secure and privacy-respecting solution.
In a digital era where document integrity is critical, ensuring that a file remains unaltered is essential. Traditional solutions often store files in a database or process them in external servers, potentially exposing sensitive information.
HashProof offers a privacy-first approach by generating the cryptographic fingerprint on the fly without storing or logging user data.
- Upload a document (PDF format, up to 10MB).
- Generate its SHA-256 hash, a unique fingerprint.
- Copy the hash to your clipboard for secure storage or verification elsewhere.
Description | |
---|---|
✅ | Drag & Drop File Upload for a seamless experience. |
✅ | Real-Time SHA-256 Hash Generation with an asynchronous API. |
✅ | No File Storage—documents are never saved, ensuring user privacy. |
✅ | Easy copy to clipboard to keep your hash wherever you need. |
✅ | Modern UI with Angular for a smooth user experience. |
✅ | Fast & Scalable Backend using NestJS, Supabase (PostgreSQL), and Railway. |
✅ | Deployed with Vercel (Frontend) & Railway (Backend) for high availability. |
-
Clone the Repository
git clone https://github.com/rmardonesa/HashProof.git cd HashProof
-
Set Up the Backend
cd backend npm install
-
Create .env file in the backend directory and add the following
DATABASE_URL=your_supabase_postgres_url PORT=your_port
-
Run the backend
npm run start
-
Set Up the frontend
cd ../frontend npm install
-
Run Angular App
ng serve
HashProof integrates technologies to ensure performance, scalability, and a smooth user experience. Below is a breakdown of the stack:
Category | Technology | Description |
---|---|---|
Frontend Framework | Angular | Provides a component-based architecture for a dynamic and interactive UI. |
Frontend Styling | SASS | Used for styling and customizable themes with powerful CSS features. |
Front/Back Language | TypeScript | Ensures strongly-typed code and maintainability in both frontend and backend. |
Backend Framework | NestJS | Provides a scalable, modular backend built on top of Node.js with TypeScript. |
Hashing Algorithm | SHA-256 | Cryptographic function to generate a unique fingerprint of documents. |
Database (SQL) | Postgres | Reliable SQL database for future storage of hash records. |
Database Hosting | Supabase | Serverless Postgres with API authentication and seamless integration. |
Backend Deployment | Railway | Cloud platform for scaling backend services and API hosting. |
Frontend Deployment | Vercel | Fast global deployment of the web app with automatic builds. |
Asynchronous Requests | Promises & Async/Await | Ensures smooth non-blocking API communication. |
Security & Privacy | No file storage | The system never stores documents, only processes them in memory for hashing. |
This Open Source project is licensed under the BSD 3-Clause License.
Contibutions are welcome! Follow these steps:
-
Fork the Project
-
Create a feature branch:
git checkout -b feature/new-feature
- Make your changes and commit them
git push origin feature/your-feature
- Open a Pull Request!