Skip to content

Repository files navigation

Pickler

A monorepo using npm workspaces, Turborepo, Next.js App Router, and strict TypeScript.

Development

Use Node 22.22 or newer and npm 10.9.3. Run from the repository root:

npm ci
npm run dev

Web: http://localhost:3000. Liveness endpoint: /api/v1/health.

npm run lint
npm run typecheck
npm test
npm run build

Repository structure

apps/agent-service/         # Local Mastra research pilot (independent of frontend)
apps/web/src/
  app/                      # Presentation: pages and Route Handlers
    api/v1/health/route.ts
  server/container.ts       # Server-only composition and dependency injection
packages/
  core/src/                 # Business: domain, use cases, and ports
  infrastructure/src/       # Clock, PostgreSQL, Exa and Polymarket adapters
  api-schema/src/           # Public, serializable HTTP DTOs
  ui/src/                   # Product-independent React components and styles
  chain/src/                # Public types; future ABIs and per-network deployments
  typescript-config/        # Shared TypeScript configuration
contracts/                  # Independent Foundry project
  src/                      # Solidity contracts
  test/                     # Unit, fuzz, and invariant tests
  script/                   # Deployment scripts

The web health endpoint remains a liveness check. The independent agent research pilot adds tenant-scoped PostgreSQL jobs, Exa research, Polymarket market data and Mastra Studio. It produces research decisions without placing orders. Credentials and the exact compatible model must be configured locally.

npm run agent -- init
# Fill in apps/agent-service/.env, then:
npm run dev:agent

npm run dev starts only the frontend. The agent has its own terminal and Studio at http://127.0.0.1:4111. Core, infrastructure and API schemas compile to ESM; root development/build/test commands build dependencies in order. Read the pilot guide before running paid connection checks or research. The broader runtime specification also describes future capabilities outside this pilot.

See architecture decisions and repository agent instructions. Every app and package has its own AGENTS.md; read it before working in that project and update it when the project changes. Repository documentation is maintained in English.

Solidity

Foundry configuration and directories are included. Contracts remain undefined until their business rules, permissions, and target network are established. These commands require Foundry:

npm run contracts:build
npm run contracts:test

On-chain deployments run explicitly, never as a side effect of build. Solidity has its own toolchain; contract commands are independent of web tasks. The current source and test directories are empty.

Formatting

The monorepo uses Prettier for consistent formatting and ESLint for code quality and architecture boundaries. Editor defaults are in .editorconfig; configure your editor to use the repository's Prettier installation when formatting on save.

npm run format
npm run format:check
npm run lint:fix

Run format after applying lint fixes. The pull request formatting check must pass. Generated output, local databases, environment files and the npm lockfile are excluded. Solidity uses forge fmt --root contracts --check separately. See the root AGENTS.md for readability conventions.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages