Project Setup
Complete guide to setting up your development environment for MiyoList
📋 Prerequisites
Required Software
- Flutter SDK - Version 3.24.0 or higher
- Dart SDK - Version 3.5.0 or higher
- Git - For version control
- VS Code or Android Studio - Recommended IDEs
Platform-Specific Requirements
Windows Development:
- Visual Studio 2022 (with C++ desktop development)
- Windows 10 SDK
Android Development:
- Android Studio
- Android SDK (API level 21+)
- Java Development Kit (JDK) 11+
macOS/iOS Development:
- Xcode 15+
- CocoaPods
- macOS 12.0 or higher
⚙️ Installation Steps
1. Clone the Repository
git clone https://github.com/Baconana-chan/miyolist.git
cd miyolist 2. Install Flutter Dependencies
flutter pub get 3. Set Up Environment Variables
Create a .env file in the root directory:
# AniList API Configuration
ANILIST_CLIENT_ID=your_client_id_here
ANILIST_CLIENT_SECRET=your_client_secret_here
ANILIST_REDIRECT_URI=https://miyo.my/auth/callback
# Supabase Configuration (Optional - for cloud sync)
SUPABASE_URL=your_supabase_url_here
SUPABASE_ANON_KEY=your_supabase_anon_key_here 4. Configure AniList OAuth
- Go to AniList Developer Settings
- Create a new API Client
- Add redirect URI:
https://miyo.my/auth/callback - Copy Client ID and Client Secret to your
.envfile
5. Run the Application
For Windows:
flutter run -d windows For Android (connect device or start emulator):
flutter run -d android 📁 Project Structure
miyolist/
├── lib/
│ ├── core/ # Core functionality
│ │ ├── constants/ # App constants
│ │ ├── services/ # Core services (auth, storage, etc.)
│ │ └── utils/ # Utility functions
│ ├── features/ # Feature modules
│ │ ├── activity/ # Activity feed
│ │ ├── anime/ # Anime management
│ │ ├── auth/ # Authentication
│ │ ├── manga/ # Manga management
│ │ ├── profile/ # User profile
│ │ ├── search/ # Global search
│ │ └── statistics/ # Statistics & charts
│ ├── models/ # Data models
│ ├── widgets/ # Shared widgets
│ └── main.dart # Entry point
├── assets/ # Images, fonts, etc.
├── android/ # Android-specific code
├── windows/ # Windows-specific code
├── ios/ # iOS-specific code (future)
├── macos/ # macOS-specific code (future)
├── test/ # Unit tests
└── pubspec.yaml # Dependencies 🔧 Build Configuration
Debug Build
flutter build windows --debug
flutter build apk --debug Release Build
flutter build windows --release
flutter build apk --release Build Configuration Files
pubspec.yaml- Dependencies and assetsanalysis_options.yaml- Linter rulesandroid/app/build.gradle- Android build configwindows/CMakeLists.txt- Windows build config
🐛 Common Issues & Solutions
Flutter Doctor Issues
Run flutter doctor -v to diagnose problems
Fix missing dependencies based on the output
Dependency Conflicts
Try cleaning the project:
flutter clean
flutter pub get Build Failures
Check that all environment variables are set correctly
Ensure your Flutter version matches the required version
OAuth Not Working
Verify redirect URI matches exactly in AniList settings
Check that Client ID and Secret are correct in .env
🚀 Next Steps
✅ Project is set up and running
👉 Read the Architecture Guide to understand the codebase
👉 Check out Contributing Guidelines before making changes
👉 Explore API Integration to work with AniList API