A lightweight web application for managing symposium registrations. Built with static HTML/CSS/JavaScript for the frontend and Node.js + Express.js for the backend, connected to a TiDB Cloud database.
This system enables students to register for events, while admins can manage event data and user submissions through secure backend routes.
- Register for symposium events via HTML forms
- View personal registration details
- Receive real-time confirmation after registration
- Secure login with JWT authentication
- View, filter, and manage all registered users
- Access event-specific user lists via dynamic routes
| Layer | Tech Used |
|---|---|
| Frontend | HTML, CSS, JavaScript |
| Backend | Node.js, Express.js |
| Database | TiDB Cloud |
| Auth | JSON Web Tokens (JWT) |
| Deployment | Render |
git clone https://github.com/yourusername/symposium-project.git
cd symposium-projectnpm installCreate a .env file in the root directory:
PORT=5000
DB_URI=gateway01.ap-southeast-1.prod.aws.tidbcloud.com
JWT_SECRET=your_secret_keynode server.jsThe server will serve HTML pages from the
/publicfolder and expose API endpoints.
| Route | Purpose |
|---|---|
/register.html |
User registration page |
/profile.html |
Display user's data |
/adminlogin.html |
Admin login form |
/adminprofile.html |
Admin dashboard |
- Admin routes are protected using JWT.
- Tokens are stored securely in cookies and verified on each request.
- Frontend & Backend deployed on Render functions.
- Database hosted on TiDB Cloud.
This project is licensed under the MIT License.