You've stumbled upon the MindHive GitHub repository! This holds the code for the MindHive educational platform. If you wish to try out the platform and experience it for yourself, navigate to our website hosted at mindhive.science. If you're a developer wanting to contribute to the project read on!
Before setting up the dev environment, we want to walk you through our preferred method for contributing:
- Fork the project into your own GitHub repo
- Clone the forked project from your GitHub to your local repo
- Set up the project in the local development environment (see below)
- Make changes in the project
- Push changes in the local version
- git add -A
- git commit -m "message explaining the commit"
- git push origin branch-name
- Create a pull request for the main version
To make this tutorial a bit easier to follow, we've broken it down into multiple steps.
- Install node and npm (see instructions)
- You may have to use different node versions for the frontend and backend: the frontend runs on Node 26 and the backend (keystone) on Node 23. To install a specific node version and manage them, you may use the package called n or nvm.
- Run
npm installin both frontend and keystone folders. If npm complains about dependencies in the frontend folder, usenpm install --legacy-peer-deps
- (Optional) In the frontend folder, copy
.env.exampleto.envto customize endpoints or add aNOTION_KEY— the defaults work for local development without any.envfile. - In the backend folder, copy .env.example to a
.envfile in that folder and fill in the values. - Go to the keystone folder and run
npm run devThe server should run on http://localhost:4444. - Go to the frontend folder and run
npm run dev. The frontend should run on http://localhost:3000
Deploying to production is a different process. For more details, look into the individual README files on the frontend and backend folders.
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 4.0 International License.
