# LaraNode Framework > A modern Node.js framework inspired by Laravel's elegance, built for TypeScript. ## Documentation Sets - [LaraNode Framework - Full Documentation](https://laranode.doitrixtech.co.ke//llms-full.txt): Complete documentation for the LaraNode framework - a modern Node.js framework inspired by Laravel. ## Getting Started - [Configuration](https://laranode.doitrixtech.co.ke/raw/guide/configuration.md): LaraNode uses a file-based configuration system with environment variable support. - [Dependency Injection](https://laranode.doitrixtech.co.ke/raw/guide/dependency-injection.md): LaraNode uses a powerful IoC (Inversion of Control) container for dependency injection, inspired by Laravel's container. - [Facades](https://laranode.doitrixtech.co.ke/raw/guide/facades.md): Facades provide a static-like interface to services registered in the container, enabling clean, expressive syntax. - [Getting Started](https://laranode.doitrixtech.co.ke/raw/guide/getting-started.md): This guide will help you create your first LaraNode application from scratch. - [Installation](https://laranode.doitrixtech.co.ke/raw/guide/installation.md): This guide covers different ways to install and set up LaraNode in your project. - [Introduction](https://laranode.doitrixtech.co.ke/raw/guide/introduction.md): LaraNode is a Laravel-inspired Node.js framework built on top of Express.js. It brings the elegant developer experience of Laravel to the Node.js ecosystem, with a focus on developer productivity, clean architecture, and convention over configuration. - [MCP & AI Integration](https://laranode.doitrixtech.co.ke/raw/guide/mcp-integration.md): Connect AI assistants to your LaraNode application using the Model Context Protocol - [Middleware](https://laranode.doitrixtech.co.ke/raw/guide/middleware.md): Middleware provides a convenient mechanism for filtering HTTP requests entering your application. - [Project Structure](https://laranode.doitrixtech.co.ke/raw/guide/project-structure.md): A typical LaraNode application follows a Laravel-inspired directory structure. - [Service Providers](https://laranode.doitrixtech.co.ke/raw/guide/service-providers.md): Service providers are the central place to configure and bootstrap your LaraNode application. They are the bridge between your application code and the IoC container. - [Agent Skills](https://laranode.doitrixtech.co.ke/raw/guide/skills.md): Specialized instructions that help AI assistants work with LaraNode effectively ## Packages - [Auth Package](https://laranode.doitrixtech.co.ke/raw/packages/auth.md): The @lara-node/auth package provides JWT authentication, password hashing, and token encryption. - [Token Encryption](https://laranode.doitrixtech.co.ke/raw/packages/auth/encryption.md): Encrypt and decrypt tokens using AES-256-GCM. - [Auth Middleware](https://laranode.doitrixtech.co.ke/raw/packages/auth/middleware.md): Protect routes with JWT authentication middleware. - [Password Hashing](https://laranode.doitrixtech.co.ke/raw/packages/auth/passwords.md): Securely hash and verify passwords using bcrypt. - [Token Generation](https://laranode.doitrixtech.co.ke/raw/packages/auth/tokens.md): Generate and verify JWT tokens for authentication. - [Cache Package](https://laranode.doitrixtech.co.ke/raw/packages/cache.md): The @lara-node/cache package provides multi-driver caching with rate limiting support. - [Cache Drivers](https://laranode.doitrixtech.co.ke/raw/packages/cache/drivers.md): LaraNode supports multiple cache drivers. - [Rate Limiting](https://laranode.doitrixtech.co.ke/raw/packages/cache/rate-limiting.md): LaraNode provides a Laravel-style rate limiter for controlling request frequency. - [Carbon Package](https://laranode.doitrixtech.co.ke/raw/packages/carbon.md): The @lara-node/carbon package provides a Laravel Carbon-inspired date/time library. Zero dependencies, immutable, and fluent. - [Date Comparison](https://laranode.doitrixtech.co.ke/raw/packages/carbon/comparison.md): Compare dates with Carbon's comparison methods. - [Creating Dates](https://laranode.doitrixtech.co.ke/raw/packages/carbon/creating.md): Create Carbon date instances in various ways. - [Date Formatting](https://laranode.doitrixtech.co.ke/raw/packages/carbon/formatting.md): Format Carbon dates with various tokens. - [Intervals & Periods](https://laranode.doitrixtech.co.ke/raw/packages/carbon/intervals.md): Work with date intervals and periods. - [Date Manipulation](https://laranode.doitrixtech.co.ke/raw/packages/carbon/manipulation.md): Modify dates with Carbon's fluent API. - [Console Package](https://laranode.doitrixtech.co.ke/raw/packages/console.md): The @lara-node/console package provides a Laravel Artisan-style CLI with commands and scheduler. - [Built-in Commands](https://laranode.doitrixtech.co.ke/raw/packages/console/built-in.md): LaraNode includes 40+ Artisan-style commands. - [Writing Commands](https://laranode.doitrixtech.co.ke/raw/packages/console/commands.md): Create custom Artisan-style commands. - [Core Package](https://laranode.doitrixtech.co.ke/raw/packages/core.md): The @lara-node/core package is the foundation of the LaraNode framework. It provides the IoC container, Application bootstrap, Service Provider system, and configuration management. - [Application](https://laranode.doitrixtech.co.ke/raw/packages/core/application.md): The Application class is the main bootstrap class for LaraNode applications. It wraps Express and manages the service provider lifecycle. - [Configuration (Core)](https://laranode.doitrixtech.co.ke/raw/packages/core/config.md): LaraNode provides a dot-notation configuration system for managing application settings. - [IoC Container](https://laranode.doitrixtech.co.ke/raw/packages/core/container.md): The Container is LaraNode's dependency injection container. It manages class dependencies and performs automatic resolution. - [Form Request](https://laranode.doitrixtech.co.ke/raw/packages/core/request.md): The FormRequest is a Laravel-inspired request validation class that encapsulates validation logic, authorization, and input handling into a single, type-safe class. When type-hinted in a controller method, the router automatically instantiates it, runs validation, and injects it — returning a 422 response on failure. - [Service Providers (Core)](https://laranode.doitrixtech.co.ke/raw/packages/core/service-providers.md): Service providers are the central place for configuring your LaraNode application. - [Database Package](https://laranode.doitrixtech.co.ke/raw/packages/db.md): The @lara-node/db package provides a Laravel Eloquent-inspired ORM with support for MySQL and MongoDB, migrations, seeders, traits, and observers. - [DB Facade](https://laranode.doitrixtech.co.ke/raw/packages/db/facade.md): The DB facade provides a fluent query builder for raw database operations without models. - [Migrations](https://laranode.doitrixtech.co.ke/raw/packages/db/migrations.md): Migrations are version control for your database, allowing you to define and share your database schema. - [Models](https://laranode.doitrixtech.co.ke/raw/packages/db/models.md): Models in LaraNode provide an expressive, Eloquent-inspired way to interact with your database. - [Observers](https://laranode.doitrixtech.co.ke/raw/packages/db/observers.md): Observers allow you to listen to model lifecycle events. - [Query Builder](https://laranode.doitrixtech.co.ke/raw/packages/db/query-builder.md): The EloquentBuilder provides a fluent interface for constructing database queries. - [Relationships](https://laranode.doitrixtech.co.ke/raw/packages/db/relationships.md): LaraNode models support Laravel-style relationships for connecting related data. - [Seeders](https://laranode.doitrixtech.co.ke/raw/packages/db/seeders.md): Seeders populate your database with test data. - [Traits](https://laranode.doitrixtech.co.ke/raw/packages/db/traits.md): Traits are reusable behaviors that can be applied to models. - [Events Package](https://laranode.doitrixtech.co.ke/raw/packages/events.md): The @lara-node/events package provides an event dispatcher with listeners, subscribers, and WebSocket broadcasting. - [Broadcasting](https://laranode.doitrixtech.co.ke/raw/packages/events/broadcasting.md): Broadcast events to clients via WebSockets. - [Event Listeners](https://laranode.doitrixtech.co.ke/raw/packages/events/listeners.md): Listeners handle events when they are dispatched. - [Queueable Listeners](https://laranode.doitrixtech.co.ke/raw/packages/events/queueable.md): Run listeners asynchronously via the queue system. - [Event Subscribers](https://laranode.doitrixtech.co.ke/raw/packages/events/subscribers.md): Subscribers group multiple related listeners in a single class. - [Exports Package](https://laranode.doitrixtech.co.ke/raw/packages/exports.md): The @lara-node/exports package provides PDF, Excel, and CSV export utilities. - [CSV Export](https://laranode.doitrixtech.co.ke/raw/packages/exports/csv.md): Generate and parse CSV strings using @lara-node/csv. - [Excel Export](https://laranode.doitrixtech.co.ke/raw/packages/exports/excel.md): Generate Excel (.xlsx) files using @lara-node/excel, powered by ExcelJS. - [PDF Export](https://laranode.doitrixtech.co.ke/raw/packages/exports/pdf.md): Generate PDF documents using @lara-node/pdf, powered by Puppeteer. - [Templates](https://laranode.doitrixtech.co.ke/raw/packages/exports/templates.md): The exports package supports template-based rendering for PDF, Excel, and CSV exports. - [Horizon Package](https://laranode.doitrixtech.co.ke/raw/packages/horizon.md): The @lara-node/horizon package provides a beautiful queue monitoring dashboard, inspired by Laravel Horizon. - [Horizon Configuration](https://laranode.doitrixtech.co.ke/raw/packages/horizon/configuration.md): Configure Horizon for your environment. - [Horizon Dashboard](https://laranode.doitrixtech.co.ke/raw/packages/horizon/dashboard.md): The Horizon dashboard provides real-time queue monitoring. - [Mail Package](https://laranode.doitrixtech.co.ke/raw/packages/mail.md): The @lara-node/mail package provides a multi-driver email system with fluent Mailable classes. - [Mail Drivers](https://laranode.doitrixtech.co.ke/raw/packages/mail/drivers.md): LaraNode supports multiple mail drivers. - [Mailables](https://laranode.doitrixtech.co.ke/raw/packages/mail/mailables.md): Mailable classes provide a fluent way to build emails. - [Queued Mail](https://laranode.doitrixtech.co.ke/raw/packages/mail/queued.md): Send emails asynchronously via the queue system. - [Middlewares Package](https://laranode.doitrixtech.co.ke/raw/packages/middlewares.md): The @lara-node/middlewares package provides pre-built middleware for common use cases. - [Auth & Authorization Middleware](https://laranode.doitrixtech.co.ke/raw/packages/middlewares/auth.md): Protect routes with authentication and authorization. - [Built-in Middleware](https://laranode.doitrixtech.co.ke/raw/packages/middlewares/built-in.md): LaraNode provides several pre-built middleware classes. - [Queue Package](https://laranode.doitrixtech.co.ke/raw/packages/queue.md): The @lara-node/queue package provides a job queue system with workers and a task scheduler. - [Failed Jobs](https://laranode.doitrixtech.co.ke/raw/packages/queue/failed-jobs.md): Track and manage failed queue jobs. - [Jobs](https://laranode.doitrixtech.co.ke/raw/packages/queue/jobs.md): Jobs are classes that represent units of work to be processed by queue workers. - [Task Scheduler](https://laranode.doitrixtech.co.ke/raw/packages/queue/scheduler.md): The scheduler allows you to define cron-like tasks that run automatically. - [Queue Workers](https://laranode.doitrixtech.co.ke/raw/packages/queue/workers.md): Workers process jobs from the queue. - [Router Package](https://laranode.doitrixtech.co.ke/raw/packages/router.md): The @lara-node/router package provides an expressive routing system with a fluent builder, controller decorators, route model binding, and OpenAPI generation. - [Basic Routing](https://laranode.doitrixtech.co.ke/raw/packages/router/basic.md): Define routes using the fluent Route builder. - [Controllers](https://laranode.doitrixtech.co.ke/raw/packages/router/controllers.md): Controllers group related request handling logic into a single class using decorators. - [Route Groups](https://laranode.doitrixtech.co.ke/raw/packages/router/groups.md): Group routes with shared attributes like middleware, prefixes, and constraints. - [Route Middleware](https://laranode.doitrixtech.co.ke/raw/packages/router/middleware.md): Apply middleware to individual routes or groups. - [Route Model Binding](https://laranode.doitrixtech.co.ke/raw/packages/router/model-binding.md): Route model binding automatically resolves route parameters to model instances. - [OpenAPI Generation](https://laranode.doitrixtech.co.ke/raw/packages/router/openapi.md): LaraNode can automatically generate OpenAPI 3.0 specifications from your route metadata. - [Resource Routes](https://laranode.doitrixtech.co.ke/raw/packages/router/resource.md): Resource routes automatically generate RESTful routes for a controller. - [Telescope Package](https://laranode.doitrixtech.co.ke/raw/packages/telescope.md): The @lara-node/telescope package provides a beautiful debug dashboard for requests, queries, exceptions, and more. - [Telescope Configuration](https://laranode.doitrixtech.co.ke/raw/packages/telescope/configuration.md): Configure Telescope for your environment. - [Telescope Watchers](https://laranode.doitrixtech.co.ke/raw/packages/telescope/watchers.md): Watchers monitor different aspects of your application. - [Validator Package](https://laranode.doitrixtech.co.ke/raw/packages/validator.md): The @lara-node/validator package provides a Laravel-inspired validation engine with 50+ rules. - [Basic Validation](https://laranode.doitrixtech.co.ke/raw/packages/validator/basic.md): Learn the basics of validating data with LaraNode's validator. - [Custom Rules](https://laranode.doitrixtech.co.ke/raw/packages/validator/custom-rules.md): Create custom validation rules for your specific needs. - [Error Messages](https://laranode.doitrixtech.co.ke/raw/packages/validator/messages.md): Customize validation error messages. - [Validation Rules](https://laranode.doitrixtech.co.ke/raw/packages/validator/rules.md): LaraNode provides 50+ validation rules matching Laravel's API. ## Agent Skills Specialized AI assistant instructions for LaraNode packages - [Agent Skills](https://laranode.doitrixtech.co.ke/raw/guide/skills.md): Specialized instructions that help AI assistants work with LaraNode effectively