This file defines mandatory rules for all code generation and modifications. If any rule would be violated, stop and fix the solution to fully comply with these guidelines.
- TypeScript everywhere (backend + frontend).
| docker exec -it $(docker ps -qf "name=postgres") psql -U postgres -d demo -c \ | |
| "CREATE TABLE IF NOT EXISTS public.customers ( | |
| id SERIAL PRIMARY KEY, | |
| name VARCHAR(255), | |
| email VARCHAR(255) | |
| );" |
| import { Injectable } from '@nestjs/common'; | |
| import { PinoLogger } from 'nestjs-pino'; | |
| import { Server, Socket } from 'socket.io'; | |
| import { RoomType } from '../../types/socket-room.types'; | |
| @Injectable() | |
| export class SocketRoomService { | |
| private socketServer: Server; | |
| constructor(private readonly logger: PinoLogger) {} |
| ABCD-5432 JIRA ticket: | |
| Improve the API with a /devices endpoint. The endpoint's functionality comes from the attached Product Specification Documentation. | |
| Definition of Done: | |
| - The /devices endpoint returns the devices array following the sample data structure contained in the related documentation. | |
| - If the company doesn't have any devices at the selected address → /devices returns an empty array. | |
| How to demo (with the UI parts): |
| services: | |
| zookeeper: | |
| image: confluentinc/cp-zookeeper:7.6.0 | |
| ports: | |
| - '2181:2181' | |
| environment: | |
| ZOOKEEPER_CLIENT_PORT: 2181 | |
| ZOOKEEPER_TICK_TIME: 2000 | |
| kafka: |
| npx esbuild main.js --bundle --outfile=bundle.js | |
| vs | |
| npx esbuild app.js --bundle --format=esm --outfile=bundle.js |
| version: '3' | |
| services: | |
| zookeeper: | |
| image: confluentinc/cp-zookeeper:7.5.0 | |
| environment: | |
| ZOOKEEPER_CLIENT_PORT: 2181 | |
| kafka: | |
| image: confluentinc/cp-kafka:7.5.0 | |
| depends_on: |
| version: '3.8' | |
| services: | |
| mongo: | |
| image: mongo:7 | |
| container_name: mongodb | |
| restart: always | |
| ports: | |
| - '27017:27017' | |
| volumes: |
| version: '3.8' | |
| services: | |
| redis: | |
| image: redis:7-alpine | |
| container_name: redis-local | |
| ports: | |
| - '6379:6379' | |
| networks: | |
| - redis-net |
| class LRUCache { | |
| constructor(capacity) { | |
| this.capacity = capacity | |
| this.cache = new Map() | |
| } | |
| get(key) { | |
| if (this.cache.has(key)) { | |
| // If the key exists in the cache, move it to the front | |
| const value = this.cache.get(key) |