Skip to content

Real-time ASCII art camera that transforms your webcam feed into glowing terminal aesthetics. Built with React + Canvas API.

License

Notifications You must be signed in to change notification settings

pshycodr/phosphor-cam

Repository files navigation

Project Logo

Phosphor Cam

Transform your camera feed into real-time ASCII art

GitHub stars GitHub forks GitHub watchers

License: MIT TypeScript React Vite

GitHub issues GitHub pull requests Last commit


✨ Features

  • Real-Time Rendering – Live ASCII conversion with performance optimization (60+ FPS)
  • High-Quality Capture – Export 4K resolution ASCII art images
  • Customizable Settings
    • 5 character sets (standard, simple, blocks, matrix, edges)
    • Adjustable font size/resolution (6-30px)
    • Contrast and brightness controls
    • Color mode and invert options
  • Camera Controls
    • Front/back camera switching
    • High-quality snapshot export
    • ASCII text copy to clipboard
    • Video recording capability
  • Performance Monitoring – Real-time FPS and render time display

📸 Demo

ASCII Camera Demo 1 ASCII Camera Demo 2

🚀 Quick Start

# Clone the repository
git clone https://github.com/pshycodr/phosphor-cam.git
cd phosphor-cam

# Install dependencies
npm install

# Start development server
npm run dev

Visit http://localhost:5173 to see the app in action!

📖 Usage

  1. Grant Camera Access – Allow browser to access your camera when prompted
  2. Adjust Settings – Click the settings icon (⚙️) to customize the ASCII effect
  3. Capture Images – Press the shutter button for high-quality exports
  4. Switch Cameras – Use the flip button (🔄) to toggle between front/back cameras
  5. Record Video (COMMING SOON) – Click the record button (📹) to start/stop video capture

🛠️ Tech Stack

  • React 18 – UI framework
  • TypeScript – Type safety
  • Vite – Build tool
  • Canvas API – Real-time rendering
  • MediaStream API – Camera access
  • Tailwind CSS – Styling
  • Lucide React – Icons

🌐 Browser Support

Requires a modern browser with support for:

  • getUserMedia API
  • Canvas 2D rendering context
  • ES6+ JavaScript features

✅ Chrome 90+ | ✅ Firefox 88+ | ✅ Safari 14+ | ✅ Edge 90+

📝 License

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

🤝 Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines.

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

⭐ Show Your Support

If you found this project helpful, please consider giving it a star! It helps others discover the project.

Star this repo

📬 Contact

Have questions or suggestions? Open an issue or reach out!


Made with ❤️ using React and Canvas API

Report Bug · Request Feature

About

Real-time ASCII art camera that transforms your webcam feed into glowing terminal aesthetics. Built with React + Canvas API.

Resources

License

Contributing

Stars

Watchers

Forks