Z8 Docs
Technical Docs

Technical Documentation

Technical information for developers working on the Z8 project

Technical documentation for developers working on Z8, a Turborepo monorepo with product, docs, marketing, extension, mobile, and desktop applications.


Architecture

Z8 is built as a Turborepo monorepo, managing shared logic and multiple application targets.

AppPathDescription
Webapps/webappNext.js 16 application for the main product UI and HTTP APIs.
Marketingapps/marketingNext.js 16 marketing site for public-facing pages.
Mobileapps/mobileExpo mobile app for on-the-go time tracking and employee workflows.
Desktopapps/desktopTauri desktop app for lightweight workstation workflows.
Extensionapps/extensionVite-based browser extension workspace.
Docsapps/docsNext.js 16 + Fumadocs site for technical and product documentation.

Monorepo Structure

The tree below is a simplified view of the current top-level app layout, not a full file listing:

turbo.json
package.json

Tech Stack

  • Frameworks: Next.js 16 for web and docs, Expo for mobile, Tauri for desktop
  • Language: TypeScript, plus Rust for Tauri internals
  • Database: PostgreSQL with Drizzle ORM
  • Auth: Better Auth with passkeys, 2FA, social OAuth, and organization-scoped auth extensions
  • Styling: Tailwind CSS v4 and shadcn/ui
  • State Management: Effect services for server-side orchestration
  • Date/Time: Luxon DateTime
  • Monorepo Tooling: Turborepo with pnpm workspaces

Service Architecture

The application uses Effect-driven services and focused domain modules for orchestration, authorization, notifications, and background work.

analytics.service.ts
app-access.service.ts
auth.service.ts
authorization.service.ts
change-policy.service.ts
email.service.ts
onboarding.service.ts
permissions.service.ts
reporting.service.ts
time-entry.service.ts
time-record.service.ts
work-policy.service.ts

Key Libraries

LibraryPurpose
EffectType-safe service composition
LuxonTimezone-aware date/time handling
TanStack FormForm state management
BullMQBackground job processing
Better AuthAuthentication, organizations, passkeys, and enterprise auth features
FumadocsDocumentation rendering for the docs app

On this page