Stoat for Desktop – application for Windows, macOS, and Linux
https://stoat.chat
- TypeScript 95.1%
- Nix 3.4%
- HTML 0.9%
- CSS 0.6%
| .github/workflows | ||
| .vscode | ||
| assets@bd432f2298 | ||
| src | ||
| .eslintrc.json | ||
| .gitignore | ||
| .gitmodules | ||
| .prettierrc | ||
| .release-please-manifest.json | ||
| CHANGELOG.md | ||
| chat.stoat.StoatDesktop.desktop | ||
| chat.stoat.StoatDesktop.metainfo.xml | ||
| default.nix | ||
| forge.config.ts | ||
| forge.env.d.ts | ||
| index.html | ||
| LICENSE | ||
| mise.toml | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| README.md | ||
| release-please-config.json | ||
| screenshot.png | ||
| strings.ts | ||
| tsconfig.json | ||
| vite.main.config.ts | ||
| vite.preload.config.ts | ||
| vite.renderer.config.ts | ||
Installation
- All downloads and instructions for Stoat can be found on our Website.
Development Guide
Contribution guidelines for Desktop app TBA!
Before getting started, you'll want to install:
- Git
- Node.js
- pnpm (run
corepack enable)
Then proceed to setup:
# clone the repository
git clone --recursive https://github.com/stoatchat/for-desktop stoat-for-desktop
cd stoat-for-desktop
# install all packages
pnpm i --frozen-lockfile
# start the application
pnpm start
# ... or build the bundle
pnpm package
# ... or build all distributables
pnpm make
Various useful commands for development testing:
# connect to the development server
pnpm start -- --force-server http://localhost:5173
# test the flatpak (after `make`)
pnpm install:flatpak
pnpm run:flatpak
# ... also connect to dev server like so:
pnpm run:flatpak --force-server http://localhost:5173
# Nix-specific instructions for testing
pnpm package
pnpm run:nix
# ... as before:
pnpm run:nix --force-server=http://localhost:5173
# a better solution would be telling
# Electron Forge where system Electron is
Pulling in Stoat's assets
If you want to pull in Stoat brand assets after pulling, run the following:
# update the assets
git -c submodule."assets".update=checkout submodule update --init assets
Currently, this is required to build, any forks are expected to provide their own assets.