Skip to content

A modern Electron application for creating beautiful Apple App Store preview screenshots with the exact dimensions required for App Store listings

License

Notifications You must be signed in to change notification settings

Build4Build/Preview-Screenshots-Desktop-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Preview Screenshots Maker

A modern Electron application for creating beautiful Apple App Store preview screenshots with the exact dimensions required for App Store listings. Built with ❀️ for iOS developers and designers.

Preview Screenshots Maker Electron License

✨ Features

πŸ“± Perfect Device Support

  • iPhone 15 Pro (6.9"): 1290 Γ— 2796 pixels
  • iPhone 15 (6.5"): 1284 Γ— 2778 pixels
  • Exact App Store screenshot dimensions guaranteed

🎨 Professional Design Tools

  • Background Options:

    • 8 Apple-inspired color presets
    • 4 beautiful gradient backgrounds
    • Custom color picker for brand colors
  • Content Elements:

    • Images: Drag & drop support for easy import
    • Text: Apple-style typography with SF Pro Display
    • Shapes: Rounded rectangles with customizable properties
    • Device Frames: Add realistic iPhone mockup frames

πŸ“‹ Ready-to-Use Templates

  • 🎯 Hero Template: Perfect for your main app screenshot
  • ⚑ Features Template: Highlight three key features
  • πŸ’¬ Testimonial Template: Show user reviews and ratings
  • πŸ“Š Statistics Template: Display impressive numbers

πŸ› οΈ Advanced Tools

  • Real-time Property Panel: Edit text, colors, positions instantly
  • Keyboard Shortcuts: Professional workflow support
  • Batch Export: Export all templates at once
  • Drag & Drop: Simply drag images into the canvas

πŸ’Ύ Export Options

  • High-quality PNG/JPEG export
  • Automatic filename generation with timestamps
  • Batch export all templates to Downloads folder
  • Native file dialogs for seamless workflow

πŸš€ Quick Start

  1. Clone and Install:

    git clone <repository-url>
    cd Preview-Screenshots
    npm install
  2. Run the App:

    npm start
  3. Create Your First Screenshot:

    • Choose your iPhone model (15 Pro or 15)
    • Click "🎬 Load Demo" to see it in action
    • Or click a template button to start fresh
    • Add your content and export!

⌨️ Keyboard Shortcuts

Shortcut Action
⌘/Ctrl + S Save screenshot
⌘/Ctrl + D Duplicate selected object
Delete/Backspace Remove selected object
Drag & Drop Add images to canvas

🎯 Perfect for App Store

This tool creates screenshots that meet Apple's exact requirements:

  • Correct dimensions for each device size
  • High-quality output suitable for App Store submission
  • Professional templates following Apple's design guidelines
  • Easy batch creation for multiple screenshot slots

πŸ“± Device Specifications

Device Resolution Aspect Ratio App Store Use
iPhone 15 Pro (6.9") 1290 Γ— 2796 19.5:9 6.9" Display screenshots
iPhone 15 (6.5") 1284 Γ— 2778 19.5:9 6.5" Display screenshots

πŸ”§ Development

Scripts

  • npm start - Run the application
  • npm run dev - Development mode with DevTools
  • npm run build:mac - Build for macOS distribution
  • npm run dist - Create distribution package

Project Structure

src/
β”œβ”€β”€ main.js          # Electron main process
β”œβ”€β”€ index.html       # Application UI
β”œβ”€β”€ styles.css       # Modern Apple-inspired styles
β”œβ”€β”€ app.js           # Main application logic
β”œβ”€β”€ templates.js     # Screenshot templates
β”œβ”€β”€ device-mockup.js # iPhone frame overlays
β”œβ”€β”€ export-utils.js  # Batch export functionality
β”œβ”€β”€ tutorial.js      # First-time user tutorial
└── demo.js          # Demo content loader

πŸ’‘ Usage Tips

  1. Start with Templates: Use the template buttons for quick professional results
  2. Drag & Drop Images: Simply drag your app screenshots into the canvas
  3. Use Device Frames: Add iPhone frames to make screenshots more appealing
  4. Batch Export: Export all templates at once for complete App Store sets
  5. Brand Colors: Use the custom color picker to match your app's branding

🎨 Design Philosophy

This app follows Apple's Human Interface Guidelines:

  • Clean, minimal interface that doesn't distract from your content
  • Native macOS feel with proper window chrome and behaviors
  • Professional typography using SF Pro Display
  • Consistent spacing and visual hierarchy
  • Intuitive interactions that feel natural to Mac users

πŸ” Technical Details

  • Framework: Electron 28 with native macOS integration
  • Canvas: Fabric.js for powerful object manipulation
  • File Handling: Native file dialogs and drag & drop
  • Performance: Optimized for large canvas sizes and complex layouts
  • Memory: Efficient image handling and garbage collection

πŸ“‹ System Requirements

  • macOS 10.14 or later
  • Node.js 16 or later
  • 4GB RAM minimum (8GB recommended)
  • 500MB disk space
  • Retina display recommended for best experience

🀝 Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and test thoroughly
  4. Commit with descriptive messages: git commit -m 'Add amazing feature'
  5. Push to your branch: git push origin feature/amazing-feature
  6. Submit a pull request

Development Guidelines

  • Follow Apple's Human Interface Guidelines
  • Test on multiple screen sizes
  • Ensure accessibility compliance
  • Write clear, documented code
  • Test export functionality thoroughly

πŸ”§ Troubleshooting

Electron Won't Start

If you're having trouble starting the Electron app:

  1. Test with Debug Mode:

    ./build.sh --debug
  2. Try Standalone Version: Open standalone-test.html in your browser to test core functionality:

    open standalone-test.html
  3. Manual Dependency Check:

    # Clean install
    rm -rf node_modules package-lock.json
    npm install
    
    # Test Electron directly
    ./node_modules/.bin/electron --version
    ./node_modules/.bin/electron . --no-sandbox
  4. macOS Security Issues: If macOS blocks the app:

    # Allow Electron to run
    xattr -cr node_modules/electron/dist/Electron.app

Canvas Issues

If objects aren't visible on the canvas:

  1. Use Debug Test: Click the "Run Debug Test" button in the app
  2. Check Browser Console: Look for any JavaScript errors
  3. Try Different Templates: Some templates might work better than others

Export Problems

If image export isn't working:

  1. Browser Version: Use the standalone version for browser-based export
  2. File Permissions: Check that the app has write permissions
  3. Disk Space: Ensure sufficient disk space for exported images

Performance Issues

For better performance:

  1. Reduce Image Sizes: Use smaller images when possible
  2. Close Other Apps: Free up system memory
  3. Use Chrome/Safari: Some browsers handle canvas better than others

πŸ‘¨β€πŸ’» Who is behind this project?

Pierre-Henry Soria

Pierre-Henry Soria. A super passionate engineer who loves automating content creation efficiently! πŸš€ Enthusiast for YouTube, AI, learning, and writing of course! 😊 Find me at pH7.me πŸ’«

Are you enjoying this project? If so, you could offer me a coffee (spoiler alert, I love extra hot oat flat white πŸ˜‹)

@phenrysay YouTube Tech Videos pH-7 BlueSky

πŸ“„ License

MIT License - see LICENSE file for details.

πŸ™ Acknowledgments

  • Apple for the design inspiration and SF Pro Display font
  • Fabric.js for the powerful canvas library
  • Electron for making cross-platform desktop apps possible
  • The iOS developer community for feedback and feature requests

Made with ❀️ for the iOS developer community

Perfect App Store screenshots, every time. πŸ“±βœ¨

About

A modern Electron application for creating beautiful Apple App Store preview screenshots with the exact dimensions required for App Store listings

Topics

Resources

License

Stars

Watchers

Forks