bởi Abdullah Asif

Full-stack appointment booking system with React frontend and Express backend. Features a monthly calendar, time slot selection, service picker, and confirmation flow—perfect for barbershops, clinics, or coaching services. Uses TypeScript throughout with file-based JSON storage, no database setup required. Licensed under Tetrees License.
A full-stack booking and appointment scheduler built with TypeScript. This chain includes a React frontend with an interactive calendar interface and a Node.js/Express backend API for managing services, time slots, and bookings. Perfect for service-based businesses that need to offer online appointment scheduling.
Frontend:
Backend:
| Layer | Technology |
|---|---|
| Frontend | React 19, TypeScript, Vite, Tailwind CSS, Framer Motion, React Router |
| Backend | Node.js, Express 4, TypeScript, Helmet, express-rate-limit |
| Database | JSON flat-file (readDb/writeDb) |
| ID Generation | UUID v4 |
| Build Tools | Vite (frontend), ts-node/nodemon (backend) |
cd backend
npm install
npm run build
npm start
Server runs on port 9103 by default.
Development mode:
npm run dev
Environment Variables:
PORT=9103 # Optional, defaults to 9103
cd frontend
npm install
npm run dev
Starts dev server (typically on http://localhost:5173).
Build for production:
npm run build
Run tests:
npm test # Single run
npm run test:watch # Watch mode
Base URL: http://localhost:9103
All responses use envelope format: { "data": ... } or { "error": "<message>" }
GET /api/health
Returns server health status and timestamp.
curl http://localhost:9103/api/health
Response:
{
"status": "ok",
"timestamp": "2025-06-15T10:00:00.000Z"
}
GET /api/services
List all available services.
curl http://localhost:9103/api/services
Response:
{
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Tree Trimming",
"description": "Professional tree trimming and shaping",
"duration": 60,
"price": 150,
"icon": "scissors"
}
]
}
GET /api/services/:id
Get a single service by UUID.
curl http://localhost:9103/api/services/550e8400-e29b-41d4-a716-446655440000
GET /api/time-slots?serviceId=<id>&date=<YYYY-MM-DD>
Get available time slots for a service on a specific date.
POST /api/bookings
Create a new booking.
GET /api/bookings
List all bookings.
GET /api/bookings/:id
Get a specific booking by ID.
GET /api/stats
Get booking statistics.
Tetrees License
Khởi chạy sandbox cách ly và chạy phía máy chủ — không cần cài đặt cục bộ.
Lần kiểm định sandbox đã hoàn tất và đường chạy được phát hiện đã đạt yêu cầu.
This Express backend / api completed archive review with strong static results. Structure, dependency manifests, documentation, functional source, and common risk patterns were checked by the Tetrees verification pipeline; runtime phases are stated separately. Final verified scores after isolated runtime evidence: overall 8.8 and security 9.
Deterministic AVCP artifact review
Quy trình avcp-2026-08-04.1 · SHA-256 927892ec638cfddf…
This version-scoped review deterministically inspects the submitted archive for structure, dependencies, documentation, functional source, and common malicious or high-risk signals. Build and test phases are reported as passed only after an isolated sandbox audition. It is not a guarantee of perfect security.
Đã đánh giá 7 thg 8, 2026
Hướng dẫn cài đặt đầy đủ và prompt tích hợp sẽ mở khóa sau khi mua.
Đưa sản phẩm này thẳng vào AI IDE, trình tạo web hoặc cloud IDE của bạn.
Kết nối Tetrees với AI IDE tương thích để liệt kê sản phẩm bạn sở hữu và nhận ZIP đã xác minh mà không cấp quyền tải lên của người bán.
Chưa có đánh giá.
Sign in to join the discussion
Loading discussion…

Mobile App Templates & App Source Code
19,54 US$