An AI-powered Instagram post generator that creates stunning images and engaging captions with smart hashtag optimization.
- AI Image Generation: Creates Instagram-worthy images using Azure AI (Stable Diffusion 3.5 Ultra)
- Smart Caption Generation: Generates engaging captions using GPT-4
- AI-Powered Hashtag Optimizer:
- Real-time trend analysis with trending indicators
- Popularity and engagement metrics for each hashtag
- Category-based filtering (Lifestyle, Business, Creativity, Trending, Niche)
- Context-aware recommendations based on caption content
- Visual analytics dashboard showing potential reach
- Smart mix recommendations for optimal engagement
- SD 3.5 Prompt Optimizer: Enhances prompts for better image generation
- User Authentication: JWT-based auth with signup/login
- Post Management: Save and manage generated posts
- Download Options: Export images and captions separately
- Responsive Design: Beautiful UI with Tailwind CSS
- Freemium Model: 5 free posts, then premium upgrade option
- Instagram API Integration: Direct posting to Instagram (currently placeholder)
- Post Scheduling: Schedule posts for optimal times
- Analytics Dashboard: Track post performance
- Multi-account Support: Manage multiple Instagram accounts
- Premium Subscription: Payment integration for unlimited posts
- Image Editing: Basic editing tools for generated images
- Post Templates: Pre-designed templates for different content types
- Batch Generation: Generate multiple posts at once
- Content Calendar: Visual calendar for planning posts
- Team Collaboration: Share access with team members
- React 19.1.0 with TypeScript
- Tailwind CSS for styling
- React Scripts for build tooling
- Node.js with Express
- TypeScript
- PostgreSQL database
- JWT authentication
- Azure OpenAI API
- Azure AI Image API
- Node.js 16+ and npm
- PostgreSQL database
- Azure OpenAI account with API access
- Azure AI account for image generation
git clone https://github.com/yourusername/instaai-post-maker.git
cd instaai-post-maker# Create PostgreSQL database
createdb instaai
# Run schema
psql -d instaai -f database/schema.sqlcd server
cp .env.example .env
# Edit .env with your credentialsRequired environment variables:
# Azure OpenAI Configuration
AZURE_OPENAI_API_KEY=your-azure-openai-api-key-here
AZURE_OPENAI_ENDPOINT=https://your-resource-name.openai.azure.com/
AZURE_OPENAI_DEPLOYMENT_NAME=gpt-4
AZURE_OPENAI_API_VERSION=2024-12-01-preview
# Azure AI Image Generation Configuration
AZURE_AI_IMAGE_ENDPOINT=https://your-image-model.region.models.ai.azure.com/images/generations
AZURE_AI_IMAGE_API_KEY=your-azure-ai-image-api-key-here
# Database Configuration
DATABASE_URL=postgresql://username:password@localhost:5432/instaai
# JWT Configuration
JWT_SECRET=generate-a-strong-random-secret-key-here
# Server Configuration
PORT=3001
NODE_ENV=development# Install server dependencies
cd server
npm install
# Install client dependencies
cd ../client
npm install# Start the server (from server directory)
cd server
npm run dev
# Start the client (from client directory, in a new terminal)
cd client
npm startThe app will be available at:
- Frontend: http://localhost:3000
- Backend: http://localhost:3001
instaai-post-maker/
βββ client/ # React frontend
β βββ public/ # Static assets
β βββ src/
β β βββ components/ # React components
β β β βββ AuthModal.tsx
β β β βββ GenerationProgress.tsx
β β β βββ HashtagSuggestions.tsx # NEW: AI hashtag optimizer
β β β βββ Header.tsx
β β β βββ LandingPage.tsx
β β β βββ PostGenerator.tsx
β β β βββ PostPreview.tsx
β β βββ types.ts # TypeScript types
β β βββ App.tsx # Main app component
β βββ package.json
βββ server/ # Express backend
β βββ src/
β β βββ routes/ # API routes
β β βββ services/ # Business logic
β β βββ middleware/ # Express middleware
β β βββ utils/ # Utility functions
β βββ package.json
βββ database/ # Database schema
βββ schema.sql
POST /api/auth/register- Register new userPOST /api/auth/login- Login user
POST /api/generate-post- Generate new post with AIGET /api/posts- Get user's postsPOST /api/publish-post- Publish to Instagram (placeholder)POST /api/analyze-hashtags- Get AI-powered hashtag suggestions
- All API keys and secrets must be stored in
.envfiles .envfiles are gitignored and should never be committed- Use
.env.exampleas a template for required variables - Rotate any exposed credentials immediately
- Instagram API: Direct posting not implemented (requires Instagram Business API setup)
- Payment Processing: No payment integration for premium upgrades
- Rate Limiting: No rate limiting on API endpoints yet
- Image Storage: Images are base64 encoded, not stored in cloud storage
- Session Management: No refresh token implementation
- Email Verification: User registration doesn't require email verification
- Password Reset: No password reset functionality
- Error Recovery: Limited error handling in some edge cases
- Cloud storage integration (AWS S3/Azure Blob)
- Redis caching for improved performance
- WebSocket support for real-time updates
- Mobile app development
- AI content moderation
- Advanced analytics with charts
- Export to other social platforms
- A/B testing for captions
- Custom brand voice training
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Write TypeScript with proper types
- Follow existing code style
- Add tests for new features
- Update documentation
- Never commit sensitive data
This project is licensed under the MIT License - see the LICENSE file for details.
- Azure OpenAI for GPT-4 API
- Azure AI for Stable Diffusion image generation
- React and TypeScript communities
- All contributors
For issues and questions:
- Open an issue on GitHub
- Check existing issues before creating new ones
- Provide detailed information for bug reports
Made with β€οΈ by the InstaAI team