Imagify is a full-stack web application that empowers users to generate AI-driven images based on their textual prompts. Designed with scalability, security, and user-friendliness in mind, Imagify provides a seamless experience with features like a credit-based system, multiple subscription plans, and an elegant user interface.
- AI-Driven Image Generation: Powered by the Clipdrop API, users can generate high-quality images by simply providing descriptive prompts.
- Credit-Based System: Users receive a set number of credits based on their subscription plan (Basic, Advanced, Premium). Each credit corresponds to one image generation.
- Subscription Plans: Flexible plans allow users to purchase additional credits with a Stripe-integrated payment system (test mode).
- User Management: Includes login, registration, and logout functionality, with user data securely stored in MongoDB.
- Transaction Logging: All transactions, including subscription purchases, are stored and displayed in the user dashboard.
- Responsive UI: A modern and sleek interface that is fully responsive across all devices.
- Downloadable Images: Users can download their generated images directly from the platform.
- Node.js with Express.js: RESTful API for server-side operations.
- MongoDB: Database for user profiles, transactions, and image metadata.
- Clipdrop API: AI service for generating images.
- Stripe API: Payment processing in test mode.
- JWT Authentication: Secure user sessions.
- React.js: For building dynamic, responsive user interfaces.
- Redux: Manages application state efficiently.
- Tailwind CSS: Provides a modern design aesthetic.
- Sign Up/Login: Create an account or log in with your credentials.
- Select Plan: Choose from Basic, Advanced, or Premium subscription plans to receive credits.
- Generate Images: Enter a prompt and generate AI-driven images. Each generation deducts one credit.
- Manage Account: View credit balance, transaction history, and previously generated images in the dashboard.
- Download Images: Save generated images directly to your device.
- Clone the repository:
git clone https://github.com/Rishika-108/Imagify.git cd Imagify/backend - Install dependencies:
npm install
- Configure environment variables (
.envfile):MONGO_URI: MongoDB connection string.JWT_SECRET: Secret for token signing.STRIPE_SECRET_KEY: Stripe API key (test mode).CLIPDROP_API_KEY: API key for Clipdrop.
- Start the server:
npm start
- Navigate to the frontend directory:
cd Imagify/frontend - Install dependencies:
npm install
- Configure environment variables (
.envfile):REACT_APP_API_URL: URL of the backend server.
- Start the application:
npm start
- Frontend: Hosted on Render
- Backend: Deployed on Render with secure environment variable management.
- Database: MongoDB Atlas for scalability and reliability.
Contributions are welcome! Feel free to fork the repository and submit pull requests.
This project is licensed under the MIT License. See the LICENSE file for details.