This is the code for the BlockNote documentation website. If you're looking to work on BlockNote itself, check the packages folder.
To get started with development of the website, you can follow these steps:
- Initialize the DB
If you haven't already, you can initialize the database with the following command:
cd docs && pnpm run init-dbThis will initialize an SQLite database at ./docs/sqlite.db.
- Setup environment variables
Copy the .env.example file to .env.local and set the environment variables.
cp .env.example .env.localIf you want to test logging in, or payments see more information below in the environment variables section.
- Start the development server from within the
./docsdirectory.
pnpm run devThis will start the development server on port 3000.
To test logging in, you can set the following environment variables:
AUTH_SECRET=test
# Github OAuth optionally
AUTH_GITHUB_ID=test
AUTH_GITHUB_SECRET=testNote: the GITHUB_ID and GITHUB_SECRET are optional, but if you want to test logging in with Github you'll need to set them. For local development, you'll need to set the callback URL to http://localhost:3000/api/auth/callback/github
To test payments, you can set the following environment variables:
POLAR_ACCESS_TOKEN=test
POLAR_WEBHOOK_SECRET=testFor testing payments, you'll need access to the polar sandbox which needs to be configured to point a webhook to your local server. This can be configured at: https://sandbox.polar.sh/dashboard/blocknote/settings/webhooks
You'll need something like ngrok to expose your local server to the internet.
ngrok http http://localhost:3000You'll need the webhook to point to ngrok like so:
https://0000-00-00-000-00.ngrok-free.app/api/auth/polar/webhooks
With this webhook pointing to your local server, you should be able to test payments.
Note, this is not required, if email sending is not configured, the app will log the email it would send to the console. Often this is more convenient for development.
To test email sending, you can set the following environment variables:
SMTP_HOST=
SMTP_USER=
SMTP_PASS=
SMTP_PORT=
SMTP_SECURE=falseWhen configured, you'll be able to send emails to the email address you've configured.
To setup with protonmail, you'll need to go to https://account.proton.me/u/0/mail/imap-smtp and create a new SMTP submission token.
You'll need to set the following environment variables:
SMTP_HOST=smtp.protonmail.com
[email protected]
SMTP_PASS=my-smtp-token
SMTP_PORT=587
SMTP_SECURE=falseTo submit your changes, open a pull request to the BlockNote GitHub repo. Pull requests will automatically be deployed to a preview environment.