A modern, cross-platform ASCII art generator desktop application built with Electron and Next.js. Convert images to beautiful ASCII art with advanced customization options.
- Cross-platform: Windows and Linux support
- Real-time preview: See changes instantly as you adjust settings
- Advanced customization: Brightness, contrast, blur, zoom, dithering, and more
- Multiple ASCII charsets: Detailed, simple, and custom character sets
- Edge detection: Various edge detection algorithms
- Export options: Copy to clipboard or download as PNG
- Dark/Light theme: Automatic theme switching
- Drag & Drop: Easy image upload with drag and drop support
- Next.js 15.2.4 - React framework with static export
- React 18.2.0 - UI library with hooks
- TypeScript 5.0 - Type-safe JavaScript
- Tailwind CSS 3.4.17 - Utility-first CSS framework
- Radix UI - Accessible component primitives
- Framer Motion - Animation library
- Lucide React - Icon library
- Electron 36.4.0 - Cross-platform desktop app framework
- Electron Builder - Packaging and distribution
- React Hook Form - Form handling
- Zod - Schema validation
- Class Variance Authority - Component variant management
- Tailwind Merge - Utility class merging
- Sonner - Toast notifications
Experience ASCII-GEN in your browser: https://asciigen.vercel.app/
Quick Start - No Installation Required!
- Download: Get the portable executable from GitHub Releases
- Run: Double-click
ASCII-Gen-Portable.exe
- Enjoy: Start creating ASCII art immediately!
System Requirements:
- Windows 10/11 (x64)
- No additional dependencies required
- Portable - runs from any location
# Clone the repository
git clone <your-repo-url>
cd ascii-generator
# Install dependencies
npm install
# or
pnpm install
# Start development server
npm run dev
# Build for Windows (Portable)
npm run package:win
# Build for Linux (AppImage & DEB)
npm run package:linux
- Upload Image: Drag and drop an image or click to browse
- Adjust Settings: Use the sliders and options to customize your ASCII art
- Preview: See real-time changes in the preview area
- Export: Copy to clipboard or download as PNG
- ASCII Width: Control the width of the output
- Brightness: Adjust image brightness
- Contrast: Modify image contrast
- Blur: Apply Gaussian blur
- Zoom: Scale the image
- Dithering: Enable/disable dithering with multiple algorithms
- Invert: Invert the image colors
- Character Set: Choose from detailed, simple, or custom characters
- Edge Detection: Apply various edge detection methods
ascii-generator/
βββ app/ # Next.js app directory
β βββ globals.css # Global styles
β βββ layout.tsx # Root layout
β βββ page.tsx # Main ASCII generator component
βββ components/ # Reusable UI components
β βββ ui/ # Radix UI components
βββ hooks/ # Custom React hooks
βββ lib/ # Utility functions
βββ assets/ # App icons and resources
βββ main.js # Electron main process
βββ package.json # Dependencies and scripts
npm run dev
- Start development server with Electronnpm run dev:web
- Start Next.js development server onlynpm run build:web
- Build Next.js applicationnpm run package:win
- Package for Windowsnpm run package:linux
- Package for Linuxnpm run clean
- Clean build artifacts
The app uses a comprehensive design system with:
- Shadcn/ui components - Pre-built, accessible components
- CSS Variables - Theme-aware styling
- Tailwind CSS - Utility-first styling
- Framer Motion - Smooth animations
- β Windows x64 (Portable executable)
- π Linux (Coming soon)
- π macOS (Can be added with electron-builder)
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.
Saganaki22 - GitHub Profile
β Star this repository if you find it useful!