Skip to main content

Dependencies Overview

This document provides an overview of dependencies across all Sprout repositories.

Shared Dependencies

Many repositories share common dependencies. Here are the most frequently used:

TypeScript & Build Tools

  • TypeScript: ^5.1.3 - ^5.7.2 (varies by repo)
  • ts-node: ^10.9.1 - ^10.9.2
  • tsconfig-paths: ^4.2.0

Testing

  • Jest: ^29.5.0
  • ts-jest: ^29.1.0
  • supertest: ^7.0.0

Code Quality

  • ESLint: ^8.42.0 - ^9.13.0
  • Prettier: ^3.0.0
  • @typescript-eslint/parser: ^8.0.0
  • @typescript-eslint/eslint-plugin: ^8.0.0

Common Libraries

  • date-fns: ^3.4.0 - ^4.1.0
  • zod: ^3.22.4 - ^3.24.1
  • uuid: ^9.0.1 - ^11.0.4
  • axios: ^1.8.2 - ^1.10.0

Repository-Specific Dependencies

sprout_backend

Framework:

  • @nestjs/core: ^10.0.0
  • @nestjs/common: ^10.0.0
  • @nestjs/platform-express: ^10.0.0

Database & ORM:

  • @prisma/client: ^5.21.0
  • prisma: ^5.21.0

Queue & Cache:

  • bullmq: ^5.26.2
  • @nestjs/bullmq: ^10.2.2
  • cache-manager: ^5.7.6
  • cache-manager-redis-yet: ^5.1.5

Search:

  • meilisearch: ^0.45.0
  • nestjs-meilisearch: ^2.1.8

Monitoring:

  • @sentry/nestjs: ^8.35.0
  • @sentry/node: ^9.5.0
  • @willsoto/nestjs-prometheus: ^6.0.2
  • prom-client: ^15.1.3

Observability:

  • @opentelemetry/api: ^1.9.0
  • @opentelemetry/sdk-node: ^0.53.0
  • nestjs-pino: ^4.1.0
  • pino: ^9.5.0

sprout_etl

Framework:

  • fastify: ^4.26.1
  • @fastify/cors: ^9.0.1
  • @fastify/helmet: ^11.1.1
  • @fastify/swagger: ^8.14.0

Queue:

  • bullmq: ^5.26.2
  • ioredis: ^5.3.2

Database:

  • @prisma/client: ^5.21.0
  • prisma: ^5.21.0

Search:

  • meilisearch: ^0.45.0

Monitoring:

  • @sentry/node: ^9.5.0
  • prom-client: ^15.1.3
  • pino: ^9.5.0
  • pino-loki: ^2.6.0

pricing_dashboard

Framework:

  • react: ^18.3.1
  • react-dom: ^18.3.1
  • vite: ^5.4.8
  • @vitejs/plugin-react: ^4.3.2

UI Components:

  • @radix-ui/react-*: Various versions
  • tailwindcss: ^3.4.13
  • lucide-react: ^0.451.0

State Management:

  • @tanstack/react-query: ^5.59.16
  • @trpc/client: ^10.45.2
  • @trpc/server: ^10.45.2

Search:

  • meilisearch: ^0.47.0

Charts:

  • recharts: ^2.15.1

cloudflare-workers

Cloudflare:

  • wrangler: ^4.0.0

Scraping:

  • @mendable/firecrawl-js: ^1.19.1
  • cheerio: ^1.0.0-rc.12

Search:

  • meilisearch: ^0.49.0

Monitoring:

  • @sentry/cloudflare: ^9.5.0
  • @microlabs/otel-cf-workers: ^1.0.0-rc.49

skybox_token_extractor

Core:

  • express: ^5.1.0
  • playwright: ^1.53.0
  • axios: ^1.10.0

overlevered_app

Framework:

  • react: ^18.3.1
  • react-dom: ^18.3.1
  • vite: ^5.4.10

Firebase:

  • firebase: ^10.14.1

UI:

  • @radix-ui/react-*: Various
  • tailwindcss: ^3.4.14

Payments:

  • stripe: ^14.20.0

overlevered_server

Firebase:

  • firebase-admin: ^11.8.0
  • firebase-functions: ^5.0.0

Payments:

  • stripe: ^14.4.0

Version Management

Node.js Version

  • Most repositories require Node.js 18.0 or higher
  • overlevered_server requires Node.js 20

Package Manager

  • The project uses Bun as the preferred package manager
  • Some repositories may have package-lock.json from npm, but prefer bun install

Dependency Updates

To update dependencies:

# Using bun
bun update

# Check for outdated packages
bun outdated

Security Considerations

  • All repositories use npm audit or equivalent for security scanning
  • Dependencies are regularly updated
  • Sensitive credentials are managed through Doppler, not in package.json

Next Steps