new twitter without the fascists
Install Node Version Manager, and Docker Desktop.
To get started with local development, run the following command,
$ make dev
To terminate the detached background resources, such as mongodb and redis, run the following command after you terminate the make dev
command,
$ make stop-dev-resources
Chirp is broken up into reusable npm packages with npm workspaces.
All Chirp packages are prefixed with @chirp
. To install a Chirp package in another Chirp package, run the following command,
$ npm install @chirp/to-install --workspace @chirp/install-into
# For example, to install @chirp/types into @chirp/lib-node
$ npm install @chirp/types --workspace @chirp/lib-node
When installing third-party modules, some packages are kept in the global space (eg: Typescript), but some are only installed within a Chirp package.
# Install a package for all Chirp packages
$ npm install package-name
# Install for just a single Chirp package
$ npm install package-name --workspace @chirp/package-name
You can run one off commands on a package or against all of them,
$ npm run build --workspace @chirp-package-name
$ npm run build --workspaces
However, if you want to run multiple commands in parallel, you'll need to use a custom CLI tool.
$ ./cli/index.js --command run-all --npm dev