feat: entire application
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
# Galeria kotów - Aplikacja MVC w NestJS
|
||||
|
||||
## Autor
|
||||
Igor Barcik
|
||||
|
||||
## Opis Aplikacji
|
||||
Galeria kotów to aplikacja webowa zbudowana w NestJS, wykorzystująca wzorzec projektowy MVC (Model-View-Controller). Aplikacja służy do przeglądania kolekcją zdjęć kotów.
|
||||
|
||||
### Dla kogo?
|
||||
- Miłośników kotów
|
||||
- Osób chcących przeglądać zdjęcia kotów
|
||||
|
||||
## Implementacja MVC w Aplikacji
|
||||
|
||||
### Model
|
||||
Reprezentacja danych i logiki biznesowej w `cats.service.ts`:
|
||||
|
||||
```ts
|
||||
@Injectable()
|
||||
export class CatsService {
|
||||
// Logika biznesowa związana z kotami
|
||||
// Operacje na danych
|
||||
}
|
||||
```
|
||||
|
||||
### View
|
||||
Widoki są renderowane przy użyciu silnika Handlebars (hbs):
|
||||
```ts
|
||||
const app = await NestFactory.create<NestExpressApplication>(AppModule);
|
||||
app.setViewEngine('hbs');
|
||||
```
|
||||
|
||||
### Controller
|
||||
Kontrolery obsługujące żądania HTTP w `cats.controller.ts`:
|
||||
|
||||
```ts
|
||||
@Controller('cats')
|
||||
export class CatsController {
|
||||
constructor(
|
||||
private readonly catsService: CatsService,
|
||||
private readonly navigationService: NavigationService,
|
||||
) {}
|
||||
|
||||
@Get()
|
||||
@Render('cats')
|
||||
async getCats() {
|
||||
// Logika kontrolera
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Struktura Projektu
|
||||
```
|
||||
src/
|
||||
├── cats/
|
||||
│ ├── cats.controller.ts # Kontroler obsługujący endpointy
|
||||
│ ├── cats.service.ts # Serwis zawierający logikę biznesową
|
||||
│ └── cats.module.ts # Moduł kotów
|
||||
├── views/ # Szablony widoków
|
||||
└── app.module.ts # Główny moduł aplikacji
|
||||
```
|
||||
|
||||
## Uruchomienie Aplikacji
|
||||
|
||||
Instalacja zależności:
|
||||
`pnpm install`
|
||||
|
||||
Uruchomienie w trybie developerskim:
|
||||
`pnpm run start:dev`
|
||||
Reference in New Issue
Block a user