สร้าง MEN Stack boilerplate แบบ MVC ไว้ใช้เอง

มีความคิดอยากสร้าง JSON Server ไว้ใช้เอง ตอน development ซึ่งเริ่มมาจากบทความนี้

ซึ่ง GIT ดังกล่าวใช้ JSON Server และ Faker ในการสร้าง Data แบบง่ายๆ และได้ deploy ขึ้น Heroku ไว้ใช้เอง รวมถึงโปรเจคเล็กๆที่ไว้ยิงเทส ปรากฏว่า เมื่อต้องเทสลักษณะงานที่ต้องการ Authorization หรือ มี controller รับ payload เพื่อทำไรต่อนั้น โปรเจคเล็กๆข้างบนไม่สามารถตอบโจทย์นี้ได้ จึงเป็นที่มาที่ทำ Stack ไว้ใช้เอง

ซึ่งตัว Stack ใหม่ที่ทำไว้ชื่อ MEN (MongoDB(Mongoose)-Express-NodeJS)

ก็เป็นโปรเจคง่ายๆ คล้ายกับตัวแรกที่ทำไว้ เพียงแต่ใช้ Stack ที่รองรับความต้องการในอนาคตมากขึ้น และ design architecture แบบ MVC ไว้

สรุปวิธีการใช้งาน

  1. ติดตั้ง node ให้เรียบร้อย
  2. ติดตั้ง MongoDB ไว้ในเครื่อง และสร้าง directory ไว้ใน C:\data\db เพื่อเอาไว้ให้ Mongo เก็บ Schema และ Documents (สำหรับ mac ไว้อนาคตถาซื้อจะมาอัพเดต)
  3. npm i เพื่อลง node modules
  4. npm run mongo-init เพื่อสร้าง schema ที่ชื่อว่า customers ขึ้นมาเป็นข้อมูลตัวอย่าง
  5. ทำการรัน mongod ที่ C:\Program Files\MongoDB\Server\3.4\bin หรือที่ติดตั้งไว้
  6. npm run serve เพื่อทำการรัน server

ใช้ nodemon เพื่อ restart server

ตอนนี้ใช้ nodemon เป็นตัว detect เวลา node มีการเปลี่ยนแปลง code อยู่ ดังนั้น ต้องรอสักแปปใน restart server

โครงสร้าง project

Project structure