การติดตั้ง #
คู่มือติดตั้งและตั้งค่า DEVDOCS สำหรับโปรเจกต์ใหม่ รองรับทั้ง Node.js, Python และ Docker
ข้อกำหนดเบื้องต้น #
ก่อนเริ่มติดตั้ง ตรวจสอบให้แน่ใจว่าระบบของคุณมีสิ่งต่อไปนี้:
- Node.js เวอร์ชัน 18.0 ขึ้นไป (node --version)
- npm หรือ yarn หรือ pnpm (แนะนำ pnpm)
- Git เวอร์ชัน 2.30 ขึ้นไป
- PostgreSQL 15+ หรือ SQLite (สำหรับ development)
- Docker (ไม่จำเป็น แต่แนะนำสำหรับ production)
ติดตั้งแบบด่วน #
ติดตั้ง DEVDOCS ด้วยคำสั่งเดียว:
# ติดตั้ง CLI แบบ global
$ npm install -g @devdocs/cli
# หรือใช้ npx โดยไม่ต้องติดตั้ง
$ npx @devdocs/cli init my-project
ขั้นตอนการติดตั้งทีละขั้น #
1 สร้างโปรเจกต์ใหม่
ใช้คำสั่ง devdocs init เพื่อสร้างโครงสร้างโปรเจกต์พร้อม configuration เริ่มต้น:
$ devdocs init my-docs --template thai-docs
# Output:
สร้างโปรเจกต์ "my-docs" สำเร็จ
โครงสร้าง: 12 ไฟล์, 3 โฟลเดอร์
Template: thai-docs (ภาษาไทย)
2 ติดตั้ง Dependencies
เข้าไปในโฟลเดอร์โปรเจกต์และติดตั้ง packages ทั้งหมด:
$ cd my-docs
$ npm install
3 เริ่ม Development Server
รัน dev server เพื่อเริ่มเขียน docs พร้อม hot-reload:
$ npm run dev
# Output:
DEVDOCS v3.2.0
Local: http://localhost:3000
Network: http://192.168.x.x:3000
พร้อมใช้งาน — เปิดเบราว์เซอร์เพื่อดูเอกสาร
หมายเหตุ
DEVDOCS รองรับ TypeScript ตั้งแต่เวอร์ชัน 3.0 ขึ้นไป คุณสามารถเขียน config ด้วยไฟล์ devdocs.config.ts ได้โดยตรง ดูรายละเอียดเพิ่มเติมที่หน้า TypeScript Configuration
ข้อควรระวัง
หากคุณใช้ Node.js เวอร์ชันต่ำกว่า 18 อาจพบปัญหา compatibility กับ ES modules แนะนำให้อัปเดตเป็น Node.js 20 LTS เพื่อประสบการณ์ที่ดีที่สุด
การตั้งค่า Configuration #
สร้างไฟล์ devdocs.config.js ที่ root ของโปรเจกต์:
1// devdocs.config.js
2import { defineConfig } from '@devdocs/core';
3
4export default defineConfig({
5 title: 'คู่มือระบบ TOPMANIDMB',
6 description: 'เอกสารสำหรับทีม AI War Room',
7 lang: 'th',
8
9 // การตั้งค่า theme
10 theme: {
11 primaryColor: '#3b82f6',
12 logo: '/assets/logo.svg',
13 darkMode: true,
14 },
15
16 // Sidebar navigation
17 sidebar: [
18 {
19 text: 'เริ่มต้น',
20 items: [
21 { text: 'การติดตั้ง', link: '/getting-started/installation' },
22 { text: 'Quick Start', link: '/getting-started/quick-start' },
23 ],
24 },
25 ],
26
27 // Search configuration
28 search: {
29 provider: 'local',
30 options: { sensitivity: 'accent' },
31 },
32});
สำหรับผู้ใช้ Python สามารถใช้ SDK เชื่อมต่อได้ดังนี้:
1from devdocs import DevDocsClient
2from devdocs.models import SearchQuery, Document
3
4# เชื่อมต่อ API
5client = DevDocsClient(
6 api_key="dd_sk_your_api_key_here",
7 base_url="https://api.devdocs.io/v3",
8)
9
10# ค้นหาเอกสาร
11results = client.search(
12 SearchQuery(
13 query="การติดตั้ง",
14 lang="th",
15 limit=10,
16 )
17)
18
19# แสดงผลลัพธ์
20for doc in results.items:
21 print(f"{doc.title} — {doc.score:.2f}")
เคล็ดลับ
ใช้คำสั่ง devdocs doctor เพื่อตรวจสอบว่าระบบพร้อมใช้งานหรือไม่ คำสั่งนี้จะเช็ค dependencies ทั้งหมดและแจ้งสิ่งที่ขาดหายไป
ตัวเลือกการตั้งค่า #
ตัวเลือกทั้งหมดที่ใช้ได้ใน configuration file:
| ตัวเลือก | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| title | string | 'DEVDOCS' | ชื่อเอกสารที่แสดงบน title bar |
| lang | string | 'en' | ภาษาหลัก ('th', 'en', 'ja') |
| base | string | '/' | Base URL path สำหรับ deploy บน subdirectory |
| outDir | string | './dist' | โฟลเดอร์ output สำหรับ build |
| theme | object | {} | ตั้งค่า theme: สี, โลโก้, dark mode |
| search | object | { provider: 'local' } | ตั้งค่าระบบค้นหา (local, algolia, typesense) |
| markdown | object | {} | ตั้งค่า markdown parser: plugins, syntax highlight |
| vite | object | {} | Override Vite config โดยตรง |
สำคัญ
อย่าเก็บ api_key ไว้ในไฟล์ configuration โดยตรง ให้ใช้ environment variable แทนเสมอ เช่น process.env.DEVDOCS_API_KEY เพื่อป้องกันการรั่วไหลของข้อมูล
Environment Variables #
สร้างไฟล์ .env ที่ root ของโปรเจกต์:
# DEVDOCS Configuration
DEVDOCS_API_KEY=dd_sk_your_api_key
DEVDOCS_BASE_URL=https://api.devdocs.io/v3
DEVDOCS_PORT=3000
# Database (ใช้กับ full-text search)
DATABASE_URL=postgresql://user:pass@localhost:5432/devdocs
# Optional: Analytics
ANALYTICS_ID=UA-XXXXXXXXX-X