Web dashboard & docs for Architus, a multi-purpose Discord bot
Monorepo for all frontend source code under the Architus project. Archit.us provides a web dashboard server administrators and members can use to modify settings, view statistics and logs, and manage custom emoji and auto-responses. Docs.archit.us provides the platform to host a user guide, a changelog, and implementation documentation.
To use Archit.us to manage the Architus bot on installed servers or add it to new ones, connect with Discord to be redirected to the web dashboard, where you can view settings and add the bot to your servers.
Architus is an open source project, and we welcome contributors. The monorepo is split into a set of Yarn workspaces/Lerna packages, and contains the following packages:
@architus/app
- Main web dashboard codebase, built with React, Gatsby, TypeScript, and Linaria@architus/docs
- Documentation site, built with React, Gatsby, TypeScript, and Linaria@architus/lib
- Utility functions/types, built with TypeScript@architus/facade
- Architus design system, including React components and design tokens to be consumed in downstream website projects via LinariaTo start working on any of the above packages, you’ll need to have Node.js installed. Once installed, run the following commands to download dependencies:
npm install -g yarn
yarn install
Because both websites are built with Gatsby at their core, there are two options to preview the app while developing: a hot reload-enabled development server (recommended) and a statically-generated site preview.
At the repository root, run:
yarn workspace @architus/<package> start
yarn workspace @architus/<package> build
yarn workspace @architus/<package> serve
Each project uses ESLint and Prettier to enforce TypeScript code style across the repository, in addition to the TypeScript compiler. To run them locally, run:
yarn lint
yarn typecheck
Each package has testing configurations, based on Jest, for use with creating unit tests and tracking coverage. To run all tests, run:
yarn test
If you have an issue about the bot, the web dashboard, or have any other questions, feel free to create a new issue or join our Discord server
This project uses a variety of useful tooling to help develop, manage, and deploy the application. Among those are:
master
) is deployed at archit.usdevelop
) is deployed at develop.archit.us