/shotify.io

AI Image Editor

Primary LanguageTypeScript

  1. πŸ€– Introduction
  2. βš™οΈ Tech Stack
  3. πŸ”‹ Features
  4. 🀸 Quick Start
  5. πŸ•ΈοΈ Snippets
  6. πŸ”— Links
  7. πŸš€ More

Build an AI image SaaS platform that excels in image processing capabilities, integrates a secure payment infrastructure, offers advanced image search functionalities, and supports multiple AI features, including image restoration, recoloring, object removal, generative filling, and background removal. This project can be a guide for your next AI image tool and a boost to your portfolio.

If you're getting started and need assistance or face any bugs, join our active Discord community with over 27k+ members. It's a place where people help each other out.

  • Next.js
  • TypeScript
  • MongoDB
  • Clerk
  • Cloudinary
  • Stripe
  • Shadcn
  • TailwindCSS

πŸ‘‰ Authentication and Authorization: Secure user access with registration, login, and route protection.

πŸ‘‰ Community Image Showcase: Explore user transformations with easy navigation using pagination

πŸ‘‰ Advanced Image Search: Find images by content or objects present inside the image quickly and accurately

πŸ‘‰ Image Restoration: Revive old or damaged images effortlessly

πŸ‘‰ Image Recoloring: Customize images by replacing objects with desired colors easily

πŸ‘‰ Image Generative Fill: Fill in missing areas of images seamlessly

πŸ‘‰ Object Removal: Clean up images by removing unwanted objects with precision

πŸ‘‰ Background Removal: Extract objects from backgrounds with ease

πŸ‘‰ Download Transformed Images: Save and share AI-transformed images conveniently

πŸ‘‰ Transformed Image Details: View details of transformations for each image

πŸ‘‰ Transformation Management: Control over deletion and updates of transformations

πŸ‘‰ Credits System: Earn or purchase credits for image transformations

πŸ‘‰ Profile Page: Access transformed images and credit information personally

πŸ‘‰ Credits Purchase: Securely buy credits via Stripe for uninterrupted use

πŸ‘‰ Responsive UI/UX: A seamless experience across devices with a user-friendly interface

and many more, including code architecture and reusability

Follow these steps to set up the project locally on your machine.

Prerequisites

Make sure you have the following installed on your machine:

Installation

Install the project dependencies using npm:

npm run dev

Set Up Environment Variables

Create a new file named .env.local in the root of your project and add the following content:

#NEXT
NEXT_PUBLIC_SERVER_URL=

#MONGODB
MONGODB_URL=

#CLERK
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
WEBHOOK_SECRET=

NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/

#CLOUDINARY
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=

#STRIPE
STRIPE_SECRET_KEY=
STRIPE_WEBHOOK_SECRET=
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=

Replace the placeholder values with your actual respective account credentials. You can obtain these credentials by signing up on the Clerk, MongoDB, Cloudinary and Stripe

Running the Project

npm run dev

Open http://localhost:3000 in your browser to view the project.

shotify.io