Chalkboard is a web application that combines the functionality of a code editor with a canvas for drawing and diagramming. It is designed for educators and developers who want to explain concepts through code and visuals. With Chalkboard, you can:
- Draw freehand, squares, text, and code editors on a canvas
- Log in to save and load canvases with OAuth authentication
- Write and execute code with the built-in code editor
The application can be viewed live at https://chalkboard.wvaviator.com/.
I welcome any contributions to the project! Here are the steps for running the application with your own setup and infrastructure.
To create your own environment for the application, you will need these prerequisite services to fill out all the environment variables.
- Fork and clone the repository
git clone https://github.com/<your-username>/chalkboard.git
- Install dependencies
cd chalkboard
yarn
- Create a .env file in the root of the project and add the following environment variables:
MONGODB_URI=
RAPIDAPI_KEY=
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
NEXTAUTH_URL='http://localhost:3000/'
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_REGION=
AWS_BUCKET=
- Start the development server
yarn dev
- Create a ticket in this repository with your suggested feature or bug fix.
- Checkout a new feature branch in your local repository to associate with your ticket.
git checkout -b my-ticket
- After making your changes and committing, open a pull request into chalkboard/development
- ???
- Profit