Skip to content

Thai ETABS API handbook built with Astro Starlight, featuring practical docs, Mermaid diagrams, and a Tailwind-based theme.

License

Notifications You must be signed in to change notification settings

civil-park-international/etabs-api-python-book

Repository files navigation

ETABS API Python Book 📘

Deploy to GitHub Pages License: MIT

คู่มือการพัฒนาโปรแกรมเชื่อมต่อ CSI ETABS API ด้วยภาษา Python ฉบับสมบูรณ์ (From Zero to Enterprise)

🌐 Wbsite: https://civil-park-international.github.io/etabs-api-python-book/

📚 เนื้อหา (Contents)

  • Foundation: เริ่มต้นตั้งค่า, เชื่อมต่อ API, อ่านข้อมูลอาคาร
  • Analysis & Design: รันวิเคราะห์โครงสร้าง, อ่านผลลัพธ์ (Moment, Shear), ผลออกแบบ (Steel/Concrete)
  • Advanced: COM Lifecycle, Troubleshooting
  • Pro Level: API Validation, Structural Optimization Algorithm
  • Enterprise: Unit Testing, Mocking, CI/CD Pipeline

🛠️ การติดตั้งและใช้งาน (Installation)

1. Clone Repository

git clone https://github.com/civil-park-international/etabs-api-python-book.git
cd etabs-api-python-book

2. Python Environment Setup

ติดตั้ง library ที่จำเป็น (comtypes, pandas, matplotlib, pytest):

pip install -r requirements.txt

3. Run Jupyter Notebook Example

ลองเล่น API ผ่าน Interactive Notebook (ไม่ต้องเขียน script เอง):

jupyter notebook notebooks/etabs_playground.ipynb

🧪 การรัน Test (Mocking)

โปรเจกต์นี้รองรับการทำ Unit Test โดยไม่ต้องเปิด ETABS จริง (ใช้ Mocking technique จากบทที่ 16):

pytest tests/

📝 วิธีรัน Documentation (Local)

หนังสือเล่มนี้เขียนด้วย Astro Starlight. หากต้องการรันเว็บเซิร์ฟเวอร์ในเครื่อง:

  1. ติดตั้ง Node.js (v18+)
  2. Install dependencies:
    npm install
  3. Start dev server:
    npm run dev

🤝 Contributing

ยินดีต้อนรับทุกการแก้ไข! ไม่ว่าจะเป็นคำผิด, เพิ่มตัวอย่างโค้ด, หรือแชร์เทคนิคใหม่ๆ

  1. Fork repo นี้
  2. Create feature branch (git checkout -b feature/amazing-feature)
  3. Commit changes (git commit -m 'Add amazing feature')
  4. Push to branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.