Go to file
鄭沛軒 937f6994eb feat: restructure API specifications into modular architecture
Major refactoring of API documentation for better maintainability:

## New Modular Structure
- Split 2400+ line monolithic API spec into 10 focused modules
- Created centralized navigation at docs/04_technical/api/README.md
- Each module now 200-400 lines for easier maintenance

## Completed API Modules (7/10)
-  Authentication & Authorization API (JWT, OAuth, permissions)
-  User Management API (profiles, stats, achievements)
-  Dialogue Practice API (scenarios, AI analysis, assistance)
-  Subscription System API (in-app purchases, permissions)
-  Daily Missions API (tasks, progress, rewards)
-  Error Handling (comprehensive error codes)
-  Common Standards (RESTful principles, formats)

## Updated Specifications
- Third-party integration spec with iOS/Android in-app purchases
- API completion plan with 3-phase development strategy
- Organized processed requirements in 已處理/ folder

## Technical Improvements
- 35+ API endpoints fully documented with examples
- 11 error categories with handling guidelines
- Unified response formats and security standards
- Team-friendly parallel development structure

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 13:29:26 +08:00
.claude feat: restructure API specifications into modular architecture 2025-09-07 13:29:26 +08:00
.github feat: add GitHub Actions CI/CD pipeline and PR templates 2025-09-05 21:51:47 +08:00
docs feat: restructure API specifications into modular architecture 2025-09-07 13:29:26 +08:00
.gitignore docs: add Chinese documentation guide and update structure 2025-09-05 22:16:48 +08:00
README.md feat: initial project setup with comprehensive documentation 2025-09-05 21:45:07 +08:00

README.md

Drama Ling

AI-powered language learning dialogue practice application with immersive scenario-based conversations.

📱 Project Overview

Drama Ling combines AI analysis with gamified learning mechanics to help users improve their language communication skills through realistic dialogue scenarios.

Key Features

  • 🎭 Scenario-based Dialogues: Practice real-life conversations in various contexts
  • 🤖 AI Analysis: Get instant feedback on grammar, semantics, and fluency
  • 🎮 Gamification: Rankings, achievements, and progress tracking
  • 📚 Smart Vocabulary Review: Spaced repetition algorithm for optimal learning
  • 💬 Interactive Practice: Voice and text input with real-time responses

🛠 Tech Stack

Frontend (Mobile)

  • Framework: Flutter 3.16+
  • Language: Dart 3.0+
  • State Management: Riverpod
  • Navigation: Go Router
  • Local Storage: Hive / Isar
  • Networking: Dio + Retrofit

Backend (API)

  • Framework: .NET 8 Web API
  • Language: C# 12
  • ORM: Entity Framework Core
  • Database: PostgreSQL 15+
  • Cache: Redis 7+
  • Authentication: JWT + ASP.NET Core Identity

Infrastructure

  • Cloud: AWS (ECS, RDS, S3, CloudFront)
  • CI/CD: GitHub Actions
  • Monitoring: Sentry, DataDog
  • Analytics: Custom analytics pipeline

🏗 Project Structure

dramaling-app/
├── docs/                    # Project documentation
│   ├── design/             # Design specifications
│   ├── technical/          # Technical documentation  
│   └── development/        # Development guides
├── mobile/                 # Flutter mobile app
│   ├── lib/
│   │   ├── features/       # Feature modules
│   │   ├── shared/         # Shared components
│   │   └── core/           # Core utilities
├── backend/                # .NET Core API
│   ├── DramaLing.Api/      # Web API project
│   ├── DramaLing.Core/     # Business logic
│   └── DramaLing.Infrastructure/ # Data access
├── infrastructure/         # Infrastructure as Code
└── scripts/               # Development scripts

🚀 Quick Start

Prerequisites

  • Flutter 3.16+
  • Dart 3.0+
  • .NET 8 SDK
  • PostgreSQL 15+
  • Redis 7+

Development Setup

  1. Clone the repository

    git clone https://github.com/your-username/dramaling-app.git
    cd dramaling-app
    
  2. Backend Setup

    cd backend
    dotnet restore
    dotnet ef database update
    dotnet run --project DramaLing.Api
    
  3. Mobile Setup

    cd mobile
    flutter pub get
    flutter pub run build_runner build
    flutter run
    
  4. Environment Configuration

    cp .env.example .env
    # Edit .env with your configuration
    

📚 Documentation

🔄 Development Workflow

  1. Create feature branch from develop
  2. Make changes following coding standards
  3. Write tests for new functionality
  4. Create Pull Request with description
  5. Code review and approval
  6. Merge to develop branch

🧪 Testing

# Backend tests
cd backend
dotnet test

# Mobile tests  
cd mobile
flutter test
flutter integration_test

📦 Deployment

Staging

Production

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please read CONTRIBUTING.md for details on our code of conduct and development process.

📄 License

This project is proprietary software. All rights reserved.

🙋‍♂️ Support


Built with ❤️ by the Drama Ling Team