This repository contains a starting point for your team's final project. We look forward to seeing your progress and your final results this semester!
Your team should update this README to include the information required, as presented in the project handout available on Canvas.
Your team members are: Emily Oram, Seul Lee, Qiannan Liu, Zhou Su, Hanxin Zhang
Example User:
Username: helloworld
Password: hello
It is important each team member has the right development environment setup on their computer. Please update this with any other processes your group is following.
Extensions to install:
Commands to run before commits:
npm run format to double check code is formattednpm run format to double check code is formattedAll commits MUST have a brief descriptive message
[!IMPORTANT] It is always easier to merge files that are either new files, or files that no one else has changed. Create new modules / components to reduce the chance of Git Conflicts! However expect conflicts to occur as part of normal development.
[!TIP] The below assumes you have experience with GIT Pull requests, if not please address this.
All groups MUST use Pull Requests (PR) with at least 1 peer review for merging code into main, this is to improve code quality and to give team members an opportunity to understand your code in case they need to use it.
If team-members don't need to use PR, then they should be working on feature branches and get latest commits in main by merging main into their feature branch (git merge main, or git rebase main).
[!TIP] Consider a branch naming convention
feature/<some-meaningful-feature-name>
Correct and timely execution of the PR process with evidence of good code review can contribute significantly to a better codebase and team member collaboration.
$IMAGE
This is a blogging platform project using SvelteKit frontend and Node.js backend.
frontend/ - SvelteKit frontend applicationbackend/ - Node.js + Express backend APIadmin-client/ - Java admin clientThe project uses SQLite database, with the database file located at backend/project-database.db.
Users - User informationArticles - Article contentComments - CommentsTags - Article tagsLikes - Like recordsSubscriptions - Subscription relationshipsNotifications - Notificationscd backend
npm install
npm run dev
Backend server will start at http://localhost:3000
cd frontend
npm install
npm run dev
Frontend application will start at http://localhost:5173
GET /api/articles - Get all articlesGET /api/articles/:id - Get specific articlePOST /api/articles - Create new articlePATCH /api/articles/:id - Update articleDELETE /api/articles/:id - Delete articleGET /api/users - Get all usersGET /api/users/:id - Get specific userPOST /api/login - User loginPOST /api/register - User registrationGET /api/comments/articles/:id - Get article commentsPOST /api/comments - Add commentDELETE /api/comments/:id - Delete commentPOST /api/likes - Like articleGET /api/likes/:id/count - Get like countGET /api/likes/:id/status - Check like statusPORT = 3000
DB_FILENAME = project-database.db
DB_INIT_SCRIPT = src/sql/init-db.sql
FRONTEND_ORIGIN = http://localhost:5173
JWT_KEY=GROUP7ISAWESOME%
PUBLIC_API_BASE_URL=http://localhost:3000/api
PUBLIC_IMAGES_URL=http://localhost:3000/images
✅ Backend database connected ✅ Frontend API calls configured ✅ Data flow established
Now you can visit http://localhost:5173 to use the complete blogging platform functionality!