Menu Close

สร้างโปรเจค React ด้วย Bun (A fast all-in-one JavaScript runtime)

บล็อกนี้จะมาแนะนำวิธีการสร้างโปรเจค React ด้วย Bun กัน ปัจจุบัน Bun ได้ชื่อว่าเป็น JavaScript runtime ที่เร็วที่สุด (ตอนนี้อยู่ที่เวอร์ชัน v0.1.5) และแน่นอนว่า Bun นั้นก็รองรับการสร้างโปรเจค React ด้วย วันนี้เราจะมาลองสร้างโปรเจค React จาก Bun กันครับ

เริ่มต้น เราต้องติดตั้ง Bun ที่เครื่องที่ใช้พัฒนาก่อน

การติดตั้ง Bun

ระบบปฏิบัติการที่ Bun รองรับในการติดตั้ง ได้แก่ macOS x64 กับ Silicon และ Linux x64 และ Windows Subsystem for Linux

ขั้นตอนการติดตั้งง่ายๆ โดยรันคำสั่งด้านล่างนี้ได้เลย

curl https://bun.sh/install | bash

จากนั้นทดสอบด้วยคำสั่ง

bun --help

หากเครื่องไม่พบคำสั่ง bun ให้รันคำสั่งนี้ก่อน

exec /bin/zsh
bun --help

เมื่อเราทำการติดตั้งและทดสอบคำสั่ง help ของ Bun เรียบร้อยแล้ว จากนั้น เราจะทำการทดสอบสร้างโปรเจค React จากคำสั่งของ Bun กันดู

การสร้างโปรเจค React ด้วย Bun

การสร้างโปรเจค React ด้วย Bun จะใช้คำสั่ง bun create react แล้วตามด้วยชื่อ โฟลเดอร์ของ โปรเจคที่เราต้องการ ในตัวอย่างใช้ชื่อว่า app-name จากนั้นก็รอให้โปรแกรมติดตั้งจนเสร็จ (ใช้เวลาไม่นาน)

bun create react ./app-name

เมื่อติดตั้งเสร็จแล้ว

การรันโปรเจค React

เมื่อเราติดตั้งโปรเจค React เสร็จเรียบร้อยแล้วให้ เข้าไปโฟลเดอร์ โปรเจคที่เราสร้างขึ้น แล้วรันคำสั่ง bun dev เพื่อรัน React โปรเจค

bun dev

เท่านี้ก็สามารถรันโปรเจค React ด้วย Bun ได้แล้ว ไม่ยากเลยใช่มั้ยครับ

การรัน script อื่นๆ ของ node เราสามารถทำใน Bun ได้ เช่น เราต้องการรันคำสั่ง react-script

ก่อนอื่น จะต้องติดตั้ง react-scripts ก่อน ด้วยคำสั่ง

bun add react-scripts

เมื่อติดตั้ง react-scripts เสร็จแล้ว ให้ตรวจสอบว่ามีชื่อแพ็กเก็ต react-scripts อยู่ที่ dependencies ในไฟล์ package.json แล้วรึยัง หากมีแล้วแสดงว่าติดตั้งได้ถูกต้อง

จากนั้นให้เพิ่มคำสั่งการรัน react-scripts ที่เราคุ้นเคยกันเข้าไปไว้ในไฟล์ package.json ดังนี้

{
... 
"scripts": {
    "start": "bun dev",
    "build": "react-scripts build"
  },

...
}

จากนั้นเราจะใช้คำสั่ง bun start สำหรับเริ่มโปรมแกรม

bun start

และใช้คำสั่ง bun run build สำหรับการสร้างโฟลเดอร์ build เพื่อจะนำไปใช้งานต่อไป

bun run build

บทส่งท้าย

Bun มีความโดดเด่นเรื่องความรวดเร็วในการ ติดตั้งไลบรารี่ และการรันคำสั่งต่างๆ รวมถึงความเร็วในการประมวลผล ตัวอย่างเช่น Server-side rendering React, Load a huge table บน sqlite และ bun:ffi

สำหรับคนที่อยากลองใช้ Javascript Runtime ตัวอื่นนอกจาก npm หรือ yarn หรือ pnpm เพื่อรันโปรเจค React แล้ว Bun เป็นหนึ่งในตัวเลือกที่น่าสนใจทีเดียว

นอกจากนี้ Bun ยังรองรับ TypeScript ด้วย เพียงแค่ เปลี่ยนนามสกุลไฟล์จาก .js เป็น .ts หรือจากไฟล์ .jsx เป็น .tsx ก็สามารถใช้ typeScript ในโปรเจค ได้โดยไม่ต้องลงอะไรเพิ่มอีก

แต่ที่สำคัญ ณ ตอนนี้คือ Bun ยังอยู่ในช่วงที่พัฒนาอยู่ ยังมีอีกหลายฟีเจอร์ที่ยังอยู่ในช่วงพัฒนา เช่น Web Streams with Fetch API, Web Streams with HTMLRewriter, WebSocket Server เป็นต้น (อ่านต่อที่ https://github.com/oven-sh/bun/issues/159)

นอกจาก React แล้ว ​Bun ยังสามารถสร้างโปรเจคของ Next.js ได้ด้วยคำสั่ง

bun create next ./app

นอกจากการสร้างโปรเจคทั้ง React และ Next.js แล้ว Bun ยังสามารถเขียนโปรแกรมด้วยไลบรารี่ของ Bun เองในการสร้างเป็นเซิฟเวอร์ การเชื่อมต่อกับฐานข้อมูล sqlite การจัดการไฟล์บนเว็บเซิฟเวอร์ และการสร้างเป็นเว็บเซิฟเวอร์ก็ได้เช่นกัน หากต้องการศึกษาเพิ่มเติมเกี่ยวกับ Bun สามารถอ่านได้ที่ https://bun.sh ได้เลย สำหรับบล็อกนี้เอาไว้เท่านี้ สวัสดีครับ

อ้างอิง

  1. https://github.com/oven-sh/bun#Reference
  2. https://bun.sh
  3. https://dev.to/ashirbadgudu/create-a-react-app-with-bun-125o
Posted in react

ใส่ความเห็น