🖥️ Tact.web
Web version for desktops.
Quick Start
Requirements:
- Docker Desktop (opens in a new tab).
- Access tokens for
- Auth0 (opens in a new tab)
- Font Awesome (opens in a new tab)
- GitHub (opens in a new tab) (optional)
- Graphite (opens in a new tab) (optional)
- Sentry (opens in a new tab) (optional)
- Vercel (opens in a new tab) (optional)
$ alias run=./Taskfile
$ run setup
$ run wait-for-it -q -w localhost:3000 -- open http://localhost:3000/ &
$ run start # or `run dev`
Manage secrets
You can update tokens by the following commands
$ run set_auth0
$ run set_fontawesome_token
$ run set_github_token
$ run set_graphite_token
$ run set_sentry_token
$ run set_vercel_token
Deep dive
Local development
You could use a local environment, but it's not deterministic
$ npm ci --ignore-scripts --include=dev
$ npm run dev
$ npm run build
$ npm run start
$ run wait-for-it -q -w localhost:3000 -- open http://localhost:3000/ &
$ npm run start
Local development with the Docker
You could use Docker CLI (opens in a new tab) to build a deterministic environment
$ run install [--from-scratch]
$ run dev
$ run build [--from-scratch]
$ run start [--from-scratch]
$ run wait-for-it -q -w localhost:3000 -- open http://localhost:3000/ &
$ run start
$ run npm ci --ignore-scripts --include=dev
$ run npm ...
Local development inside the Docker
You could use Docker CLI (opens in a new tab) to build an isolated environment
$ run build docker [--from-scratch]
$ run start docker [--from-scratch]
$ run wait-for-it -q -w localhost:3000 -- open http://localhost:3000/ &
$ run start docker
Tools
Update
$ run refresh
Installation
$ run tools install
GitHub CLI
Useful: docs (opens in a new tab), src (opens in a new tab).
$ run gh help
$ run @workflows
Graphite CLI
Useful: docs (opens in a new tab), src (opens in a new tab).
$ run gt --help
Sentry CLI
Useful: docs (opens in a new tab), src (opens in a new tab).
$ run sentry --help
Vercel CLI
Useful: docs (opens in a new tab), src (opens in a new tab).
$ run vercel help
$ run @deployments clean
You can avoid using the token parameter when working with these commands, it's substituted automatically under the hood.
Manual deployment
$ run deploy
$ run deploy prod
Tips and tricks
Vercel (opens in a new tab) shows inconsistent state of dependencies
You can drop Vercel's cache by running:
$ run vercel --force
Font Awesome (opens in a new tab) has failed builds after version update
Check fontawesome-common-types
, it must be exactly one.
$ npm list | grep fortawesome
# if not, do the following
$ npm update
See, the issue (opens in a new tab).
License
GNU Affero General Public License v3.0 or later. See LICENSE to see the full text.
We use CLA assistant (opens in a new tab) to sign copyright agreements while contributing. See CLA (opens in a new tab) to see the full text.
made with ❤️ for everyone by OctoLab