แอพแชทแบบเรียลไทม์ที่ตอบสนองได้อย่างสมบูรณ์ซึ่งทำด้วย NextJS 13 (เราเตอร์แอพ), MongoDB, Tailwind CSS, Pusher, Next-Auth และ Cloudinary

ดูการสาธิตสดใน Vercel

ไปที่ https://www.mongodb.com/atlas/database และลงทะเบียน
ค้นหาและเลือก Build a Database
เลือกระดับฟรีและกด Create ที่ด้านล่าง
สร้างผู้ใช้ (หมายเหตุรหัสผ่าน)
เลื่อนลงเพื่อ Add entries to your IP Access List
ป้อน 0.0.0.0/0 แล้วกด Add Entry
กด Go to Databases
คลิกที่ Connect และเลือก MongoDB for VSCode
คัดลอกสตริงการเชื่อมต่อและบันทึกไว้ใน Notepad
แทนที่ <password> ด้วยการตั้งรหัสผ่านของคุณในขั้นตอนที่ 3
เพิ่ม test ที่ส่วนท้ายของสตริงการเชื่อมต่อ (เช่น connectionstring/test )
ไปที่ https://github.com/
คลิกที่ดรอปดาวน์โปรไฟล์ของคุณที่ด้านบนขวา
คลิก Settings
คลิก Developer settings
คลิก OAuth Apps
คลิก New OAuth App
ตั้งชื่อแอปของคุณ
พิมพ์ http://localhost:3020/ ใน Homepage URL และฟิลด์ Authorization callback URL
คลิก "แอปพลิเคชันลงทะเบียน"
คัดลอก Client Id และจดบันทึกลง
คลิกที่ Generate a new client secret คัดลอกและจดบันทึกลง
ไปที่ https://console.cloud.google.com และสร้างโครงการใหม่ 
นำทางไปยังโครงการที่สร้างขึ้นใหม่และค้นหา API & Services 
ไปที่ OAuth consent screen
คลิกฟิลด์ External
คลิก CREATE 
คลิกฟิลด์ App name และตั้งชื่อ
ในฟิลด์ผู้ใช้เมลเลือกอีเมลของคุณ
เลื่อนลงไปที่ Developer contact information และพิมพ์อีเมลของคุณ
คลิก SAVE AND CONTINUE จนกว่าคุณจะอยู่ในขั้นตอน Summary 
ไปที่ Credentials
คลิก CREATE CREDENTIALS
เลือก OAuth client ID 
เลือก Web application เป็นประเภทแอปพลิเคชัน
เลื่อนลงไปที่ Authorized redirect URIs และเพิ่ม http://localhost:3020/api/auth/callback/google
คลิก CREATE
คัดลอก CLient ID และ Client Secret และจดบันทึกลง 
ไปที่ https://console.cloudinary.com และเข้าสู่ระบบ
ไปที่ Dashboard และจดบันทึก Cloud name ลง 
ไปที่การตั้งค่า
จากนั้นไป Upload 
คลิก Add upload preset
เปลี่ยน Signing Mode เป็น Unsigned
คลิก Save คัดลอกชื่อที่ตั้งไว้ล่วงหน้าใหม่และจดบันทึกลง 
ไปที่ https://dashboard.pusher.com/channels
คลิก Create app (หรือ Get Started )
ตั้งชื่อแอป
เลือก React สำหรับ Frontend และ Node.js สำหรับแบ็กเอนด์
สร้างแอพ 
ไปที่ App Keys
บันทึกค่าลง 
cp env.example .env.local
.env.local เพิ่ม mongoDB, pusher, Cloudinary, GitHub และ Google Keys จากขั้นตอนก่อนหน้าyarn install เพื่อติดตั้งการพึ่งพา (เรียกใช้ npm install yarn หากคุณไม่ได้ติดตั้งเส้นด้าย)yarn prisma db push เพื่อสร้างคอลเลกชัน dbprisma generate เพื่อสร้างไคลเอนต์ Prisma การพัฒนา
yarn dev
การผลิต
yarn build yarn start
/.next/คำสั่งทั้งหมด
| สั่งการ | คำอธิบาย |
|---|---|
yarn dev | สร้างแอพอย่างต่อเนื่อง (เปิดใช้งาน HMR) |
yarn build | สร้างแอพหนึ่งครั้ง (ปิดใช้งาน hmr) ถึง /.next/ |
yarn start | เรียกใช้การผลิต |