Taskorial is an open source task management web application that was created using the MERN Stack (MongoDB, Express, React, Node). The production frontend is hosted on Netlify and the production backend is hosted on Render. This project is an active development, and is open to contributions. If you are interested in contributing, please consult our contributing guide
- Before you start, ensure that you have node v20.11.0 installed. Other versions of node may work for this project, but they have not been tested.
- Create a fork of this repository.
- Clone your fork of this repository onto your development machine.
- Within
react-auth
andserver
directories, runnpm install
. - In the
react-auth
directory, create a.env
file and add an environment variable titledREACT_APP_API_URL
with the valuehttp://localhost:8080/
. - In the
server
directory, create a.env
file and add an environment variable titledDB_URL
.In order to get the value for this variable, you will need to create a shared cluster in MongoDB Atlas (See Shared Cluster Setup Instructions for help). Once you setup your cluster, you will have access to your connection string, which you should set as the value ofDB_URL
. - Add another variable to this file titled
RANDOM_TOKEN
. The value for this can be any string containing only English characters; 10 characters should be sufficient. - Please note that you currently will not be able to work on any functionality related to nodemailer at the moment, as it requires advanced setup that could pose security vulnerabilities. We are working on resolving this.
- If there is an problem with these instructions, please open an issue that explains the problem or open a pull request with a fix.
- In the
react-auth
directory, runnpm start
. - In the
server
directory, runnpm run dev
. - The React app will start at
http://localhost:3000/
. This is where the frontend will be served. - The server will start at
http://localhost:8080
. The API calls are made to this url in development.
We welcome and encourage any types of contributions to this project. Please consult our contributing guide prior to making any contributions.
This projecte is licensed under the GNU General Public License v3.0. You can view more info about this license here.
We are in the process of creating documentation for Taskorial on our wiki