Initial commit of the Flutter Cursor Generator project, including the core generator tool, project brief schema, example project setup, and CI configuration. Added README documentation outlining repository structure, quick start guide, and detailed descriptions of features and architecture pillars.

This commit is contained in:
2026-05-12 22:29:55 +05:30
commit 6dfb9a8aa5
72 changed files with 4542 additions and 0 deletions
@@ -0,0 +1,100 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://github.com/company/flutter-cursor-templates/brief-schema.json",
"title": "project-brief.yaml",
"description": "Schema for Flutter cursor_gen project brief — provides IDE autocomplete",
"type": "object",
"properties": {
"cursor_templates_version": {
"type": "string",
"description": "Pillar 1: Pin to template version for reproducibility",
"examples": ["1.0.0"]
},
"project": {
"type": "object",
"required": ["name", "package"],
"properties": {
"name": { "type": "string", "description": "App display name" },
"package": { "type": "string", "description": "Dart package ID (e.g. com.company.appname)" },
"description": { "type": "string" },
"scale": { "type": "string", "enum": ["small", "medium", "large"] }
}
},
"stack": {
"type": "object",
"properties": {
"state_management": {
"type": "string",
"enum": ["bloc", "riverpod", "getx", "hooks_riverpod"],
"description": "Primary state management solution"
},
"routing": {
"type": "string",
"enum": ["gorouter", "getx_nav", "auto_route"]
},
"architecture": {
"type": "string",
"enum": ["clean", "feature_first", "mvvm", "mvc", "layered"]
},
"backend": {
"type": "string",
"description": "Single backend or combined with +: firebase, supabase, rest, firebase+rest",
"examples": ["firebase", "supabase", "rest", "firebase+rest", "supabase+rest"]
},
"auth": {
"type": "string",
"enum": ["firebase_auth", "supabase_auth", "jwt_rest", "oauth2", "none"]
},
"platforms": {
"type": "array",
"items": { "type": "string", "enum": ["ios", "android", "web", "desktop"] },
"description": "Pillar 4: Target platforms — affects generated rules"
},
"codegen": {
"type": "array",
"items": { "type": "string", "enum": ["freezed", "json_serializable", "injectable", "retrofit"] },
"description": "Pillar 4: Code generation tools — affects generated rules"
}
}
},
"environments": {
"type": "object",
"properties": {
"flavors": {
"type": "array",
"items": { "type": "string" },
"examples": [["dev", "staging", "prod"]]
},
"cicd": {
"type": "string",
"enum": ["codemagic", "github_actions", "fastlane", "none"]
}
}
},
"testing": {
"type": "object",
"properties": {
"depth": {
"type": "string",
"enum": ["unit_widget", "integration", "e2e", "full"]
},
"e2e_tool": {
"type": "string",
"enum": ["patrol", "maestro"]
}
}
},
"localization": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"locales": { "type": "array", "items": { "type": "string" } }
}
},
"telemetry_opt_in": {
"type": "boolean",
"description": "Pillar 6: Opt-in local telemetry for rule trigger analytics",
"default": false
}
}
}