Track the project roadmap on OpenProject.
Before contributing, make yourself familiar with our contribution guidelines, the code style guidelines, and the technical documentation for this project.
Before getting started, you'll want to install:
- Git
- mise-en-place
Then proceed to setup:
# clone the repository
git clone --recursive https://github.com/stoatchat/for-web client
cd client
# update submodules if you pull new changes
# git submodule init && git submodule update
# install all packages
mise install:frozen
# build deps:
mise build:deps
# or build a specific dep (e.g. stoat.js updates):
# pnpm --filter stoat.js run build
# customise the .env
cp packages/client/.env.example packages/client/.env
# run dev server
mise dev
# run all CI checks locally
mise checkFinally, navigate to http://local.revolt.chat:5173.
If you want to pull in Stoat brand assets after pulling, run the following:
# update the assets
git -c submodule."packages/client/assets".update=checkout submodule update --init packages/client/assetsYou can switch back to the fallback assets by running deinit and continuing as normal:
# deinit submodule which clears directory
git submodule deinit packages/client/assets# install packages
mise install:frozen
# build dependencies
mise build:deps
# build for web
mise build
# ... when building for Stoat production
mise build:prodYou can now deploy the directory packages/client/dist.
The app currently needs the following routes:
/login/pwa/dev/discover/settings/invite/bot/friends/server/channel
This corresponds to Content.tsx#L33.