Redactify is a web application for redacting sensitive information from PDF documents. It is built with Next.js and TypeScript and styled using Tailwind CSS and components from shadcn/ui.
-
PDF Upload – drag and drop or select a PDF file to begin.
-
Manual redaction – click and drag to highlight areas that should be redacted.
-
Undo, clear and reset – manage redaction boxes before finalising the document.
-
Download options – export either a recoverable or secure flattened PDF.
src/
app/ # Next.js app router entry points
components/ # UI components including the RedactionTool
hooks/ # Custom React hooks
lib/ # Utility helpers
middleware.ts # Request logging
- Install dependencies:
npm install
- Start the development server:
The app runs on localhost:9002 by default.
npm run dev
- Lint and type‑check the project:
npm run lint npm run typecheck
- Build for production:
npm run build npm start
The application includes a middleware that logs every incoming request to the console. The logs are structured as JSON for easier parsing and analysis.
Example log entry:
{
"message": "User access",
"timestamp": "2025-07-22T16:35:37.968Z",
"ip": "::1",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",
"geo": {
"city": "Mountain View",
"country": "US",
"region": "CA"
}
}To persist these logs, you can redirect the console output to a file when starting the application:
npm start > access.log 2>&1This project is released under the MIT License.
For support email vibecoder01+redactify@gmail.com


