β¨ Create character cards from a single image with just a few clicks!
An incredibly simple and user-friendly open-source AI character card generator. Upload a character image, let AI automatically analyze and generate detailed character attributes, perfect for role-playing games, storytelling, and AI chatbots ( using character-card-spec-v2 ). Built with Next.js and modern web technologies.
π Super simple workflow: Upload Image β AI Analysis & Generation β Fine-tune β Export & Use
airole.net-demo-short.zip.mp4
- πΌοΈ AI Image Analysis - Upload character images and let AI generate character descriptions
- π€ AI-Powered Generation - Generate character attributes using OpenAI-compatible AI models
- π¬ AI Assistant Chat - Get suggestions and improvements for your character attributes
- π± Responsive Design - Works seamlessly on desktop and mobile devices
- π¨ Modern UI - Clean, intuitive interface with dark/light theme support
- π Character Book Support - Advanced character memory system
- π Version History - Track and manage character development
- π€ Multiple Export Formats - Export as JSON or PNG character cards
- βοΈ Cloud Storage - Optional Google Drive integration for character backup
- π― Tavern Card Compatible - Standard format for character cards
The easiest way to get started is to deploy directly to Vercel:
After deployment, you can configure the environment variables in your Vercel dashboard to enable additional features.
-
Clone the repository
git clone https://github.com/easychen/airole.git cd airole
-
Install dependencies
npm install # or yarn install # or pnpm install
-
Set up environment variables (optional)
cp .env.example .env.local
See Configuration for details.
-
Run the development server
npm run dev # or yarn dev # or pnpm dev
-
Open your browser Navigate to http://localhost:3000
All features work without configuration, but you can enhance functionality by setting up environment variables:
Create a .env.local
file in your project root:
# NextAuth.js (optional - required for Google features)
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your-nextauth-secret-here
# Google OAuth (optional - enables Google Drive integration)
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
To enable Google Drive integration:
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the Google Drive API
- Create OAuth 2.0 credentials
- Add your domain to authorized origins
- Add the callback URL:
https://yourdomain.com/api/auth/callback/google
The application supports OpenAI-compatible AI models. Users can configure their preferred models and API keys through the settings interface:
- Supported Models: Any model that follows OpenAI API specifications
- Popular Providers: OpenAI, Google AI Studio, Anthropic, SiliconFlow, DeepSeek, etc.
- Custom Endpoints: Configure custom API base URLs for different providers
βββ app/ # Next.js app directory
β βββ api/ # API routes
β βββ globals.css # Global styles
β βββ page.tsx # Main application page
βββ components/ # React components
β βββ ui/ # UI components
β βββ ... # Feature components
βββ lib/ # Utility functions
βββ public/ # Static assets
βββ styles/ # Additional styles
βββ types/ # TypeScript definitions
- Node.js 18+
- npm/yarn/pnpm
- Clone and install dependencies (see Quick Start)
- Configure environment variables (optional)
- Run
npm run dev
- Open http://localhost:3000
npm run build
npm run start
-
Upload Character Image (optional)
- Upload an image of your character
- AI will analyze and generate initial character attributes
-
Fill Character Details
- Edit generated or create new character information
- Use the tabbed interface for organized editing
-
Get AI Assistance
- Switch to the chat tab to get suggestions for character improvements
- Use adjustment presets for quick character refinements
- AI assistant helps you polish character attributes
-
Export Your Character
- Export as JSON for data interchange
- Export as PNG for character card sharing
-
Cloud Backup (if configured)
- Save characters to Google Drive
- Access your characters from any device
The application supports multiple themes:
- Light mode
- Dark mode
- System preference
Currently supported languages:
- English
- Chinese (Simplified)
Configurable OpenAI-compatible models for different purposes:
- Image analysis models
- Character generation models
- AI assistant models
- Local First: All data is stored locally by default
- Optional Cloud: Google Drive integration is completely optional
- No Tracking: We don't track user behavior or collect analytics
- Open Source: Full transparency - inspect the code yourself
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
Found a bug or have a feature request? Please open an issue.
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Next.js
- UI components from shadcn/ui
- Icons from Lucide
- Authentication via NextAuth.js
- Documentation: Check the User Guide
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with β€οΈ by the AIRole.net team