Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 

Repository files navigation

🧠 ClearShot — AI Image Enhancer

ClearShot is a full-stack web app that helps users enhance or slightly deblur images using AI-powered sharpening via the Cloudinary API. It’s built with React, Bootstrap, Node.js, and Express.

🚀 Features

Upload a blurred or low-quality image

Automatically enhance sharpness and quality via Cloudinary transformations

Preview Before and After images

Download or view the enhanced image in a new tab

Simple, responsive UI built with React and Bootstrap

Project Screenshot

Screenshot 2025-10-27 122355 Screenshot 2025-10-27 122424 Screenshot 2025-10-27 122444

🏗️ Project Structure clearshot/ ├── backend/ │ ├── server.js │ ├── .env │ ├── package.json │ └── ... └── frontend/ ├── src/ │ ├── components/ │ │ └── EnhanceForm.js │ ├── App.js │ ├── index.js │ └── App.css ├── package.json └── public/

⚙️ Tech Stack

Frontend:

React

Bootstrap / React-Bootstrap

Axios

Backend:

Node.js

Express.js

Multer (for file upload)

Cloudinary SDK

dotenv (for environment variables)

CORS

🔧 Setup Instructions 1️⃣ Clone the Repository git clone https://github.com/yourusername/clearshot.git cd clearshot

2️⃣ Backend Setup cd backend npm install

Create a .env file inside the backend folder:

PORT=5000 CLOUDINARY_CLOUD_NAME=your_cloud_name CLOUDINARY_API_KEY=your_api_key CLOUDINARY_API_SECRET=your_api_secret

Start the backend server:

npm run dev

Server runs on: http://localhost:5000

3️⃣ Frontend Setup cd ../frontend npm install npm start

Frontend runs on: http://localhost:3000

🌩️ How It Works

User selects an image from their computer.

The frontend (React) sends the file to the backend using Axios.

The backend uploads it to Cloudinary, applying a sharpen and auto-quality effect.

The enhanced image URL is sent back to the frontend.

The frontend displays the before & after images for comparison.

📁 Environment Variables Variable Description PORT Backend server port (default 5000) CLOUDINARY_CLOUD_NAME Found in Cloudinary Dashboard CLOUDINARY_API_KEY Found in Cloudinary Dashboard CLOUDINARY_API_SECRET Found in Cloudinary Dashboard 🧠 Future Improvements

Add stronger AI models (e.g., ESRGAN or Real-ESRGAN)

Implement face restoration

Add user authentication

Allow batch uploads

Option to choose “Enhancement strength”

🤝 Contributing

Pull requests are welcome. For major changes, open an issue first to discuss what you’d like to change.

🛡️ License

This project is licensed under the MIT License — feel free to use and modify it.

👤 Author

Melkzedek Kitalia ICT Support Professional | Full-Stack Developer in Training 📧 Contact:melkywafula29@gmail.com ] 🌍 Location: Kenya

About

Flow: user uploads image → frontend sends to backend → backend uploads to Cloudinary with a sharpening/enhancement transformation → backend returns enhanced image URL → frontend shows result.

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages