From 174ae39803aa9a13f5ba4121b36bc33d42ccb2a1 Mon Sep 17 00:00:00 2001 From: "Raphael(Hyuntaek) Oh" Date: Sat, 24 May 2025 17:37:45 -0500 Subject: [PATCH] Update README.md --- README.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index ddf5113..c2cf559 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,35 @@ -# 📡 Grow - Backend API Server +# Grow - Backend API Server Grow is a course-based social platform that enables students to view academic info, write reviews, and engage in real-time chat. This backend is built with **Next.js API Routes**, using **Firebase Authentication**, **Firebase Realtime Database**, and **PostgreSQL** with **Prisma ORM**. -## 🛠 Tech Stack +## Tech Stack - Next.js (API Routes) + TypeScript - PostgreSQL - Firebase Admin SDK (Auth, Realtime DB) - Axios -## ⚙ Core Features -- 🔐 Auth & Authorization (Firebase ID Token) -- 📚 Course Info API (from Madgrades) -- ✍️ Review CRUD API -- 💬 Chatroom metadata API (Firebase-linked) -- 👤 User Profile & Enrollment API +## Core Features +- Auth & Authorization (Firebase ID Token) +- Course Info API (from Madgrades) +- Review CRUD API +- Chatroom metadata API (Firebase-linked) +- User Profile & Enrollment API -## 🔐 Auth Flow +## Auth Flow Clients send Firebase ID Token via header: Authorization: Bearer Server verifies and extracts UID, email, isAdmin -## 🧬 Database Schema (Prisma) +## Database Schema (Prisma) https://dbdiagram.io/d/6813d84f1ca52373f5228e49 -## 🔄 Madgrades Sync +## Madgrades Sync - Sync script: admin/courses/update/route.ts - Processes thousands of rows using chunked, transactional inserts - Only retains most recent 5 years of data -## 🚀 Getting Started +## Getting Started 1. Install dependencies npm install @@ -42,18 +42,18 @@ https://dbdiagram.io/d/6813d84f1ca52373f5228e49 3. Start dev server npm run dev -## 📌 Endpoints +## Endpoints https://plume-trouser-a64.notion.site/API-197fa6de67e3804eb1c5eb42a5f2da4f?pvs=4 -## 👤 Admin Capabilities +## Admin Capabilities - Manage Course Chatting room - Update data from Madgrade API -## 🔗 Real-time Chat +## Real-time Chat - Real-time messages handled in Firebase Realtime Database - Backend manages only course chat metadata. -## 👨‍💻 Developer +## Developer Backend: Hyuntaek Oh, Chaerin Yoo, Youngjun Jung Frontend: https://github.com/raphy0316/BuckyClass-mobile-ReactNative