ngoahamos / alum-market

A market for Students

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

USTC Market

USTC Market is a web application, built using the MERN stack, that allows users to buy and sell items. This project was inspired by the need for many international students to sell or give away their items before returning to their home countries.

This project hopes to provide a platform for students to exchange items with each other, and to reduce the amount of waste produced by students who are unable to bring their items back home.

USTC Market will only provide basic functionalities such as user authentication, item listing, and messaging. It will not provide payment services or delivery services. The aim of this project is to help connect buyers and sellers, and to provide a platform for them to communicate and arrange for meetups.

Getting Started

Prerequisites

Installation

  1. Clone the repo
git clone https://github.com/oezeb/ustc-market.git
  1. Setup server
  2. Setup client

Features

User Authentication

  • Users can sign in using the university SSO
  • No public facing registration page. Admins can create new users if necessary.
  • Users can register using their university email address
  • Users can sign in using their username and password
  • Users can change basic profile information including password
  • Admins can help users reset their passwords

Item Listing

  • Users can create new listings
  • Users can edit their own listings
  • Users can view all listings

Messaging

  • Messages should be private and encrypted
  • Users can send messages to other users regarding a listing
  • The owner of a listing cannot initiate a conversation with a user who has not contacted them first about the listing
  • Use socket.io to allow for real-time messaging
  • Users can block other users from contacting them

Privacy

  • Users are anonymous by default
  • Including the messaging feature, users can choose to share their contact information privately with other users

Contributing

Code Style

This project uses Prettier to enforce code style. Please ensure that your code is formatted using Prettier before submitting a pull request.

Prettier Options

{
  "arrowParens": "always",
  "bracketSpacing": true,
  "endOfLine": "lf",
  "htmlWhitespaceSensitivity": "css",
  "insertPragma": false,
  "singleAttributePerLine": false,
  "bracketSameLine": false,
  "jsxBracketSameLine": false,
  "jsxSingleQuote": false,
  "printWidth": 80,
  "proseWrap": "preserve",
  "quoteProps": "as-needed",
  "requirePragma": false,
  "semi": true,
  "singleQuote": false,
  "tabWidth": 4,
  "trailingComma": "es5",
  "useTabs": false,
  "embeddedLanguageFormatting": "auto",
  "vueIndentScriptAndStyle": false,
  "parser": "babel"
}

About

A market for Students


Languages

Language:JavaScript 99.1%Language:HTML 0.9%