MindVersity is a national peer network dedicated to bridge the gap between access to mental health resources and students of color on college campuses nationwide. See their existing site for more information.
- React: Front-end
- Typescript: Back-end
- Next.js: Server-side rendering, API routes, file-based routing
- MongoDB: Database
- Contentful: Content Management System
- node v10+ (recommend getting nvm to manage versions)
- yarn (package manager - similar to npm)
- Clone the repo.
- Run
yarn
oryarn install
to update dependencies. - Run
yarn dev
for development mode with hot-code reloading, error reporting, and more. - Open http://localhost:3000 with your browser to see the result.
Note: Running yarn build
then yarn start
will start the application in production mode.
- Linear for issue tracking
- Figma for mockups
- Google Docs for formalities
- Slack for chat
- Postman for API testing
- MongoDB Compass for database access
- Contentful for content management access
- Create a new branch in the format
[USERNAME]/[LINEAR-ISSUE-NUMBER]-[SHORT_DESCRIPTION]
by runninggit checkout -b [BRANCH NAME]
- example branch name:
KFidan1/H4I-12-init-project
- This way the issues are closed on Linear when we merge the PR with that branch name
- see https://docs.linear.app/GitHub-GitLab-fa4b88df484343e4989538f066c729f3
- example branch name:
- Be sure to lint, format, and type-check your code occasionally to catch errors by running
yarn lint
. - Commit changes.
- Then push your branch by running
git push -u origin [BRANCH NAME]
. This pushes your branch to remote. - Create a pull request (PR) on GitHub to merge your branch into
develop
.main
will serve as production. - In your PR, briefly describe the changes, then tag me (KFidan1) and Vishal (VishalAiely) to the PR. Others are welcome to comment and give feedback as well.
components/
: Contains almost all of our front-end code. This is where we put our React components.pages/
: Contains files that are associated with a route based on its file name, see Next.js' docs.public/
: Stores static files like images, see Next.js' docs.requests/
: Contains several files, one for each entity/model in our application. We define code for fetching data on the client-side here.server/
: Contains almost all of our back-end code. This is where we put our Mongoose models and business logic.utils/
: For code used across root directories.