
I spent 14 months building PhotoQuill, a browser-based Photoshop alternative that runs entirely on WebGPU. Launched 2 weeks ago. Here's what I learned.
Why I Built This
I'm a designer turned developer. Every time I opened Photoshop, I had to wait forever for it to load. Plus, Adobe's $22.99/month subscription felt too expensive for occasional use. I thought: what if there was a browser version that just works, instantly, and for free?
The Technical Challenge
I started with Canvas 2D API. Performance was terrible with large images. Then I discovered WebGPU - the new browser GPU API that gives you direct access to graphics hardware.
Key decisions:
- WebGPU over WebGL (3-5x performance boost)
- Pure client-side processing (privacy + zero server costs)
- Full PSD compatibility, not just export (hardest part)
Three Hardest Technical Problems
- Reverse-Engineering PSD Format
Photoshop's .psd format has no complete public documentation. I spent a month studying the ag-psd library source code to understand layers, masks, blend modes, and data structures. Smart Objects were the worst - they're nested PSD files.
- WebGPU Performance Optimization
Getting 60fps canvas rendering in a browser required careful GPU memory management:
- Tile-based rendering (split layers into chunks)
- Only render visible areas
- Compute Shaders for filters (2x faster than Fragment Shaders)
Result: smooth editing even with 500MB PSD files.
- Implementing 27 Blend Modes
Photoshop has 27 layer blend modes (Multiply, Screen, Overlay, Color Dodge, etc.). Each one required writing GLSL shaders and ensuring pixel-perfect match with Photoshop's output. 2000+ lines of shader code.
What Worked
- Ship MVP fast: First version had just layers, brushes, and export. Launched in 2 weeks.
- Build in public on Twitter: Daily progress updates built early audience.
- Focus on one killer feature: Full PSD compatibility. Competitors only do partial support.
- Freemium model: Core editor free forever. AI features are paid add-ons.
What Didn't Work
- Trying to build 50 features at once: Took 3 months to realize I should ship with 10 core features first.
- Ignoring mobile: 30% of users are on mobile. Had to rebuild the UI.
- Over-optimization: Spent 2 weeks optimizing a feature only 1% of users touch.
Current Status (2 weeks post-launch)
- 800+ users (no paid ads)
- 15% day-1 retention
- First paying customer yesterday
- 4.6/5 rating on Product Hunt
Tech Stack
- Frontend: React + TypeScript + Zustand
- Rendering: WebGPU + GLSL Shaders
- PSD parsing: ag-psd (heavily modified)
- Hosting: Cloudflare Pages (free tier)
Cost Structure
- Server: $0 (static site)
- AI API: ~$50/month (user-paid)
- Domain: $12/year
- Total: Nearly zero operating cost
Advice for Indie Hackers
- Pick the right tech: WebGPU enabled desktop-class performance in a browser.
- Freemium works: Free core attracts users. Premium features convert.
- Build in public: Twitter exposure drove 60% of early traffic.
- Solve real pain: Adobe's price + install requirement + privacy concerns = clear market need.
Open Source Plans
Planning to open-source the core PSD parser and WebGPU rendering engine under MIT license. Want to help other developers build similar tools.
Questions for the Community
- What performance bottlenecks have you hit building browser apps?
- Would you consider using WebGPU over Canvas/WebGL?
- Any experience with freemium pricing models?
Try it: https://photoquill.com
Happy to answer technical questions about WebGPU, PSD format, or indie development.
Try it out here: PhotoQuill
United States
NORTH AMERICA
Related News
How Braze’s CTO is rethinking engineering for the agentic area
10h ago
Amazon Employees Are 'Tokenmaxxing' Due To Pressure To Use AI Tools
21h ago

Implementing Multicloud Data Sharding with Hexagonal Storage Adapters
15h ago

DeepMind’s CEO Says AGI May Be ~4 Years Away. The Last Three Missing Pieces Are Not What Most People Think.
15h ago

CCSnapshot - A Claude Code Configs Transfer Tool
21h ago
