Skip to content

DigitalDaDie/P2J-Planner

Repository files navigation

P2J Planner

Collaborative trip planning built as a flat, feature-oriented monorepo.

Workspace

web/
  app/
  src/features/
  src/server/
packages/
  config-eslint/
  config-typescript/
  contracts/
  db/
  route-engine/
  trip-analysis/
  trip-domain/
  trip-editor/
  trip-fixtures/
docs/
  *.md

Module Rules

  • web/app: Next.js routes only
  • web/src/features: client-side features only
  • web/src/server: server-only orchestration and HTTP helpers
  • web/src/features/trip-planner: one feature with fixed internal layers: model / ui / shell / editor / services / shared / styles
  • web/src/features/trip-planner/editor: split by editing subdomain: layout / timeline / place-binding / planner / workspace
  • web/src/features/trip-planner/services: split by transport/persistence responsibility: http / auth / workspace / planner / local
  • packages/trip-domain: pure types, selectors, factories
  • packages/trip-editor: pure document commands
  • packages/trip-fixtures: demo data and default seed content
  • packages/route-engine: deterministic route planning and providers
  • packages/trip-analysis: user-facing analysis derived from domain data
  • packages/contracts: request and response schemas
  • packages/db: database runtime and schema only
  • packages/db: SQLite runtime-first package with Prisma schema as the schema source of truth

Each module exposes a small public surface through its package index.ts or module index.ts. Internal files are free to change without becoming public API.

Route Surface

web/app/api is intentionally flat. Route handlers live one level under app/api:

  • auth-login
  • auth-register
  • auth-session
  • auth-logout
  • places-search
  • planner-feasibility
  • workspace-bootstrap
  • trip-create
  • trip-item
  • trip-invite
  • trip-join

Run

corepack enable
pnpm install
pnpm dev

Open http://localhost:3000.

Checks

pnpm lint
pnpm typecheck
pnpm test
pnpm build

Map Setup

export NEXT_PUBLIC_MAP_PROVIDER=auto
export NEXT_PUBLIC_AMAP_KEY=your_amap_web_key
export NEXT_PUBLIC_AMAP_SECURITY_CODE=your_amap_security_code
export AMAP_WEB_SERVICE_KEY=your_amap_web_service_key

Architecture Docs

About

P2J Planner — For P people who still want perfectly planned trips. Design your journey like a flow, not a form.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors