# Documentation - [Overview](/docs/getting-started): What Zap Studio is, what each package covers, and how we ship agent skills. - [App Icons](/docs/local-ts/app-icons): Set up proper icons for your Local.ts application across all platforms and contexts. - [Autostart](/docs/local-ts/autostart): Configure your Local.ts app to launch automatically when users log into their computer. - [Code Quality](/docs/local-ts/code-quality): Linting, formatting, testing, and monorepo task orchestration in Local.ts. - [Database](/docs/local-ts/database): SQLite database with Diesel ORM, automatic migrations, and a layered architecture in Local.ts. - [Distribution](/docs/local-ts/distribution): Package and distribute your Local.ts app with native bundles, code signing, automatic updates, and CI/CD. - [Getting Started](/docs/local-ts/getting-started): Set up Local.ts and run your first build. - [Overview](/docs/local-ts): A starter kit for building local-first applications for desktop and mobile. - [Logging](/docs/local-ts/logging): Built-in logging with multi-target output to console, webview, and persistent files. - [Motivation](/docs/local-ts/motivation): Why Local.ts was created and the philosophy behind local-first desktop software. - [Notifications](/docs/local-ts/notifications): Send native system notifications with permission handling and user preference support in Local.ts. - [Project Identity](/docs/local-ts/project-identity): How to update your app's name, version, and branding after cloning Local.ts. - [Settings](/docs/local-ts/settings): Persistent settings system with type-safe APIs and a pre-built Settings page. - [Sidebar Navigation](/docs/local-ts/sidebar): Customize the sidebar navigation links and structure in your Local.ts app. - [Splash Screen](/docs/local-ts/splash-screen): Display a branded loading screen while your Local.ts app initializes. - [System Tray](/docs/local-ts/system-tray): Run your Local.ts app in the background with a system tray icon, menu, and settings integration. - [Theming](/docs/local-ts/theming): Implement light, dark, and system theme modes in your Local.ts application. - [Window State](/docs/local-ts/window-state): Automatically remember window size, position, and state across app restarts in Local.ts. - [API Methods](/docs/packages/fetch/api-methods): Convenient HTTP verb methods on the api object with automatic validation and full type inference. - [Factory Pattern](/docs/packages/fetch/create-fetch): Create pre-configured fetch instances with base URLs and default headers using createFetch. - [Error Handling](/docs/packages/fetch/errors): Handle HTTP and validation errors with FetchError and ValidationError in fetch. - [Using $fetch](/docs/packages/fetch/fetch-function): Low-level fetch function with optional schema validation and raw Response access. - [Overview](/docs/packages/fetch): A type-safe fetch wrapper with Standard Schema validation, convenient API methods, and custom error handling. - [Validation](/docs/packages/fetch/validation): Runtime response validation using Standard Schema in fetch. - [Conditions](/docs/packages/permit/conditions): Build complex authorization rules using and(), or(), not(), and has() condition combinators in permit. - [Creating Policies](/docs/packages/permit/creating-policies): Define resources, actions, context, and rules to build your first authorization policy with permit. - [Error Handling](/docs/packages/permit/errors): Handle authorization errors and ensure exhaustive type checking with PolicyError and assertNever. - [Overview](/docs/packages/permit): A type-safe, declarative authorization library with Standard Schema support and composable conditions. - [Merging Policies](/docs/packages/permit/merging-policies): Combine multiple policies with deny-overrides or allow-overrides strategies in permit. - [Policy Rules](/docs/packages/permit/policy-rules): Use allow(), deny(), and when() to define authorization rules in permit. - [Role-Based Access Control](/docs/packages/permit/roles): Implement RBAC with role hierarchies and multi-role support using hasRole() in permit. - [Concepts](/docs/packages/validation/concepts): Beginner-friendly concepts for schema validation in validation. - [Create Validators](/docs/packages/validation/create-validators): Use createStandardValidator and createSyncStandardValidator to build reusable validation functions. - [Getting Started](/docs/packages/validation/getting-started): Install validation and validate your first payload in a few lines. - [Handling Errors](/docs/packages/validation/handling-errors): Why validation error handling matters and how ValidationError helps you catch failures reliably. - [How to Validate](/docs/packages/validation/how-to-validate): Learn validation fundamentals and when to use standardValidate vs standardValidateSync. - [Overview](/docs/packages/validation): Understand Standard Schema, the interoperability problem it solves, and why Zap Studio built validation. - [Schema Guard](/docs/packages/validation/is-standard-schema): Understand the role of isStandardSchema and how to safely validate unknown schema inputs. - [Adapters](/docs/packages/webhooks/adapters): Build framework adapters with BaseAdapter and the normalized request/response contract. - [Getting Started](/docs/packages/webhooks/getting-started): Install the package and register your first schema-first webhook route. - [Guides](/docs/packages/webhooks/guides): Production-oriented provider guides for GitHub and Stripe webhooks. - [Overview](/docs/packages/webhooks): Schema-first webhook routing with a clear path from setup to production usage. - [Lifecycle Hooks](/docs/packages/webhooks/lifecycle-hooks): Use before, after, and onError hooks for logging, metrics, and centralized error handling. - [Verification](/docs/packages/webhooks/verification): Verify webhook authenticity with createHmacVerifier or a custom verify function.