|
16 | 16 | - **TypeScript**: Type-safe JavaScript development |
17 | 17 | - **SCSS**: Advanced CSS preprocessing |
18 | 18 |
|
| 19 | +## Project Structure |
| 20 | +- **Server.Api**: Controllers, Mappers, DbContext, Migrations, Components for email templates, action filters, models, SignalR, server's appsettings.json |
| 21 | +- **Server.Web**: App.razor and other files to server Blazor Server and pre-rendering. |
| 22 | +- **Server.Shared (Also knows as Aspire's ServiceDefaults)**: Common codes shared between Server.Api and Server.Web. |
| 23 | +- **Server.AppHost**: Aspire's appsettings and Program.cs |
| 24 | +- **Shared**: Dtos, Enums, custom exceptions, shared services, resx files. |
| 25 | +- **Tests**: UI and integration tests. |
| 26 | +- **Client.Core**: Components, Pages, Layout, Client services, app.ts (TypeScript), app.scss (SCSS), and appsettings.json for the client. |
| 27 | +- **Client.Web**: Blazor WebAssembly standalone project. |
| 28 | +- **Client.Maui**: .NET MAUI based Blazor Hybrid project. |
| 29 | +- **Client.Windows**: Windows forms based Blazor Hybrid project. |
| 30 | + |
19 | 31 | ## Coding Conventions & Best Practices |
20 | 32 |
|
21 | 33 | 1. **Follow the established project structure**: Adhere to the defined layout for consistency. |
|
31 | 43 | 12. **Prefer razor.scss files**: Use `.razor.scss` files for component styles instead of inline styles in `.razor` files. |
32 | 44 | 13. **After applying changes, make sure project builds successfully**: Always verify that the project builds without errors after making changes. |
33 | 45 |
|
34 | | -### Rules for Using MCP |
| 46 | +## Rules |
35 | 47 |
|
36 | 48 | **RULE 1:** If a task (question, code modification or review) involves the use of bit BlazorUI components (e.g., `BitButton`, `BitTooltip`, `BitTextField`), |
37 | 49 | or refers to `bitplatform`, `bit Bswup`, `bit Butil`, `bit Besql`, or `bit Boilerplate`, or involves UI components without explicitly specifying their UI toolkit, |
38 | 50 | you **MUST** use the deepwiki's `ask_question` mcp tool to find the correct implementation and usage patterns of `bitfoundation/bitplatform` deep wiki before writing or changing any code. |
39 | 51 |
|
40 | 52 | **End of RULE 1** |
41 | 53 |
|
42 | | -**RULE 2:** If a task (question, code modification, or review) involves Microsoft technologies such as C#, F#, ASP.NET Core, Microsoft.Extensions, NuGet, Entity Framework, Blazor or the `dotnet` runtime, |
| 54 | +**RULE 3:** If a task (question, code modification, or review) involves Microsoft technologies such as C#, F#, ASP.NET Core, Microsoft.Extensions, NuGet, Entity Framework, Blazor or the `dotnet` runtime, |
43 | 55 | you **MUST** use the `microsoft.docs.mcp` server to search Microsoft's latest official documentation for detailed and up-to-date information before responding to specific or narrowly defined questions. |
44 | 56 |
|
45 | | -**End of RULE 2** |
| 57 | +**End of RULE 3** |
| 58 | + |
| 59 | +**RULE 4:** You **MUST** use the read-website-fast's `fetch` mcp tools, to gather information from URLs provided by the user. |
| 60 | + |
| 61 | +**End of RULE 4** |
46 | 62 |
|
47 | | -**RULE 3 Command:** |
48 | | -Use Playwright MCP tools like browser_navigate for URLs, browser_click for interactions, and browser_snapshot for page analysis. |
| 63 | +**RULE 5:** If the user request is "resume" or "continue" or "try again", check the previous conversation history to see what the next incomplete step in the todo list is. Continue from that step, |
| 64 | +and do not hand back control to the user until the entire todo list is complete and all items are checked off. Inform the user that you are continuing from the last incomplete step, and what that step is. |
49 | 65 |
|
50 | | -**End of RULE 3** |
| 66 | +**End of RULE 5** |
0 commit comments