mirror of https://github.com/Squidex/squidex.git
Browse Source
- ai-track-docs/SYSTEM-OVERVIEW.md (placeholder) - ai-track-docs/build-test.md (placeholder) - ai-track-docs/architecture.mmd (placeholder) - .copilot-track/crawl/README.md (crawl phase guide)pull/1319/head
4 changed files with 145 additions and 0 deletions
@ -0,0 +1,33 @@ |
|||
# Copilot Track — Crawl Phase |
|||
|
|||
This directory stores evidence, prompt snippets, and notes gathered during the **Crawl** phase of the AI-track course. |
|||
|
|||
--- |
|||
|
|||
## What is the Crawl phase? |
|||
|
|||
The track is structured as **Crawl → Walk → Run**: |
|||
|
|||
| Phase | Goal | |
|||
|-------|------| |
|||
| **Crawl** | Understand the codebase; build mental models; confirm dev toolchain works | |
|||
| **Walk** | Make guided changes with Copilot assistance; write tests | |
|||
| **Run** | Independent features, refactors, and PR-ready contributions | |
|||
|
|||
--- |
|||
|
|||
## Prompt usage |
|||
|
|||
Save the prompts you used with Copilot here: |
|||
|
|||
``` |
|||
.copilot-track/crawl/ |
|||
lesson-01.md ← prompts + notes for lesson 1 |
|||
lesson-02.md |
|||
... |
|||
``` |
|||
|
|||
Each file should contain: |
|||
1. The **prompt** you sent to Copilot (verbatim or paraphrased). |
|||
2. A brief **summary** of what worked / didn't work. |
|||
3. Any **follow-up prompts** needed to reach the final answer. |
|||
@ -0,0 +1,31 @@ |
|||
# System Overview |
|||
|
|||
> **Status:** Placeholder — fill in during the Crawl phase. |
|||
|
|||
## What is Squidex? |
|||
|
|||
Squidex is an open-source headless CMS built on ASP.NET Core (backend) and Angular (frontend). |
|||
|
|||
## Top-level directories |
|||
|
|||
| Directory | Description | |
|||
|-----------|-------------| |
|||
| `backend/` | ASP.NET Core solution — domain, infrastructure, API | |
|||
| `frontend/` | Angular SPA | |
|||
| `sdk/` | Preact-based plugin/widget SDK | |
|||
| `tools/e2e/` | Playwright end-to-end tests | |
|||
| `tools/k6/` | k6 load tests | |
|||
| `ai-track-docs/` | AI-track reference docs (this folder) | |
|||
| `.copilot-track/` | Copilot-track helper prompts & crawl evidence | |
|||
|
|||
## Key external dependencies |
|||
|
|||
- MongoDB (primary datastore) or Entity Framework (SQL alternative) |
|||
- ASP.NET Core Identity / OpenID Connect |
|||
- Angular CLI, Vitest (unit), Playwright (e2e) |
|||
|
|||
## TODO — complete during Crawl |
|||
|
|||
- [ ] List major bounded contexts / domain aggregates |
|||
- [ ] Document auth flow |
|||
- [ ] Note any feature flags or environment variables required for local dev |
|||
@ -0,0 +1,34 @@ |
|||
%% architecture.mmd — Squidex high-level component diagram |
|||
%% Status: Placeholder — refine during the Crawl phase. |
|||
%% |
|||
%% Render with: mmdc -i architecture.mmd -o architecture.svg |
|||
|
|||
graph TD |
|||
Client["Browser / Mobile Client"] |
|||
|
|||
subgraph Frontend["frontend/ (Angular SPA)"] |
|||
AngularApp["Angular App"] |
|||
end |
|||
|
|||
subgraph API["backend/src/Squidex (ASP.NET Core)"] |
|||
WebAPI["REST & GraphQL API"] |
|||
Auth["OpenID Connect / Identity"] |
|||
Domain["Domain Layer"] |
|||
Infra["Infrastructure Layer"] |
|||
end |
|||
|
|||
subgraph DataStores["Data Stores"] |
|||
Mongo["MongoDB"] |
|||
EF["SQL / Entity Framework (optional)"] |
|||
end |
|||
|
|||
Client -->|HTTPS| AngularApp |
|||
Client -->|HTTPS| WebAPI |
|||
AngularApp -->|REST / GraphQL| WebAPI |
|||
WebAPI --> Auth |
|||
WebAPI --> Domain |
|||
Domain --> Infra |
|||
Infra --> Mongo |
|||
Infra -.->|alternative| EF |
|||
|
|||
%% TODO during Crawl: add event bus, asset storage, caching nodes |
|||
@ -0,0 +1,47 @@ |
|||
# Build & Test Reference |
|||
|
|||
> **Status:** Placeholder — verify commands during the Crawl phase and update. |
|||
|
|||
## Backend (ASP.NET Core) |
|||
|
|||
```bash |
|||
# Restore & build |
|||
cd backend |
|||
dotnet restore Squidex.slnx |
|||
dotnet build Squidex.slnx |
|||
|
|||
# Run unit tests |
|||
dotnet test tests/tests.sln |
|||
|
|||
# Run with coverage |
|||
cd tests && pwsh RunCoverage.ps1 |
|||
``` |
|||
|
|||
## Frontend (Angular) |
|||
|
|||
```bash |
|||
cd frontend |
|||
npm ci |
|||
npm run build |
|||
npm test |
|||
``` |
|||
|
|||
## End-to-end (Playwright) |
|||
|
|||
```bash |
|||
cd tools/e2e |
|||
npm ci |
|||
npx playwright test |
|||
``` |
|||
|
|||
## Docker / local stack |
|||
|
|||
```bash |
|||
docker build -t squidex:local . |
|||
``` |
|||
|
|||
## TODO — complete during Crawl |
|||
|
|||
- [ ] Confirm env vars needed for `dotnet run` |
|||
- [ ] Add any seed-data or migration steps |
|||
- [ ] Note CI pipeline entry points |
|||
Loading…
Reference in new issue