File tree Expand file tree Collapse file tree 1 file changed +47
-0
lines changed
Expand file tree Collapse file tree 1 file changed +47
-0
lines changed Original file line number Diff line number Diff line change 1+ # Items Service
2+
3+ A simple REST API service for managing items, built with Bun and PostgreSQL.
4+
5+ ## Features
6+
7+ - ** RESTful API** for CRUD operations on items
8+ - ** PostgreSQL** database integration
9+ - ** Health check** endpoint with database connectivity status
10+ - ** OpenAPI/Swagger** documentation
11+ - ** OpenTelemetry** distributed tracing support
12+ - ** Structured Logging** with Pino for high-performance logging
13+ - ** Hot reload** in development mode
14+ - ** Docker** support with development and production configurations
15+
16+ ## API Endpoints
17+
18+ ### Health Check
19+ - ` GET /v1/health ` - Check service and database health
20+ - ` GET /v1/items ` - List all items
21+ - ` POST /v1/items ` - Create a new item
22+ - ` GET /docs ` - Swagger UI for interactive API documentation
23+ - ` GET /v1/openapi.json ` - OpenAPI specification
24+
25+ ## Local Development
26+
27+ ### Using Tilt
28+ ``` bash
29+ task local:setup
30+ task local:start
31+ ```
32+
33+ Access the service at:
34+ - Service: http://localhost:8081
35+ - Health Check: http://localhost:8081/v1/health
36+ - API Docs: http://localhost:8081/docs
37+
38+ ## Technology Stack
39+
40+ - ** Runtime** : [ Bun] ( https://bun.sh/ ) - Fast JavaScript runtime
41+ - ** Database** : PostgreSQL with [ postgres.js] ( https://github.com/porsager/postgres )
42+ - ** Logging** : [ Pino] ( https://getpino.io/ ) - High-performance structured logging
43+ - ** Observability** : [ OpenTelemetry] ( https://opentelemetry.io/ ) - Distributed tracing
44+ - ** Container** : Docker with Alpine Linux
45+ - ** Orchestration** : Kubernetes (k3s)
46+ - ** Local Development** : Task and Tilt with k3d
47+
You can’t perform that action at this time.
0 commit comments