/curso-arquitectura-frontend

πŸ—οΈ Curso de arquitectura FrontEnd 🏭

Primary LanguageTypeScript

CodeScouts

πŸ—οΈ Curso de arquitectura FrontEnd 🏭

Material prΓ‘ctico y ejercitaciΓ³n para el Curso de arquitectura frontend

Stars are welcome 😊 Report an error πŸ›

πŸš€ Environment Setup

πŸ§‘β€πŸš€ Getting started

Install dependencies

npm install

πŸš€ Running app

npm run start

πŸ‘©β€πŸ’» Project explanation

πŸ“ Folder structure


    public/
    β”œβ”€β”€ favicon.png --> CodeScouts's logo
    β”œβ”€β”€ index.html --> Main html file
    β”‚
    src/
    β”œβ”€β”€ application/ Our use cases
    β”‚   β”œβ”€β”€ get-initial-value-use-case.ts --> Here we model the use cases
    β”‚   β”œβ”€β”€ increment-use-case.ts
    β”‚   └── decrement-use-case.ts
    β”œβ”€β”€ domain/ Our Business logic
    β”‚   β”œβ”€β”€ events --> Here we model the domain events
    β”‚   β”œβ”€β”€ model --> Here we model our business logic
    β”‚   β”œβ”€β”€ repository --> Here exists the domain repositories (only abstractions)
    β”‚   └── services --> Here exists the domain services (only abstractions)
    β”‚
    β”œβ”€β”€ infrastructure/ Our external services implementations
    β”‚   β”œβ”€β”€ repository --> Here we model the domain events
    β”‚   β”‚   └── CounterService.ts --> Implementation for domain abstractions
    β”‚   └── services
    β”‚       └── CounterService.ts --> Implementation for domain abstractions
    β”‚
    β”œβ”€β”€ ui/ React things
    β”‚   β”œβ”€β”€ components/ --> Stateless components
    β”‚   └── pages/
    β”‚       └── home/
    β”‚           β”œβ”€β”€ Home.tsx --> Page component (View)
    β”‚           └── useHomeViewModel.ts --> Home UI business logic (ViewModel)
    β”‚
    β”œβ”€β”€ app.tsx
    └── index.tsx

πŸ€” Contributing

Si encuentras algΓΊn error, crees que hay cosas por mejorar o simplemente quieres contribuir, eres bienvenido/a. Solo realiza un fork y envΓ­anos tu PR πŸ™.