Hyperion is a browser-based photo editor built with React. It supports global tonal and color adjustments, selective local masking, crop/rotate tools, multi-image workflow, and export in common web formats.
The application is designed for simplicity and ease of use, with a clean interface and intuitive controls. It runs entirely in the browser, with no server-side processing, making it fast and responsive.
- If you are only using the deployed website on Vercel: No.
- If you want to run or build the project locally: Yes (Node.js is required).
- Multi-image editing with gallery and filmstrip navigation
- Global adjustments: exposure, contrast, highlights, shadows, whites, blacks, color controls
- Local masking tools for selective edits
- Crop, rotate, and aspect-ratio tools
- Compare mode (hold Space) to preview original image
- Undo/redo history
- Export single or multiple images (JPEG, PNG, WEBP)
- Session restore (IndexedDB)
A help manual added for the ease of the user, explaining various features and functionalities.
- frontend: React + Vite app
- hyperion-backend: Express backend for help docs and feedback storage
- vercel.json: rewrite rules for SPA/API routing
- Node.js 18+
- npm
Install dependencies:
cd frontend && npm install
cd ../hyperion-backend && npm installcd frontend
npm run devOpen the URL shown by Vite (usually http://localhost:5173).
Note: this mode runs only the frontend. Endpoints under /api (help + feedback) are not provided unless you run the backend separately.
Build frontend first, then run the backend server that serves the built app and API:
cd frontend
npm run build
cd ../hyperion-backend
node server.jsOpen http://localhost:5000/api/edit
- End users only need the deployed URL in a browser.
- Node.js is only needed by contributors/developers working locally.
- Vercel rewrite rules are defined in vercel.json.
- GET /api/help/manual.json: returns help/manual content
- POST /api/feedback: accepts JSON payload:
{
"email": "optional@example.com",
"message": "Your feedback"
}Local backend appends feedback entries to feedback.txt.
- Import: JPEG, PNG, WEBP
- Max upload size: 30 MB per file
- Export: JPEG, PNG, WEBP
- Ctrl+O: open image(s)
- Ctrl+Z: undo
- Ctrl+Y or Ctrl+Shift+Z: redo
- Ctrl+E: export
- Ctrl+0: fit to screen
- C: start crop mode (when an image is active)
- Space (hold): compare with original
- Tab: toggle side panel
- Esc: close export modal / cancel crop

