ImageKit is a high-performance, privacy-focused image processing suite built with Node.js & Express. Unlike traditional tools, ImageKit performs heavy-duty AI tasks—like background removal and neural upscaling—entirely within the user's browser using WebGPU and TensorFlow.js, ensuring data never leaves the local machine.
- AI Extraction: Uses the
RMBG-1.4model via ImageKit WebComponents for instant, high-precision subject isolation. - Manual Refinement: Integrated HTML5 Canvas tools for manual brush-based and box-based erasing using
destination-outcompositing. - Custom Backdrops: Dynamic layering of solid colors or custom-uploaded images behind the extracted subject.
- Super-Resolution: Implements
UpscalerJSto hallucinate missing pixels and upscale images by 2x, 3x, or 4x. - Hardware Safeguards: Intelligent fallback to CPU if WebGPU/WebGL is unavailable, with patch-based processing to prevent system hangs.
- Frame Extraction: Converts multi-page PDFs into high-quality JPEGs using
PDF.js. - Selection Logic: Supports print-style page range selection (e.g., "1, 3, 5-8") for targeted extraction.
- Cinematic Presets: Custom-engineered CSS filters for aesthetics like Polaroid, Retro, and Wong Kar Wai.
- Baking Engine: A "Canvas Baker" that captures real-time CSS filter styles and applies them directly to image pixels for high-quality export.
- Frontend: EJS (Embedded JavaScript Templates), CSS3 (Wireframe Aesthetic), Vanilla JS.
- Backend: Node.js, Express.
- AI/ML: TensorFlow.js, RMBG-1.4, UpscalerJS.
- Imaging: HTML5 Canvas API, PDF.js.
-
Clone the repository:
git clone https://github.com/your-username/imagekit.git cd imagekit -
Install dependencies:
npm install
-
Start the local server:
npm start
The app will be available at http://localhost:3000.
This project is built on the principle of Edge Computing. By offloading image processing to the client's GPU:
-
Zero Server Costs: The backend only serves static assets, making it infinitely scalable on free tiers like Koyeb.
-
Total Privacy: Images are processed in RAM and never uploaded to any server, making it safe for sensitive documents.
The UI follows a Retro-Wireframe design language, focusing on high-contrast borders and a clean, utilitarian "developer tool" feel.

