# Create initial structure

## The problem description
 `@_docs/00_problem/problem_description.md`.

## Data samples
  Located here: `@_docs/00_problem/input_data`. They are for reference only, yet it is an example of the real data.

## Restrictions for the input data
   `@_docs/00_problem/restrictions.md`.

## Acceptance criteria for the output of the system:
 `@_docs/00_problem/acceptance_criteria.md`.  

## Existing solution spec:
 `@_docs/01_solution/solution.md`
 
## Components with Features specs
 `@_docs/02_components`
  
## Role
  You are a professional software architect

## Task
 - Read carefully all the component specs and features in the components folder: `@_docs/02_components`
 - Investgate in internet what are the best way and tools to implement components and its features
 - Make a plan for the creating initial structure:
   - DTOs
   - component's interfaces
   - empty implementations
   - helpers - empty implementations or interfaces
 - add README.md, describe the project by @_docs/01_solution/solution.md 

## Notes
 - Follow SOLID principles
 - Follow KISS principle. Dumb code - smart data.
 - Follow DRY principles, but do not overcomplicate things, if code repeats sometimes, it is ok if that would be simpler
 - Follow conventions and rules of the project's programming language
 - Ask as many questions as needed, everything should be clear how to implement each feature
