{"id":34866311,"url":"https://github.com/arrrrny/zuraffa","last_synced_at":"2026-04-25T10:04:34.220Z","repository":{"id":334298597,"uuid":"1140682615","full_name":"arrrrny/zuraffa","owner":"arrrrny","description":"🦒 Zuraffa AI first Flutter Clean Architecture Framework and CLI","archived":false,"fork":false,"pushed_at":"2026-04-05T19:23:33.000Z","size":7396,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-05T19:23:47.940Z","etag":null,"topics":["clean-architecture","cli","code-generator","flutter"],"latest_commit_sha":null,"homepage":"https://zuraffa.com","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arrrrny.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-01-23T16:04:40.000Z","updated_at":"2026-04-05T12:50:15.000Z","dependencies_parsed_at":"2026-02-07T11:03:37.170Z","dependency_job_id":null,"html_url":"https://github.com/arrrrny/zuraffa","commit_stats":null,"previous_names":["arrrrny/zuraffa"],"tags_count":63,"template":false,"template_full_name":null,"purl":"pkg:github/arrrrny/zuraffa","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arrrrny%2Fzuraffa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arrrrny%2Fzuraffa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arrrrny%2Fzuraffa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arrrrny%2Fzuraffa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arrrrny","download_url":"https://codeload.github.com/arrrrny/zuraffa/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arrrrny%2Fzuraffa/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31448219,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T15:22:31.103Z","status":"ssl_error","status_checked_at":"2026-04-05T15:22:00.205Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clean-architecture","cli","code-generator","flutter"],"created_at":"2025-12-25T22:30:13.209Z","updated_at":"2026-04-06T17:03:23.621Z","avatar_url":"https://github.com/arrrrny.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🦒 Zuraffa\n\n[![Pub Version](https://img.shields.io/pub/v/zuraffa)](https://pub.dev/packages/zuraffa)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n[![Documentation](https://img.shields.io/badge/docs-docusaurus-blue)](https://arrrrny.github.io/zuraffa/)\n\n**The AI-First Clean Architecture Framework for Flutter.**\n\nZuraffa is a comprehensive toolkit designed to streamline Flutter development by enforcing Clean Architecture principles, ensuring type safety, and integrating seamlessly with modern AI coding assistants via MCP.\n\n---\n\n## 🦄 Why Zuraffa?\n\n*   **🤖 AI-Native (MCP)**: The first Flutter framework with a built-in **Model Context Protocol** server. AI agents (Trae, Cursor, Windsurf) can understand, generate, and refactor your code with 100% precision.\n*   **🏗️ Clean Architecture by Default**: Strict separation of Domain, Data, and Presentation layers. No more spaghetti code.\n*   **🛡️ Type-Safe Everything**: Uses `Result\u003cT, AppFailure\u003e` for error handling. Stop catching exceptions; start matching results.\n*   **⚡ Zero Boilerplate**: The `zfa` CLI handles the heavy lifting—UseCases, Repositories, VPCs (View-Presenter-Controller), and Tests are generated in seconds.\n*   **🧩 Smart Caching \u0026 Sync**: Built-in patterns for offline-first apps with configurable cache policies and automatic sync.\n*   **🧪 Mock-Ready**: Instant mock data generation for rapid prototyping without a backend.\n\n---\n\n## 🤖 The AI Advantage (MCP)\n\nZuraffa exposes your project structure to AI agents through its **MCP Server**. This allows AI to:\n*   **Contextual Generation**: \"Add a 'PlaceOrder' usecase to the existing 'Cart' domain.\"\n*   **Smart Refactoring**: \"Rename this entity field and update all related layers.\"\n*   **Automated Diagnostics**: AI can run `zfa doctor` and fix architectural violations automatically.\n\nTo enable, just install Zuraffa. Compatible IDEs will detect the server automatically.\n\n---\n\n## 📦 Installation\n\nAdd Zuraffa to your `pubspec.yaml`:\n\n```yaml\ndependencies:\n  zuraffa: ^3.19.0\n\ndev_dependencies:\n  zuraffa: ^3.19.0\n  build_runner: ^2.4.0\n  zorphy_annotation: ^1.6.0 # Required for supercharged entities\n```\n\nActivate the CLI globally:\n\n```bash\ndart pub global activate zuraffa\n```\n\n---\n\n## ⚡ Quick Start\n\n### 1. Initialize\n```bash\nzfa init\n```\n\n### 2. Define an Entity\nZuraffa uses **Zorphy** for immutable, type-safe entities.\n```bash\nzfa entity create -n Product --field name:String --field price:double --field stock:int\n```\n\n### 3. Generate a Feature\nGenerate the full stack (Domain, Data, Presentation, Tests) in one go:\n```bash\n# Using Repository/DataSource (Default)\nzfa feature scaffold Product --methods=get,getList,create --mock --vpcs --state --test\n\n# Using Service/Provider (Alternative)\nzfa feature scaffold Product --methods=get,getList --use-service --mock --vpcs --state --test\n```\n\n### 4. Granular Control (Make)\nNeed just a specific part? Use `zfa make`:\n```bash\nzfa make Search usecase --domain=search --params=SearchRequest --returns=Listing\n```\n\n### 5. Build\n```bash\nzfa build\n```\n\n---\n\n## 🛠️ CLI Power Commands\n\n| Command | Description |\n| :--- | :--- |\n| `zfa feature` | High-level command to generate full feature slices. |\n| `zfa make` | Low-level command for granular generation (UseCases, Mocks, DI, etc.). |\n| `zfa entity` | Create and manage Zorphy entities with field validation. |\n| `zfa doctor` | Lints your architecture and suggests fixes. |\n| `zfa build` | Optimized wrapper for `build_runner`. |\n\n---\n\n## 🔄 Revert \u0026 Negation\n\n### Smart Revert\nAccidentally added a method or plugin? Use `--revert` to undo the change. Zuraffa's AST-aware reverter will remove only the specific code added, preserving your manual changes.\n```bash\nzfa make Product usecase --methods=watch --revert\n```\n\n### Negatable Flags\nEvery boolean flag has a `--no-` counterpart to explicitly disable features.\n```bash\nzfa feature Product --data --no-zorphy # Generate data layer but skip Zorphy\n```\n\n---\n\n## 📂 Project Layout\n\n```text\nlib/src/\n├── data/           # Models, DataSources, Repository Impls\n├── domain/         # Entities, Repository Interfaces, UseCases\n├── presentation/   # VPC (View, Presenter, Controller, State)\n└── di/             # Automated Dependency Injection (GetIt)\n```\n\n---\n\n## 🌐 Learn More\n\n*   **Documentation**: [zuraffa.dev](https://arrrrny.github.io/zuraffa/)\n*   **Example Project**: [Github Example](https://github.com/arrrrny/zuraffa/tree/master/example)\n*   **Discord/Community**: [Join us!](https://github.com/arrrrny/zuraffa/issues)\n\nMade with 🦒 and ⚡️ by [Arrrrny](https://github.com/arrrrny).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farrrrny%2Fzuraffa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farrrrny%2Fzuraffa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farrrrny%2Fzuraffa/lists"}