vtrc-ocr-api
vtrc-ocr-api (branch: main) เป็น Express.js API ขนาดเล็กที่ชื่อและ README บอกว่าเป็นบริการ OCR ของแพลตฟอร์ม VTRC แต่จากการอ่านโค้ดทั้ง repo (21 ไฟล์ที่ track — ไม่รวม node_modules/.git) พบว่ายังไม่มี OCR engine ใด ๆ ทำงานจริง — POST /api/ocr/process คืนข้อความคงที่ 'Sample OCR result text' พร้อม confidence: 0.95 เสมอ หลัง setTimeout(1000) (vtrc-ocr-api/services/ocr.service.js:25-34)
ประวัติ commit มี 3 commit (Initial commit → initial project → [ADD] Add swagger) — ยืนยันสถานะ scaffold ไม่ใช่บริการที่ผ่านการพัฒนาจนใช้งานจริง
Stack และเวอร์ชัน
| Dependency | เวอร์ชัน | หลักฐาน |
|---|---|---|
| express | ^4.18.2 | package.json:20 |
| dotenv | ^16.3.1 | package.json:21 |
| cors | ^2.8.5 | package.json:22 |
| morgan | ^1.10.0 | package.json:23 |
| helmet | ^7.1.0 | package.json:24 |
| express-validator | ^7.0.1 | package.json:25 |
| swagger-jsdoc | ^6.2.8 | package.json:26 |
| swagger-ui-express | ^5.0.1 | package.json:27 |
| nodemon (dev) | ^3.0.2 | package.json:30 |
ไม่มี dependency ของ OCR engine (ไม่มี tesseract.js, Google Vision SDK, AWS Textract) — ตรวจจาก package.json:19-28
| Script | คำสั่ง | Citation |
|---|---|---|
start | node app.js | package.json:7 |
dev | nodemon app.js | package.json:8 |
test | echo + exit 1 | package.json:9 |
Entrypoint และพอร์ต
app.js เป็น entrypoint เดียว (package.json:5)
| Item | Value | Citation |
|---|---|---|
| Port | process.env.PORT || 3000 | app.js:12 |
| Middleware | helmet → cors() → morgan('dev') → json → urlencoded | app.js:15-19 |
| Static | public/ ที่ root | app.js:22 |
| Swagger UI | /docs | app.js:25 |
| OpenAPI JSON | /docs.json | app.js:26-29 |
| API prefix | /api | app.js:33 |
| Landing | GET / → public/index.html | app.js:36-38 |
| Health (นอก /api) | GET /health | app.js:41-47 |
ไม่มี .env.example ใน repo (README อ้างว่ามีที่ README.md:12-13,42-48 แต่ไฟล์จริงไม่มี — ตรวจด้วย glob) → ค่า env ที่ใช้ได้จริงอ่านจาก config/config.js เท่านั้น
Deploy artifact
ไม่พบ Dockerfile, docker-compose.yml, หรือ CI pipeline ใน repo — UNVERIFIED ว่าถูก deploy ขึ้น environment ใด
ไม่มีหลักฐานว่า frontend ใน workspace (vtrc-web, recruitment-web, ฯลฯ) เรียก endpoint ของ repo นี้
สารบัญ
| บท | หัวข้อ |
|---|---|
| 01 | Repository map — โครงสร้าง, boot, dead code |
| 02 | Core pipeline — mock OCR + in-memory Map |
| 03 | Every endpoint — request/response/validation |
| 04 | Scorecard |
ดูภาพรวมกลุ่ม OCR & Auxiliary ที่ Volume 9 index.