-
-
Notifications
You must be signed in to change notification settings - Fork 103
Firebot V6 Design Doc
Erik Bigler edited this page Aug 8, 2022
·
16 revisions
- VS Code
- Electronjs (v20+)
- TypeScript (v4+)
- Frontend:
- React
- MobX (Global state management)
- TailwindCSS + HeadlessUI (styling + UI framework)
- Backend:
- Nestjs
- Testing:
- Unit: Jest
- E2E: Cypress or Puppeteer? (Research will be required to determine how these will work in Electron context)
- Tooling:
- ESLint (v7+)
- Prettier
- Webpack (v5+)
You can find out more about the tech used here
- Circular imports should be avoided
- Local data access must be abstracted to conform to a standard model
- Front end must request all local data from back end
- Streaming platform(s) must be abstracted to conform to a standard model
- Must use lower-case kebab-style naming
- Exception: React Component .tsx files should be pascal case
- Must not be of the following: assets, build, builds, configs, dist, docs
- 3rd party extension interface should be able to add functionality to firebot but will not be able to modify native functionality
- Must accept contribution agreement
- Are only accepted through pull requests
- Must be adequately commented
- Must pass linting
- Must include and pass tests
- Must be passed through code formatter
- Must adhere to directory structuring and filename formatting; see below
- Must not have directory names from our exclusion list; see below
Still need help? Come chat with us in the #help channel of our Discord server.