Something went wrong. Try again.
A decentralized music tracking and discovery platform built on AT Protocol 🎵 rocksky.app
Something went wrong. Try again.
10 kB · 184 lines
JSON
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185{ "name": "@rocksky/api-purescript", "version": "0.0.1", "private": true, "type": "module", "engines": { "node": ">=22.15.0" }, "scripts": { "build": "spago build", "bundle": "spago bundle -p rocksky-api --module Rocksky.Index --outfile dist/index.js --platform node --bundler-args \"--packages=external\" && spago bundle -p rocksky-api --module Rocksky.Server --outfile dist/server.js --platform node --bundler-args \"--packages=external\" && spago bundle -p rocksky-api --module Rocksky.Views --outfile dist/views.js --platform node --bundler-args \"--packages=external\"", "dev": "bun run db:seed && concurrently 'node bin/run.js Rocksky.Index' 'node bin/run.js Rocksky.Server'", "start": "node --enable-source-maps bin/run.js Rocksky.Index", "start:xrpc": "node --enable-source-maps bin/run.js Rocksky.Server", "start:views": "node --enable-source-maps bin/run.js Rocksky.Views", "prod:all": "concurrently --kill-others --kill-timeout 10000 --names rest,xrpc 'node --enable-source-maps api/dist/index.js' 'node --enable-source-maps api/dist/server.js'", "prod:views": "node --enable-source-maps api/dist/views.js", "script": "node bin/run.js", "test": "spago test", "format": "purs-tidy format-in-place 'api/src/**/*.purs' 'api/test/**/*.purs' 'packages/*/src/**/*.purs' 'app-proxy/src/**/*.purs' 'cli/src/**/*.purs' 'feeds/src/**/*.purs'", "test:xrpc": "spago build -p rocksky-api && node bin/test-xrpc.js", "test:teal": "spago build -p rocksky-api && node bin/test-teal.js", "test:typesense": "spago build -p rocksky-api && node bin/test-typesense.js", "audit:port": "python3 bin/port-status.py", "test:shouts-likes": "spago build -p rocksky-api && node bin/test-shouts-likes.js && node bin/test-notification-fanout.js", "test:matching": "spago build -p rocksky-api && node bin/test-matching.js", "test:nowplaying": "spago build -p rocksky-api && node bin/test-nowplaying.js", "test:submissions": "spago build -p rocksky-api && node bin/test-submissions.js", "test:status": "spago build -p rocksky-api && node bin/test-status.js", "test:discogs": "spago build -p rocksky-api && node bin/test-discogs.js", "test:rest-storage": "spago build -p rocksky-api && node bin/test-rest-storage.js", "test:events": "spago build -p rocksky-api && node bin/test-events.js", "test:rsql": "spago build -p rocksky-api && node bin/test-rsql.js", "test:albums": "spago build -p rocksky-api && node bin/test-albums.js", "test:artists": "spago build -p rocksky-api && node bin/test-artists.js", "test:graph": "spago build -p rocksky-api && node bin/test-graph.js", "test:profile": "spago build -p rocksky-api && node bin/test-profile.js", "test:spotify": "spago build -p rocksky-api && node bin/test-spotify.js", "test:charts": "bun run build && node bin/test-charts.js", "test:spotify-xrpc": "bun run build && node bin/test-spotify-xrpc.js", "test:playlists": "bun run build && node bin/test-playlists.js", "test:feed": "bun run build && node bin/test-feed.js", "test:create-scrobble": "bun run build && node bin/test-create-scrobble.js", "test:scrobble-reads": "bun run build && node bin/test-scrobble-reads.js", "test:song-catalog": "bun run build && node bin/test-song-catalog.js", "test:match-uris": "bun run build && node bin/test-match-uris.js", "test:song-match": "bun run build && node bin/test-song-match.js", "test:create-song": "bun run build && node bin/test-create-song.js", "test:wrapped": "bun run build && node bin/test-wrapped.js", "test:source-placeholders": "bun run build && node bin/test-source-placeholders.js", "test:oauth-client": "bun run build && node bin/test-oauth-client.js", "test:basic-scripts": "bun run build && node bin/test-basic-scripts.js", "test:session-maintenance": "bun run build && node bin/test-session-maintenance.js", "test:replaygain-backfill": "bun run build && node bin/test-replaygain-backfill.js", "test:analysis-backfill": "bun run build && node bin/test-analysis-backfill.js", "test:discogs-backfill": "bun run build && node bin/test-discogs-backfill.js", "test:likes-backfill": "bun run build && node bin/test-likes-backfill.js", "test:scrobble-dedup-script": "bun run build && node bin/test-scrobble-dedup-script.js", "test:record-dedup": "bun run build && node bin/test-record-dedup.js", "test:sync-scripts": "bun run build && node bin/test-sync-scripts.js", "test:playlist-sync-script": "bun run build && node bin/test-playlist-sync-script.js", "test:track-uri-backfill": "bun run build && node bin/test-track-uri-backfill.js", "test:feed-genres-scripts": "bun run build && node bin/test-feed-genres-scripts.js", "test:typesense-import-script": "bun run build && node bin/test-typesense-import-script.js", "test:isrc-backfill": "node bin/test-isrc-backfill.js", "test:event-script": "node bin/test-event-script.js", "test:collections-script": "node bin/test-collections-script.js", "test:riff-backfill": "node bin/test-riff-backfill.js", "test:recommendation-common": "node bin/test-recommendation-common.js", "test:artist-recommendations": "node bin/test-artist-recommendations.js", "test:album-recommendations": "node bin/test-album-recommendations.js", "test:track-recommendations": "node bin/test-track-recommendations.js", "test:upload-metadata": "node bin/test-upload-metadata.js", "test:upload-library": "node bin/test-upload-library.js", "test:upload-stream": "node bin/test-upload-stream.js", "test:upload-ingest": "node bin/test-upload-ingest.js", "test:users-library": "node bin/test-users-library.js", "test:users-details": "node bin/test-users-details.js", "test:users-profile": "node bin/test-users-profile.js", "test:users-mutations": "node bin/test-users-mutations.js", "test:users-shouts": "node bin/test-users-shouts.js", "test:rest-entry": "node bin/test-rest-entry.js", "check:bundles": "node bin/check-bundles.js", "test:server": "node bin/test-server.js", "test:all": "bun run build && bun run test && node bin/test-all.js", "db:migrate": "node ../tools/db/migrate-cli.mjs ../apps/api/drizzle", "env:generate": "node bin/generate-env.js", "db:seed": "node ../tools/db/seed-local.mjs", "backfill:jetstream": "node bin/run.js Rocksky.Scripts.BackfillJetstream", "test:jetstream-backfill": "bun run build && node bin/test-jetstream-backfill.js", "repair:artist-pictures": "node bin/run.js Rocksky.Scripts.RepairArtistPictures", "test:artist-pictures": "node --test ../tools/db/artist-pictures.test.mjs", "build:app-proxy": "spago build -p rocksky-app-proxy", "bundle:app-proxy": "bun run build:app-proxy && esbuild app-proxy/worker.js --bundle --format=esm --platform=browser --outfile=app-proxy/dist/worker.js", "test:app-proxy": "spago build -p rocksky-app-proxy && node bin/test-app-proxy.js", "build:cli": "spago build -p rocksky-cli && node bin/build-cli-ui.js", "start:cli": "node cli/index.js", "test:cli": "bun run build:cli && node bin/test-cli.js", "bundle:cli": "bun run build:cli && esbuild cli/index.js --bundle --format=esm --platform=node --packages=external --outfile=cli/dist/index.js", "build:feeds": "spago build -p rocksky-feeds", "start:feeds": "node feeds/index.js", "test:feeds": "bun run build:feeds && node bin/test-feeds.js", "bundle:feeds": "bun run build:feeds && esbuild feeds/index.js --bundle --format=esm --platform=node --packages=external --outfile=feeds/dist/index.js" }, "dependencies": { "@atproto/api": "^0.13.31", "@atproto/common": "^0.4.6", "@atproto/identity": "^0.4.5", "@atproto/jwk-jose": "0.1.11", "@atproto/lex": "^0.3.0", "@atproto/lexicon": "^0.4.5", "@atproto/oauth-client-node": "0.3.16", "@atproto/syntax": "^0.3.1", "@atproto/xrpc-server": "^0.7.8", "@aws-sdk/client-s3": "^3.1052.0", "@aws-sdk/s3-request-presigner": "^3.1052.0", "@bsky/jetstream": "1.0.0", "@hono/node-server": "^1.13.8", "@opentelemetry/api": "^1.9.0", "@opentelemetry/api-logs": "^0.200.0", "@opentelemetry/auto-instrumentations-node": "^0.58.0", "@opentelemetry/exporter-logs-otlp-http": "^0.200.0", "@opentelemetry/exporter-metrics-otlp-http": "^0.200.0", "@opentelemetry/exporter-trace-otlp-http": "^0.200.0", "@opentelemetry/resources": "^2.0.0", "@opentelemetry/sdk-logs": "^0.200.0", "@opentelemetry/sdk-metrics": "^2.0.0", "@opentelemetry/sdk-node": "^0.200.0", "@opentelemetry/sdk-trace-base": "^2.0.0", "@opentelemetry/semantic-conventions": "^1.32.0", "@pyroscope/nodejs": "^0.4.5", "@rocksky/analysis": "file:../crates/analysis-node", "@rsql/ast": "^1.6.0", "@rsql/parser": "^1.6.0", "axios": "^1.7.9", "better-sqlite3": "^12.4.1", "chalk": "^5.4.1", "consola": "^3.4.2", "cors": "^2.8.5", "dayjs": "^1.11.13", "dotenv": "^16.4.7", "drizzle-orm": "^0.44.2", "envalid": "^8.0.0", "express": "^5.1.0", "hono": "^4.4.7", "http-proxy-middleware": "^3.0.5", "ioredis": "^5.8.1", "iron-session": "^8.0.4", "jose": "^6.1.0", "jsonwebtoken": "^9.0.2", "kysely": "^0.27.5", "libsodium-wrappers": "^0.8.4", "music-metadata": "^11.12.3", "nats": "^2.29.2", "node-cron": "^4.2.1", "node-taglib-sharp": "^6.0.3", "pg": "^8.13.3", "prompts": "^2.4.2", "redis": "^4.7.0", "redlock": "^5.0.0-beta.2", "sharp": "^0.33.5", "typesense": "^3.0.6", "unstorage": "^1.14.4", "uuid": "^11.1.0", "ws": "^8.18.1", "firebase-admin": "^14.5.0" }, "devDependencies": { "concurrently": "^9.2.0", "purescript": "^0.15.15", "purs-tidy": "^0.11.0", "spago": "next", "drizzle-kit": "^0.31.1", "yaml": "^2.8.0" }, "trustedDependencies": [ "better-sqlite3", "sharp", "purescript" ], "patchedDependencies": { "@bsky/jetstream@1.0.0": "../patches/@bsky%2Fjetstream@1.0.0.patch" }}