Canary TRAP prevents and exposes information leakages, by leaving visually undetectable but traceable footprints to the naked eye in the digital documents.
Main:
- React - for frontend.
- Redux - for State management
- MongoDB / Mongoose- the database for the backend.
- Express - for the middleware.
- Multer - middleware to transport image buffer between frontend & backend
- JIMP - for pixel manipulation
- nodemailer - for automated email + attaching IMGs to email.
Other smaller packages:
- Axios - for fetching
- Tailwind - for styling.
- React router - routing to different pages, for the NavBar.
- jsonwebtoken - to enable JWT token
- jwt-decode - for decoding JWT tokens
- UUID - for unique ID
- bcrypt - encryption for password
- dotenv - for private enviroment variables
- heroicons - for icons
- buffer - for use images buffer
- Upload "Confidential" documents.
- Input: Quantity of distribution & Names
- ✨Magic ✨
- Recieve each new altered document from your email
- Upload Leaked Documents
- ✨Magic ✨
- Gives u a result of who it matches.
- Started out by drawing out the hierarchy of the site
- Identify all the endpoint needed
- Build out the core backend components
- Build check to ensure backend working, as arrays are too large to display on MongoDB
- Built the barebone forms, and inputs on the frontend and link up the backend to ensure functionality
- Build frontend + routing
- Add in CSS
- Add in additional features e.g PDF conversion compatability)
- Add in capabilites to allow image tracebility even if image is cropped / skewed. (Current feature only work on full image)
- use matrix package for better computational efficiency.
- redo database schema, for better stripping of redundant infomation being fed to frontend, which can result in slower initial loading time, and rendering of state.
Website initial template: Provided and thank to Creative Tim