Tact.web

🖥️ Tact.web

Web version for desktops.

Quick Start

Requirements:

$ 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