# AventusJs Documentation Index > For a general overview, read [https://aventusjs.com/docs/overview.md](https://aventusjs.com/docs/overview.md). ## Introduction & Installation - [Introduction](/docs/install/introduction.md): Overview of the AventusJs framework, its WebComponent-based approach, TypeScript, and logic/view/style separation. - [Installation](/docs/install/installation.md): Installation guide via the VSCode extension and CLI usage for automation tasks. - [Developer Experience](/docs/install/experience.md): Using the VSCode interface, creating files via the context menu, and managing the live server. - [First Application](/docs/install/first_app.md): Step-by-step tutorial to initialize a project, configure the module, and create a first WebComponent. ## Configuration - [Basic Properties](/docs/config/basic_prop.md): Configuration of the `aventus.conf.avt` file, defining the module name, version, and component prefix. - [Build](/docs/config/build.md): Configuration for builds, sources, compilation outputs, and NPM export options. - [Static](/docs/config/static.md): Management of static files (assets), SCSS compilation, and global styles (`*.gs.avt`). - [Libraries](/docs/config/lib.md): Managing dependencies, importing local packages, or downloading from the Aventus store. ## Data & State Management (Data & RAM) - [Create Data](/docs/data/create.md): Defining data structures (`*.data.avt`) and implementing `Aventus.IData`. - [Create RAM](/docs/ram/create.md): Creating in-memory stores (RAM) for managing data instances and singletons. - [CRUD Operations](/docs/ram/CRUD.md): Methods for reading, creating, updating, and deleting items in RAMs. - [Listen Changes](/docs/ram/listen_changes.md): Data reactivity (`onUpdate`, `onDelete`) and global RAM hooks (`onCreated`, `onUpdated`). - [Mixin](/docs/ram/mixin.md): Using the Mixin pattern to extend functionality of generated data classes. ## Application State (State) - [Create State](/docs/state/create.md): Defining `State` and `StateManager` classes for application state management. - [Change State](/docs/state/change.md): Methods to activate states via the StateManager or state instances. - [Listen State](/docs/state/listen_changes.md): State lifecycle (`active`, `inactive`, `askChange`) and subscription to changes. ## WebComponents - [Create](/docs/wc/create.md): Aventus WebComponent structure (`.wcl.avt`, `.wcs.avt`, `.wcv.avt`) and lifecycle. - [Inheritance](/docs/wc/inheritance.md): Component inheritance, view composition, slots, and block overrides. - [Attributes](/docs/wc/attribute.md): Using the `@Attribute` decorator for typed HTML attributes. - [Properties](/docs/wc/property.md): Using the `@Property` decorator for reactive properties with change callbacks. - [Watch](/docs/wc/watch.md): Using the `@Watch` decorator for deep object observation and debugging. - [Signal](/docs/wc/signal.md): Using the `@Signal` decorator for lightweight, first-level reactivity. - [Style](/docs/wc/style.md): CSS management (SCSS), scoped styles (`:host`), shared global styles, and themes. - [Interpolation](/docs/wc/interpolation.md): Using `{{ }}` interpolation syntax in HTML views. - [Element Selection](/docs/wc/element.md): Retrieving DOM elements via `@element` and `@ViewElement`. - [Injection](/docs/wc/injection.md): Parent-to-child data injection via the `:prop` syntax. - [Loop](/docs/wc/loop.md): Syntax for `for`, `for...in`, `for...of` loops and `@Context` usage. - [Events](/docs/wc/event.md): Event handling (`@event`), `Aventus.Callback`, and `CallbackGroup`. - [Binding](/docs/wc/binding.md): Two-way data binding with `@bind` between component and view. - [Component State](/docs/wc/state.md): `@StateActive`, `@StateInactive` decorators to link component logic to StateManager. ## HTTP Layer - [Introduction](/docs/http/introduction.md): Overview of the Aventus HTTP abstraction layer. - [Request](/docs/http/request.md): `HttpRequest` class for managing API calls, serialization, and return types. - [Router](/docs/http/router.md): `HttpRouter` class for defining base endpoint configuration. - [Route](/docs/http/route.md): `HttpRoute` class (Controller) for grouping related endpoints. ## Error Management - [GenericError](/docs/error/generic.md): Base class for typed error management. - [VoidWithError](/docs/error/void.md): Function return type for actions without a result but with potential errors. - [ResultWithError](/docs/error/result.md): Function return type with a typed result and error handling. ## Libraries & Utilities - [Create Lib](/docs/lib/create.md): Structure and creation of library files (`*.lib.avt`). - [Animation](/docs/lib/animation.md): `Animation` class based on `requestAnimationFrame`. - [Callback](/docs/lib/callback.md): Typed alternative to CustomEvents for inter-component communication. - [Compare Object](/docs/lib/compare_object.md): Utility for deep object comparison. - [Converter](/docs/lib/converter.md): Transformation from JSON to typed class instances. - [Press Manager](/docs/lib/press_manager.md): Unified pointer event management (mouse, touch, long press). - [Drag & Drop](/docs/lib/drag_and_drop.md): Utility for managing drag-and-drop interactions. - [Instance (Singleton)](/docs/lib/instance.md): Singleton pattern manager. - [Json](/docs/lib/json.md): Serialization and deserialization of Aventus classes. - [Mutex](/docs/lib/mutex.md): Synchronization mechanism for asynchronous operations. - [Resize Observer](/docs/lib/resize_observer.md): Optimized version of ResizeObserver. - [Resource Loader](/docs/lib/resource_loader.md): Dynamic loading of resources (CSS, JS, Images, SVG). - [Sleep](/docs/lib/sleep.md): Asynchronous wait utility function. - [UUID](/docs/lib/uuid.md): Unique identifier generation (UUID v4). - [Value From Object](/docs/lib/value_from_object.md): Safe access to nested object properties. - [Watcher](/docs/lib/watcher.md): Advanced reactive system (Computed, Effect, Signal). ## Internationalization (I18n) - [Configuration](/docs/i18n/config.md): Setting up i18n in `aventus.conf.avt`. - [Usage](/docs/i18n/usage.md): Using the `t()` function, translation files, and switching locales. ## Aventus UI (Logic UI Kit) - [UI Introduction](/docs/ui/introduction.md): Aventus UI philosophy (separating logic from design). - [Button](/docs/ui/button.md): `ButtonElement` component logic (submit, loading, types). - [Form](/docs/ui/form.md): `FormHandler` for form management, validation, and submission. - [Form Element](/docs/ui/form_element.md): Base class for inputs, two-way binding, and validation. - [Page](/docs/ui/page.md): Basic structure for a navigable page. - [Page Form](/docs/ui/page_form.md): Page extension for automatic form management. - [Page Form Http](/docs/ui/page_form_http.md): Automatic connection between PageForm and HttpRoute. - [Router Component](/docs/ui/router.md): Main routing component, route definition, and navigation. - [Link](/docs/ui/link.md): SPA navigation link component. - [Col & Row](/docs/ui/col_row.md): Flexible and responsive grid system. - [Collapse](/docs/ui/collapse.md): Logic for accordion/collapsible components. - [Grid Helper](/docs/ui/grid_helper.md): Visual tool for alignment and grids. - [Image](/docs/ui/image.md): Advanced image component (inline SVG, cache, display modes). - [Scrollable](/docs/ui/scrollable.md): Custom scrollable container with virtual scrollbar. - [Tabs](/docs/ui/tabs.md): Tab management system. - [Modal](/docs/ui/modal.md): Promise-based modal window manager. - [Toast](/docs/ui/toast.md): Temporary notification system. - [Process](/docs/ui/process.md): Standardized async operation and error management. - [Shortcut](/docs/ui/shortcut.md): Global keyboard shortcut manager. ## Advanced Features - [Templates](/docs/advanced/template.md): Creation and usage of custom code templates. - [Aventus Store](/docs/advanced/store.md): Publishing and downloading packages and templates. - [Npm Export](/docs/advanced/npm_export.md): Compiling and publishing an Aventus library to NPM. - [Storybook](/docs/advanced/storybook.md): Integration and automatic generation of Storybook documentation.