QuickEdit is an AI-powered online image and video editor built using the Cloudinary AI API. It offers robust features for both images and videos, with user-friendly authentication and a tiered credit system. Enhance your media editing experience with cutting-edge AI tools!
- Demo
- Screenshots
- Features
- Technologies Used
- Packages Used
- Environment Variables
- Getting Started
- Folder Structure
- Running the Application
- Author
- Documentation
Click here! to view the live deployment.
- Background Removal: Remove backgrounds from images seamlessly.
- AI Object Removal: Delete unwanted objects from images intelligently.
- AI Background Replace: Replace backgrounds with AI-generated alternatives.
- Generative Image Fill: Fill image areas with AI-generated content.
- AI Object Extract: Extract objects from images with precision.
- Export in Multiple Sizes: Save edited images in various resolutions.
- AI Video Transcription: Automatically transcribe video content.
- Smart Video Crop: Intelligently crop videos to desired dimensions.
- Export in Multiple Sizes: Save edited videos in various resolutions.
- Authentication: Secure user authentication with Google using Auth.js.
- Credits System:
- Free Tier: 20 credits available for basic usage.
- Premium Tier: Unlimited credits for advanced editing needs.
- Responsive Design: Optimized for all devices, providing a seamless experience across desktops, tablets, and smartphones.
- Next.js: Framework for server-side rendering and API routes.
- TailwindCSS: Utility-first CSS framework for styling.
- Cloudinary AI API: Advanced image and video processing capabilities.
- Prisma: ORM for database management.
- MongoDB: NoSQL database for scalable data storage.
- Framer Motion: For creating smooth animations.
- Auth.js: OAuth integration for user authentication with Google.
- Zustand: Lightweight state management for React applications.
- UI/UX:
@radix-ui/react-checkbox,@radix-ui/react-dialog,@radix-ui/react-tooltip,framer-motion,lucide-react - Forms:
react-hook-form - Database:
@prisma/client,prisma - Cloudinary:
cloudinary - State Management:
zustand - Miscellaneous:
clsx,sonner,react-dropzone,tailwind-merge,tailwindcss-animate,zod
Create a .env file in the root of your project and add the following environment variables:
CLOUDINARY_NAME= # Cloudinary account name
CLOUDINARY_API_SECRET= # Cloudinary API secret key
CLOUDINARY_API_KEY= # Cloudinary API key
CLOUDINARY_URL= # Cloudinary base URL
CLOUDINARY_UPLOAD_PRESET= # Cloudinary upload preset
AUTH_GOOGLE_ID= # Google OAuth client ID
AUTH_GOOGLE_SECRET= # Google OAuth client secret
AUTH_SECRET= # Secret key for encrypting and securing sessions
AUTH_URL= # Base URL for Auth.js
NEXTAUTH_URL= # Base URL for NextAuth.js redirects
DATABASE_URL= # Connection string for the databaseEnsure that all required values are filled with the proper credentials.
To get started with the project, follow these steps:
-
Clone the repository:
git clone https://github.com/brunoDev100/Edit.git cd quickedit -
Install the necessary dependencies:
npm install
-
Set up environment variables by creating a
.envfile based on the Environment Variables section. -
Run the development server:
npm run dev
-
Open http://localhost:3000 to view it in the browser.
quickedit/
├── node_modules/
├── prisma/
├── public/
├── server/
├── src/
│ ├── app/
│ ├── components/
│ ├── lib/
├── .env
├── package.json
├── tailwind.config.js
└── README.mdprisma/: Prisma schema and migration files.public/: Static files (images, icons).server/: Backend logic, including server-side functions and API utilities.src/app/: Application pages and API routes.src/components/: Reusable React components.src/lib/: Global utility functions and configurations.
- Development mode:
npm run dev - Production build:
npm run build - Start production server:
npm start - Lint codebase:
npm run lint - Fix linting and import structure:
npm run lint-fix
For more detailed documentation, please refer to the official docs of the tools and libraries used in this project:


