Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/chrisvander/crate. The future of cloud storage.
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899set dotenv-load := trueset positional-arguments := trueexport PATH := justfile_directory() + "/node_modules/.bin:" + env("PATH")# List available commands.default: @just --list# Install JavaScript dependencies from the lockfile.install: bun install --frozen-lockfile# Start the server and web client together.[parallel]dev: dev-server dev-webdev-server: bacon --headless serverdev-web: bun run --filter @crate/web dev[parallel]build: build-server build-webbuild-server: cargo build --release --locked -p crate-serverbuild-web: bun run --filter @crate/web build# Run all generate operationsgenerate: generate-lexicons generate-apipublish: publish-lexicons# Generate only the ATProto Lexicons from Rust.generate-lexicons: cargo run --locked --quiet -p crate-protocol --bin export-lexicons -- lexicons# Publish generated schemas with the signed-in Goat account (use create for first publication).publish-lexicons operation="update": generate-lexicons #!/usr/bin/env bash set -euo pipefail case "$1" in create|update) ;; *) echo 'Expected create or update' >&2; exit 1 ;; esac command -v goat >/dev/null command -v jq >/dev/null record=$(mktemp) trap 'rm -f "$record"' EXIT for schema in lexicons/network/crate/*.json; do id=$(jq -er '.id' "$schema") jq '. + {"$type": "com.atproto.lexicon.schema"}' "$schema" > "$record" goat record "$1" --no-validate --rkey "$id" "$record" done# Generate Lexicons, OpenAPI, and TypeScript/Swift clients.generate-api: bun scripts/generate-api.tscheck-contracts: bun scripts/generate-api.ts --checktest: vitest run cargo test --workspace --lockedtest-browser *args: playwright test "$@"test-swift: swift test --package-path packages/swift-clienttypecheck: bun node_modules/typescript/bin/tsc -b tsconfig.json bun run --filter @crate/web check:astroformat: oxfmt . cargo fmt --all bun run --filter @crate/web format:astroformat-check: oxfmt --check . cargo fmt --all --check bun run --filter @crate/web format:astro:checklint: oxlint . --deny-warnings cargo clippy --workspace --all-targets --locked -- -D warnings# Run the complete validation suite.check: format-check lint typecheck test check-contractsinfra-preview: pulumi preview --cwd infra --stack prodinfra-up: pulumi up --cwd infra --stack prod