Files
annotations/.cursor/commands/implement-initial.md
T
Oleksandr Bezdieniezhnykh 9e7dc290db Refactor annotation tool from WPF desktop app to .NET API
Replace the WPF desktop application (Azaion.Suite, Azaion.Annotator,
Azaion.Common, Azaion.Inference, Azaion.Loader, Azaion.LoaderUI,
Azaion.Dataset, Azaion.Test) with a standalone .NET Web API in src/.

Made-with: Cursor
2026-03-25 04:40:03 +02:00

1.7 KiB

Implement Initial Structure

Input

  • Structure plan: _docs/02_tasks/<topic>/initial_structure.md (produced by decompose skill)

Context

  • Problem description: @_docs/00_problem/problem.md
  • Restrictions: @_docs/00_problem/restrictions.md
  • Solution: @_docs/01_solution/solution.md

Role

You are a professional software architect

Task

  • Read carefully the structure plan in initial_structure.md
  • Execute the plan — create the project skeleton:
    • DTOs and shared models
    • Component interfaces
    • Empty implementations (stubs)
    • Helpers — empty implementations or interfaces
  • Add .gitignore appropriate for the project's language/framework
  • Add .env.example with required environment variables
  • Configure CI/CD pipeline per the structure plan stages
  • Apply environment strategy (dev, staging, production) per the structure plan
  • Add database migration setup if applicable
  • Add README.md, describe the project based on the solution
  • Create test folder structure per the structure plan
  • Configure branch protection rules recommendations

Example

The structure should roughly look like this (varies by tech stack):

  • .gitignore
  • .env.example
  • .github/workflows/ (or .gitlab-ci.yml or azure-pipelines.yml)
  • api/
  • components/
    • component1_folder/
    • component2_folder/
  • db/
    • migrations/
  • helpers/
  • models/
  • tests/
    • unit/
    • integration/
      • test_data/

Semantically coherent components may have their own project or subfolder. Common interfaces can be in a shared layer or per-component — follow language conventions.

Notes

  • Follow SOLID, KISS, DRY
  • Follow conventions of the project's programming language
  • Ask as many questions as needed