# Documentation - [Introduction](/docs): A fully type-safe Object-Graph-Mapping framework for Neo4j and TypeScript - Getting Started - [Installation](/docs/getting-started/installation): Install neogma and configure your TypeScript project - [Connecting to Neo4j](/docs/getting-started/connection): Create a Neogma instance and connect to your Neo4j database - [Quick Start](/docs/getting-started/quick-start): Build your first graph application with neogma in minutes - Models - [Decorator-Based Models](/docs/models/decorator-based): Define Neo4j models using TypeScript decorators with full type inference - [ModelFactory (JavaScript)](/docs/models/model-factory): Define models using the ModelFactory function for JavaScript projects - [Validation](/docs/models/validation): Validate node properties using TypeBox schemas - [Properties and Schema](/docs/models/properties-and-schema): Understanding node properties, schemas, and type mappings - Relationships - [Defining Relationships](/docs/relationships/defining-relationships): Define relationships between Neo4j node models - [Creating Relationships](/docs/relationships/creating-relationships): Create relationships between nodes - [Managing Relationships](/docs/relationships/managing-relationships): Find, update, and delete relationships between nodes - [Eager Loading](/docs/relationships/eager-loading): Load nested relationships in a single query - CRUD Operations - [Creating Nodes](/docs/crud-operations/creating-nodes): Create single or multiple nodes with optional relationships - [Finding Nodes](/docs/crud-operations/finding-nodes): Query nodes with filtering, ordering, and pagination - [Updating Nodes](/docs/crud-operations/updating-nodes): Update node properties using instance methods or static operations - [Deleting Nodes](/docs/crud-operations/deleting-nodes): Delete nodes and optionally detach their relationships - Query Builder - [Query Builder](/docs/query-builder): Build Cypher queries programmatically with a fluent API - [Clauses](/docs/query-builder/clauses): All available QueryBuilder clauses and their options - [Parameters](/docs/query-builder/parameters): Safe parameter binding to prevent Cypher injection - Sessions & Transactions - [Sessions and Transactions](/docs/sessions-and-transactions): Manage Neo4j sessions and transactions for safe database operations - Integrations - [NestJS](/docs/integrations/nestjs): Use neogma with NestJS via the @neogma/nest module - Example Applications - [Overview](/docs/examples): Runnable example applications demonstrating neogma features - [TC39 Decorators](/docs/examples/decorators): Example app using TC39 standard decorators (recommended) - [Legacy Decorators](/docs/examples/legacy-decorators): Example app using experimental (legacy) decorators - [JavaScript](/docs/examples/javascript): Using neogma with plain JavaScript via ModelFactory - [NestJS](/docs/examples/nestjs): Example NestJS app with @neogma/nest module - Migration - [Migrating from v1](/docs/migration): Upgrade from neogma v1 to v2 with the decorator-based API