feat: initial commit of AI Comic Generator

This commit is contained in:
p
2026-01-17 15:26:14 +08:00
commit 06d76e0e69
278 changed files with 8612 additions and 0 deletions
+148
View File
@@ -0,0 +1,148 @@
# AI Comic Generator
[English](./README.md) | [中文](./README_CN.md)
一个基于 AI 的全流程漫画创作辅助工具,集成了故事生成、分镜拆解、角色设定、一致性控制和批量绘图功能。
![Project Status](https://img.shields.io/badge/Status-Active-success)
![Python](https://img.shields.io/badge/Backend-FastAPI-blue)
![Vue](https://img.shields.io/badge/Frontend-Vue3-green)
## ✨ 核心功能
* **项目管理**: 支持多项目管理,每个项目独立保存故事、角色和分镜数据。
* **智能编剧**: 输入简单的故事点子,AI 自动扩充情节并拆分为专业的漫画分镜脚本 (JSON 格式)。
* **角色工坊**:
* 自动从故事中提取角色并生成详细的人物设定(三视图)。
* **角色一致性**: 绘图时自动引用角色设定图作为参考(Image-to-Image)。
* **合并与去重**: 支持手动合并重复生成的角色(如“马管家”和“马老”)。
* **分镜编辑器**:
* 可视化编辑每一格分镜的提示词、角色和动作。
* 支持单格重绘、批量生成。
* **上下文感知**: 生成分镜时自动读取前序分镜和角色图,保持画风和剧情连贯性。
* **风格控制**:
* 全局风格配置(如“赛博朋克”、“水墨风”),强制 AI 遵循设定。
* 支持自定义对话框、边框样式。
* **后台任务**: 耗时的批量生图任务在后台运行,支持进度实时查看。
## 🛠️ 技术栈
### Backend (后端)
* **Framework**: FastAPI
* **Database**: SQLite + SQLModel
* **AI Service**: Google Gemini (目前仅支持 Google 最新模型)
* **文本模型**: `gemini-3-flash-preview`
* **图像模型**: `gemini-3-pro-image-preview`
* **Task Queue**: FastAPI BackgroundTasks
### Frontend (前端)
* **Framework**: Vue 3 + Vite
* **UI Library**: Element Plus
* **State Management**: Pinia
* **HTTP Client**: Axios
* **Package Manager**: pnpm
## 🚀 快速开始
### 前置要求
* Python 3.9+
* Node.js 16+
* pnpm
* Google Cloud API Key (需开通 Gemini API 权限)
### 1. 后端配置
进入 `backend` 目录:
```bash
cd backend
```
创建虚拟环境并安装依赖:
```bash
python -m venv .venv
# Windows
.\.venv\Scripts\activate
# Linux/Mac
source .venv/bin/activate
pip install -r requirements.txt
```
创建 `.env` 文件并填入 API Key
```ini
# backend/.env
GOOGLE_API_KEY="your_google_api_key_here"
```
启动后端服务:
```bash
# Windows (使用提供的脚本)
..\start_backend.bat
# 或者手动运行
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
```
### 2. 前端配置
进入 `frontend` 目录:
```bash
cd frontend
```
安装依赖:
```bash
pnpm install
```
启动前端服务:
```bash
# Windows (使用提供的脚本)
..\start_frontend.bat
# 或者手动运行
pnpm dev
```
访问浏览器:`http://localhost:5173`
## 📖 使用指南
1. **创建项目**: 在首页点击“新建项目”,输入漫画标题和简介。
2. **故事与配置**:
* 输入你的故事大纲。
* 设置全局风格(如“日系少年漫”)、画幅比例等。
* 点击“生成分镜配置”,AI 将生成角色表和分镜脚本。
3. **角色工坊**:
* 查看 AI 生成的角色设定。
* 点击“绘制”生成角色立绘。
* 如有重复角色,使用“合并角色”功能进行清理。
4. **分镜编辑**:
* 在分镜列表中检查每一格的描述。
* 点击“生成图片”或“一键生成所有”开始绘制漫画。
* 点击图片可查看大图,支持下载。
## 📁 目录结构
```
aImanhua/
├── backend/ # FastAPI 后端
│ ├── app/ # 应用代码
│ ├── static/ # 生成的图片和临时文件存储
│ └── ...
├── frontend/ # Vue3 Frontend
│ ├── src/ # 页面与组件
│ └── ...
└── ...
```
## 📝 License
MIT License