To build the entire repository and run the application, follow these steps:
-
The 2 main system dependencies to install are:
-
Clone the repo:
git clone https://github.com/cardstack/boxel.git
-
Install the package dependencies:
echo 'export VOLTA_FEATURE_PNPM=1' >> ~/.profile && source ~/.profile pnpm install
-
Build the boxel-ui and boxel-motion addons:
cd ./packages/boxel-ui/addon pnpm rebuild:icons pnpm build cd ../../boxel-motion/addon pnpm build
-
Build the boxel-icons:
cd ./packages/boxel-icons pnpm build
-
Build the host:
cd ./packages/host pnpm start
-
Run the realm server:
cd ./packages/realm-server DISABLE_MODULE_CACHING=true pnpm start:all
Note: Ensure that the realm-server is completely started by looking out for tor the test-realm indexing output.
Realm http://localhost:4202/test/ has started ({ "instancesIndexed": 8, "instanceErrors": 0, "moduleErrors": 0 })
-
Register ALL:
cd ./packages/matrix pnpm register-all
-
Verify registration:
cd ./packages/matrix pnpm start:admin
Visit http://localhost:8080. Type in Username = "admin", Password: "password" Homeserver URL: http://localhost:8008
-
Host App
- Visit http://localhost:4201/
- Enter the registration flow and create a Boxel Account
- When prompted for an authentication token, type in "dev-token"
-
Validate email for login
- Visit SMTP UI at http://localhost:5001/
- Validate email
- Go back to Host http://localhost:4201/ and login
-
Perform "Setup up Secure Payment Method" flow
- More detailed steps can be found in our README Payment Setup section
-
Run ai bot (Optional):
cd ./packages/ai-bot OPENROUTER_API_KEY=*** pnpm start
If you experience issues, you can start from scratch by running this command
pnpm clear-caches
rm -rf ./packages/matrix/synapse-data
docker ps -a --format '{{.Names}}' | grep -E 'boxel-smtp|boxel-synapse|synapse-admin' | xargs -r docker stop
docker ps -a --format '{{.Names}}' | grep -E 'boxel-smtp|boxel-synapse|synapse-admin' | xargs -r docker rm -v