A social media-inspired platform for students to discuss topics learn in classes. Although the main audience of the website is targeted to be CS major, students are free to create their own forums/threads for different topics/subjects.
The website is under development. Will update as soon as it goes online.
The project is built using MERN web development stack.
MongoDB
: A general purpose, document-based, distributed NoSQL databaseExpress
: Lightweight and fast web framework built on top of Node.jsReact
: A javascript library developed by Facebook to build user interfaceNode.js
: Javascript runtime
The website also incorporates modern frameworks/libraries/tools to make development more reliably and securely. Some examples include:
jsonwebtoken
: for secure user authorizationmocha
,supertest
,chai
: for automated integration testingtravis_ci
: for continuous integration, both for testing and deploymentnyc
andcoveralls
: test coverage
Create configuration file:
cd ./app/server
touch .env.local
# add following environment variable to the file:
MONGOOSE_URI=your_mongodb_uri
JWT_SECRET=your_secret
PORT=your_server_port
Start server:
npm run start
Run test:
# create .env.test.local to avoid database and port conflict with running server
touch .env.local
# add following environment variable to the file:
MONGOOSE_URI=your_mongodb_test_uri
JWT_SECRET=your_test_secret
PORT=your_test_server_port
npm run test
Check eslint style:
npm run lint