ReDI Connect is a tool to connect mentors and mentees. It is built for ReDI School and its community of teachers, students and volunteers.
- sign-up for mentors/mentees
- profiles that contain misc. personalia, and checkboxes for what areas of support mentors can offer and mentees are looking for
- form for mentees to submit an application to mentors for mentorship
- mentorship session logging
- problem reporting
- administration panel
- improve overall design, UX and code quality (current state is result of rushed work and has technical debt)
- consider supplementing the front-end web application by a native/hybrid/cross-platform Android / iOS mobile application
- database: MongoDB
- redi-connect-backend: Loopback/Express.js-based REST server
- redi-connect-front: frontend coded in React
- redi-connect-admin: simple administration panel (based on react-admin)
All can be run locally in development mode using below instructions. The production version is hosted on AWS - consult @ericbolikowski for details.
Contribution guide will be elaborated. For now, please:
- Please follow the gitflow model for branching (minus release branches). TL;DR: create
feat/xxx
branches offdevelop
and file a PR once the feature is ready. Merge ofdevelop
intomaster
done by maintainers only, oncedevelop
is release-ready. Usehotfix
branches offmaster
. - Please follow conventional commits when writing your commit messages. This is required for merge commits to
develop
andmaster
, and encouraged for all other commits. TL;DR: use this syntax for commit summary:<type<[(<scope<)]: <description>
, wheretype = fix|feat|chore|docs|style|refactor|perf|test|
,scope=backend|front|admin
(sub-scope optional).
- Ensure following is installed and active:
- mongod
- node v10
- Optionally, to easily browse the MongoDB database, install Studio 3T
- Install dependencies: run
yarn
inredi-connect-front
folder, runnpm install
inredi-connect-backend
folder - Optionally, create a folder named
mongodb-data
for MongoDB's data files
- For a clean development session, clear the old database (via Studio 3T, any other GUI, or simply deleting and re-creating the MongoDB data folder)
- Open the monogdb data folder (e.g.
cd mongodb-data
) and start the mongodb daemon:mongod --dbpath .
- To seed the database with anonymous data, run
./seed-random-data.sh
inredi-connect-backend
- Run
yarn start
inredi-connect-frontend
- Run
./start-dev.sh
inredi-connect-backend
- Run
./yarn start
inredi-connect-admin