da64f769da
- Added optional MCP integration settings in project-brief.yaml, allowing for environment-based server configurations. - Introduced conventions for strict package imports to enhance code organization and maintainability. - Updated brief schema to validate new MCP properties and ensure correct usage. - Implemented MCP JSON builder to generate .cursor/mcp.json based on project brief settings. - Enhanced resolver to include MCP configuration in generated files when enabled. This update improves integration capabilities and enforces coding standards across the project.
92 lines
2.3 KiB
Dart
92 lines
2.3 KiB
Dart
// Shared ProjectBrief fixtures for golden tests and tool/refresh_goldens.dart
|
|
|
|
import '../src/models.dart';
|
|
|
|
final kBlocCleanFirebaseBrief = ProjectBrief(
|
|
projectName: 'TestApp',
|
|
packageId: 'com.test.testapp',
|
|
description: 'Test app for golden tests',
|
|
scale: 'medium',
|
|
stateManagement: 'bloc',
|
|
routing: 'gorouter',
|
|
architecture: 'clean',
|
|
backends: ['firebase'],
|
|
auth: 'firebase_auth',
|
|
platforms: ['ios', 'android'],
|
|
codegenTools: ['freezed'],
|
|
flavors: ['dev', 'prod'],
|
|
cicd: 'github_actions',
|
|
testingDepth: 'unit_widget',
|
|
e2eTool: 'patrol',
|
|
designSource: 'none',
|
|
figmaUrl: '',
|
|
apiDocsFormat: 'none',
|
|
apiDocsPath: '',
|
|
referenceRepos: [],
|
|
localPaths: [],
|
|
featureModules: ['auth', 'home', 'products'],
|
|
specialFeatures: [],
|
|
i18nEnabled: false,
|
|
locales: ['en'],
|
|
strictPackageImports: true,
|
|
);
|
|
|
|
final kRiverpodFfSupabaseBrief = ProjectBrief(
|
|
projectName: 'TaskFlow',
|
|
packageId: 'com.test.taskflow',
|
|
description: 'Task management app',
|
|
scale: 'small',
|
|
stateManagement: 'riverpod',
|
|
routing: 'gorouter',
|
|
architecture: 'feature_first',
|
|
backends: ['supabase'],
|
|
auth: 'supabase_auth',
|
|
platforms: ['ios', 'android', 'web'],
|
|
codegenTools: ['freezed', 'json_serializable'],
|
|
flavors: ['dev', 'prod'],
|
|
cicd: 'github_actions',
|
|
testingDepth: 'unit_widget',
|
|
e2eTool: 'patrol',
|
|
designSource: 'none',
|
|
figmaUrl: '',
|
|
apiDocsFormat: 'none',
|
|
apiDocsPath: '',
|
|
referenceRepos: [],
|
|
localPaths: [],
|
|
featureModules: ['auth', 'tasks', 'profile'],
|
|
specialFeatures: [],
|
|
i18nEnabled: true,
|
|
locales: ['en', 'fr'],
|
|
themeVariants: const ['light', 'dark', 'high_contrast'],
|
|
);
|
|
|
|
final kGetxMvcRestBrief = ProjectBrief(
|
|
projectName: 'LegacyApp',
|
|
packageId: 'com.test.legacy',
|
|
description: 'Legacy GetX app',
|
|
scale: 'medium',
|
|
stateManagement: 'getx',
|
|
routing: 'getx_nav',
|
|
architecture: 'mvc',
|
|
backends: ['rest'],
|
|
auth: 'jwt_rest',
|
|
platforms: ['ios', 'android'],
|
|
codegenTools: [],
|
|
flavors: ['dev', 'prod'],
|
|
cicd: 'codemagic',
|
|
testingDepth: 'unit_widget',
|
|
e2eTool: 'patrol',
|
|
designSource: 'none',
|
|
figmaUrl: '',
|
|
apiDocsFormat: 'openapi',
|
|
apiDocsPath: 'docs/api.yaml',
|
|
referenceRepos: [],
|
|
localPaths: [],
|
|
featureModules: ['auth', 'dashboard'],
|
|
specialFeatures: [],
|
|
i18nEnabled: false,
|
|
locales: ['en'],
|
|
mcpConfigEnabled: true,
|
|
mcpPreset: 'auto',
|
|
);
|