8000 GitHub - jlambert12013/Photopea: Photopea Application that can be turned into desktop application using Electron or ran in a completely isolated docker container. Photopea is containerized within another Firefox container which is ran in the browser giving layers of isolation from the host machine.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Photopea Application that can be turned into desktop application using Electron or ran in a completely isolated docker container. Photopea is containerized within another Firefox container which is ran in the browser giving layers of isolation from the host machine.

Notifications You must be signed in to change notification settings

jlambert12013/Photopea

Repository files navigation

Photopea Pro - Privacy-First Photo Editor

A containerized, privacy-focused version of Photopea with zero data persistence and optional network routing through Firefox for enhanced anonymity.

πŸ›‘οΈ Privacy Features

  • Zero Data Persistence - All data stored in memory (tmpfs)
  • No Cache Storage - Aggressive no-cache headers and clearing
  • Private Browsing Mode - Continuous clearing of localStorage, sessionStorage, and cookies
  • Network Isolation - Optional routing through Firefox container for IP masking
  • No Logging - Nginx access logs disabled for privacy
  • Secure Headers - Anti-tracking and security headers enabled

πŸš€ Quick Start

Prerequisites

  • Docker and Docker Compose installed
  • Git (for cloning)

Option 1: Standalone Mode (Basic Privacy)

# Clone the repository
git clone https://github.com/jlambert12013/Photopea.git
cd Photopea

# Start the application
docker-compose up -d

# Access Photopea
open http://localhost:3000

Option 2: Firefox Network Routing (Maximum Privacy)

# Use the provided docker-compose.yml with Firefox routing
docker-compose up -d

# Access Firefox interface (to monitor network activity)
open http://localhost:5800

# Access Photopea through Firefox network
open http://localhost:3000

Option 3: Complete Data Destruction Mode

# Run the destruction script for maximum privacy
chmod +x destroy-data.sh
./destroy-data.sh

# This will:
# - Stop all containers
# - Remove all volumes and cached data
# - Clean Docker system
# - Start fresh containers

πŸ—οΈ Usage Scenarios

1. Docker Container (Current Setup)

Perfect for:

  • Server deployments
  • Privacy-focused editing
  • Isolated environments
  • Network routing through VPN/proxy

2. Electron App Development

Use this codebase to build a desktop application:

# Install Electron dependencies
npm install electron electron-builder --save-dev

# Create electron main process (example)
# See electron-example/ directory for full implementation

# Build desktop app
npm run electron:build

3. Standalone Web Server

Deploy without Docker:

# Install dependencies
npm install

# Start nginx or use Node.js server
# Serve index.html with your preferred web server

πŸ“ Project Structure

Photopea/
β”œβ”€β”€ docker-compose.yml          # Main orchestration file
β”œβ”€β”€ Dockerfile                  # Container build instructions
β”œβ”€β”€ nginx.conf                  # Zero-cache nginx configuration
β”œβ”€β”€ index.html                  # Privacy-enhanced Photopea wrapper
β”œβ”€β”€ destroy-data.sh            # Complete data destruction script
β”œβ”€β”€ package.json               # Node.js dependencies (if needed)
β”œβ”€β”€ dist/                      # Built assets (auto-generated)
β”œβ”€β”€ electron-example/          # Electron app example (optional)
└── README.md                  # This file

πŸ”§ Configuration

Environment Variables

# Firefox container settings
DISPLAY_WIDTH=1920
DISPLAY_HEIGHT=1080
VNC_PASSWORD=yourpassword

# Nginx settings
NGINX_HOST=localhost
NGINX_PORT=80
NODE_ENV=production

Custom Network Routing

To route through different containers or VPN services:

# In docker-compose.yml
services:
  photopea-pro:
    network_mode: "container:your-vpn-container"
    # or
    network_mode: "service:your-proxy-service"

πŸ› οΈ Development

Building from Source

# Build the Docker image
docker-compose build --no-cache

# Run in development mode
docker-compose -f docker-compose.dev.yml up

Customizing Privacy Settings

Edit nginx.conf and index.html to adjust:

  • Cache policies
  • Security headers
  • Data clearing intervals
  • Browser restrictions

πŸ” Security Features

  • Sandboxed iframe - Photopea runs in restricted environment
  • No right-click - Context menu disabled
  • Dev tools blocking - F12, Ctrl+Shift+I disabled
  • Referrer policy - No referrer information sent
  • Content security - XSS and content-type protections
  • Data redaction - Sensitive console logs filtered

πŸ“± Platform Support

Supported Platforms

  • βœ… Docker (Linux/macOS/Windows)
  • βœ… Web browsers (Chrome, Firefox, Safari, Edge)
  • βœ… Electron (desktop app potential)
  • βœ… Progressive Web App (PWA ready)

Browser Compatibility

  • Chrome 70+
  • Firefox 65+
  • Safari 12+
  • Edge 79+

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“‹ Roadmap

  • Electron desktop application
  • Progressive Web App (PWA) support
  • Additional privacy plugins
  • VPN integration presets
  • Mobile-responsive improvements
  • Custom Photopea themes
  • Batch processing capabilities

⚠️ Important Notes

Privacy Disclaimer

This application enhances privacy but cannot guarantee complete anonymity. For maximum security:

  • Use with VPN/Tor
  • Avoid uploading sensitive files
  • Clear browser data after use
  • Monitor network activity

Performance Considerations

  • All data stored in RAM - monitor memory usage
  • Large files may consume significant memory
  • Container restarts clear all data permanently

πŸ› Troubleshooting

Common Issues

Container won't start:

# Check logs
docker-compose logs photopea-pro

# Rebuild without cache
docker-compose build --no-cache

Port conflicts:

# Change ports in docker-compose.yml
ports:
  - "3001:80"  # Use different port

Memory issues:

# Increase Docker memory limits
# Or reduce display resolution in Firefox settings

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Photopea - Amazing web-based photo editor
  • jlesage/docker-firefox - Firefox container for network routing
  • Docker community for containerization best practices

πŸ“ž Support


⚑ Made for privacy-conscious creators who need professional photo editing without data tracking.

About

Photopea Application that can be turned into desktop application using Electron or ran in a completely isolated docker container. Photopea is containerized within another Firefox container which is ran in the browser giving layers of isolation from the host machine.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0