Skip to content

UTSC-CSCC01-Software-Engineering-I/term-group-project-c01s25-project-my-dormstore

Repository files navigation

My Dorm Store Website

Overview

My Dorm Store is an e-commerce platform that which designed to simplify the dorm move-in process for canadian post-secondary students. It allows students (and their families to customize and bundle essential items based on their dorm specifications, with a user-friendly web interface tailored for mobile and desktop use.

Key features include:

  • Dorm-specific recommendations (e.g., bed size, package types)
  • Easy checkout and delivery system
  • Admin dashboard for inventory tracking and updates

Installation Instructions

  1. Clone the repository

    git clone https://github.com/UTSC-CSCC01-Software-Engineering-I/term-group-project-c01s25-project-my-dormstore
    cd term-group-project-c01s25-project-my-dormstore
  2. Install dependencies

  • Install frontend and backend dependencies:

    #frontend
    cd frontend
    npm install
    
    #backend
    cd backend
    npm install
  1. Set Up Environment Variables
  • Frontend (frontend/.env):

    REACT_APP_API_URL=http://localhost:5001
  • Backend (backend/.env):

    PORT=5001
    PG_USER=your_db_user
    PG_PWD=your_db_password
    PG_DATABASE=your_db_name
    PG_HOST=localhost
    PG_PORT=5432
  • If you're using a custom port (e.g., 5002 instead of 5001), make sure:

    • In backend/.env: set PORT=5002
    • In frontend/.env: set REACT_APP_API_URL=http://localhost:5002
  1. Create PostgreSQL Database

    createdb -U postgres mydormstore
  2. Initialize Database Table and Functions

    cd backend
    npm run setup-db
    npm run setup-functions
    npm run setup
    npm run run-seed 
    • Create all necessary tables from schema.sql
  3. Run the Application

  • Open two separate terminals to run the backend and frontend servers

    #Backend Servier
    cd backend
    npm run dev
    
    #frontend Server
    cd frontend
    npm start)

(Optional) Dev Commands backend

  • Remove all products

    npm run clear-products
  • Remove all packages

    npm run clear-packages

Contribution Guidelines

  1. Fork the repository
  2. Create a new feature branch:
    git checkout -b feature/{feature-name}
  3. Commit changes with clear commit messages
  4. Push and open a Pull Request into the develop branch
  5. Reference the related issue number (e.g., Fixes #10 in PR description

Branching Strategy

We use Git Flow to manage development:

  • main: for production-ready code
  • develop: latest development code
  • feature/{name}: new features
  • bugfix/{name}: bug fiexes
  • release/{name}: prepare for a new release
  • hotfix/{name}: for critical fixes on production code (main)

Issues and ticketing

All tasks are tracked using Github Issues for tracking features, bugs, and enhancements. All tasks must be linked to an issue. Each issue should be assigned, labled (e.g., frontend, backend, bug, enhancement), and referenced in pull requests where applicable.

About

term-group-project-c01s25-project-my-dormstore created by GitHub Classroom

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors