# Aurelia 1 Docs

## The Aurelia 1 Docs

- [Introduction](https://aurelia-1.gitbook.io/v1-docs/readme.md): Get acquainted with Aurelia 1, the documentation, and how to get started.
- [Quick Start](https://aurelia-1.gitbook.io/v1-docs/introduction/quick-start.md): Welcome to Aurelia. This quick start guide will take you through creating a todo app using Aurelia and briefly explain its main concepts. We assume you are familiar with JavaScript, HTML, and CSS.
- [Aurelia for new developers](https://aurelia-1.gitbook.io/v1-docs/introduction/aurelia-for-new-developers.md): If you're new to Aurelia or perhaps development in general, we've got you.
- [Contact manager tutorial](https://aurelia-1.gitbook.io/v1-docs/introduction/contact-manager-tutorial.md): Now that you've got the basics down, you need to learn how to use the CLI, build a more complex app and get a solid knowledge foundation for real-world work.
- [Component basics](https://aurelia-1.gitbook.io/v1-docs/components/component-basics.md): At its core, every Aurelia app is built from components. This guide will walk you through creating simple components, leveraging dependency injection, and mastering the component lifecycle.
- [Component lifecycles](https://aurelia-1.gitbook.io/v1-docs/components/component-lifecycles.md)
- [Styling components](https://aurelia-1.gitbook.io/v1-docs/components/styling-components.md)
- [Component options](https://aurelia-1.gitbook.io/v1-docs/components/component-options.md)
- [Bindable properties](https://aurelia-1.gitbook.io/v1-docs/components/bindable-properties.md)
- [Slotted content](https://aurelia-1.gitbook.io/v1-docs/components/slotted-content.md): Slotted content allows you to build flexible and reusable components by enabling users to insert their own content into specified areas of your component.
- [Template compilation using processContent](https://aurelia-1.gitbook.io/v1-docs/components/template-compilation-using-processcontent.md)
- [Component decorators](https://aurelia-1.gitbook.io/v1-docs/components/component-decorators.md)
- [Template syntax](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax.md)
- [Binding](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/binding.md)
- [Attribute binding](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/attribute-binding.md)
- [Event binding](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/event-binding.md)
- [Delegate vs trigger](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/delegate-vs-trigger.md)
- [Text interpolation](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/text-interpolation.md)
- [Element content](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/element-content.md)
- [Function references](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/function-references.md)
- [Element references](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/element-references.md)
- [Contextual properties](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/contextual-properties.md)
- [Expression syntax](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/expression-syntax.md)
- [Computed properties](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/computed-properties.md)
- [Let element](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/let-element.md)
- [Binding engine internals](https://aurelia-1.gitbook.io/v1-docs/templates/template-syntax/binding-engine-internals.md)
- [Custom attributes](https://aurelia-1.gitbook.io/v1-docs/templates/custom-attributes.md)
- [Value converters (pipes)](https://aurelia-1.gitbook.io/v1-docs/templates/value-converters-pipes.md)
- [Binding behaviors](https://aurelia-1.gitbook.io/v1-docs/templates/binding-behaviors.md)
- [Form inputs](https://aurelia-1.gitbook.io/v1-docs/templates/form-inputs.md)
- [CSS classes and styling](https://aurelia-1.gitbook.io/v1-docs/templates/css-classes-and-styling.md)
- [List rendering (repeaters)](https://aurelia-1.gitbook.io/v1-docs/templates/list-rendering-repeaters.md): Aurelia's repeat.for feature is your go-to tool for handling arrays and maps efficiently. It's like JavaScript's for loop, but tailored for the view.
- [Conditional rendering](https://aurelia-1.gitbook.io/v1-docs/templates/conditional-rendering.md)
- [HTML & SVG attributes](https://aurelia-1.gitbook.io/v1-docs/templates/html-and-svg-attributes.md)
- [The as-element (element aliasing)](https://aurelia-1.gitbook.io/v1-docs/templates/the-as-element-element-aliasing.md)
- [View Resource pipeline](https://aurelia-1.gitbook.io/v1-docs/templates/view-resource-pipeline.md)
- [View and Compilation Spies](https://aurelia-1.gitbook.io/v1-docs/templates/view-and-compilation-spies.md)
- [HTML behaviors](https://aurelia-1.gitbook.io/v1-docs/templates/html-behaviors.md)
- [App configuration and startup](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/app-configuration-and-startup.md): How to get Aurelia started.
- [Routing](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing.md)
- [Getting started](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/getting-started.md)
- [Router configuration](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/router-configuration.md)
- [Configuring routes](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/configuring-routes.md)
- [Viewports](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/viewports.md)
- [Layouts](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/layouts.md)
- [Redirecting routes](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/redirecting-routes.md)
- [View Swapping and Animation](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/view-swapping-and-animation.md)
- [Internationalizing Titles](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/internationalizing-titles.md)
- [Fallback Routes](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/fallback-routes.md)
- [Navigating](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/navigating.md)
- [Lifecycle hooks](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/lifecycle-hooks.md)
- [Router pipelines (hooks)](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/router-hooks.md)
- [Reusing an Existing View Model](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/reusing-an-existing-view-model.md)
- [Router events](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/router-events.md)
- [Child routers](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/child-routers.md)
- [Handling links](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/routing/handling-links.md)
- [Enhance](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/enhance.md)
- [Dynamic composition](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/dynamic-composition.md)
- [Observation](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/observation.md)
- [Dependency injection (DI)](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/dependency-injection-di.md)
- [Overview](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/dependency-injection-di/overview.md): Aurelia's Dependency Injection (DI) system is a powerful feature that promotes modularity, testability, and maintainability in your applications. This documentation provides a comprehensive guide to u
- [Injection](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/dependency-injection-di/injection.md)
- [Resolvers](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/dependency-injection-di/resolvers.md)
- [Task queue](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/task-queue.md)
- [Event aggregator](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/event-aggregator.md)
- [Server side rendering](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering.md)
- [Setup and installation](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/setup-and-installation.md)
- [How it works](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/how-it-works.md)
- [Isomorphic code](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/isomorphic-code.md)
- [Middleware configuration](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/middleware-configuration.md)
- [Memory management](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/memory-management.md)
- [Different entry points](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/different-entry-points.md)
- [404 pages](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/404-pages.md)
- [Caveats](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/caveats.md)
- [Troubleshooting](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/server-side-rendering/troubleshooting.md)
- [CLI](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli.md)
- [Machine setup](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/machine-setup.md)
- [Creating a new project](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/creating-a-new-project.md)
- [Running your app](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/running-your-app.md)
- [Environments](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/environments.md)
- [Building your app](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/building-your-app.md)
- [Generators](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/generators.md)
- [Command reference](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/command-reference.md)
- [Configuration with aurelia.json](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/configuration-with-aurelia-json.md)
- [Webpack vs built-in bundler](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/webpack-vs-built-in-bundler.md)
- [Gulp tasks](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/gulp-tasks.md)
- [Webpack](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/webpack.md)
- [Built-in bundler](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/built-in-bundler.md)
- [Updating & migrating](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/updating-and-migrating.md)
- [Recipes & known issues](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/recipes-and-known-issues.md)
- [Getting help](https://aurelia-1.gitbook.io/v1-docs/getting-to-know-aurelia/cli/getting-help.md)
- [Security](https://aurelia-1.gitbook.io/v1-docs/developer-guides/security.md): Learn how to build secure Aurelia applications with proper authentication, authorization, and security best practices for both client-side and server-side implementation.
- [Animation](https://aurelia-1.gitbook.io/v1-docs/developer-guides/animation.md): Animations bring dynamic visual interactions to your Aurelia applications, enhancing user experience by smoothly transitioning elements' styles over time.
- [Testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing.md)
- [Unit Testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing.md)
- [Testing Custom Elements](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/testing-custom-elements.md)
- [Testing Custom Attributes](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/testing-custom-attributes.md)
- [Testing Routing and Navigation](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/testing-routing-and-navigation.md)
- [Advanced Testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/advanced-testing.md)
- [Helpful Properties, Functions, and Advanced Querying](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/helpful-properties-functions-and-advanced-querying.md)
- [Dependency Injection Testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/dependency-injection-testing.md)
- [Testing Custom Value Converters and Binding Behaviors](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/testing-custom-value-converters-and-binding-behaviors.md)
- [Internationalization (i18n) Testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/unit-testing/internationalization-i18n-testing.md)
- [End-to-end testing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/end-to-end-testing.md)
- [Getting started with Playwright](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/end-to-end-testing/getting-started-with-playwright.md)
- [Writing E2E tests](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/end-to-end-testing/writing-e2e-tests.md)
- [Advanced Techniques](https://aurelia-1.gitbook.io/v1-docs/developer-guides/testing/end-to-end-testing/advanced-techniques.md)
- [Logging](https://aurelia-1.gitbook.io/v1-docs/developer-guides/logging.md)
- [Building plugins](https://aurelia-1.gitbook.io/v1-docs/developer-guides/building-plugins.md)
- [Plugin Development](https://aurelia-1.gitbook.io/v1-docs/developer-guides/building-plugins/plugin-development.md)
- [Building and Publishing](https://aurelia-1.gitbook.io/v1-docs/developer-guides/building-plugins/building-and-publishing.md)
- [Advanced Plugin Techniques](https://aurelia-1.gitbook.io/v1-docs/developer-guides/building-plugins/advanced-plugin-techniques.md)
- [UI Virtualization](https://aurelia-1.gitbook.io/v1-docs/developer-guides/ui-virtualization.md)
- [Integrations](https://aurelia-1.gitbook.io/v1-docs/developer-guides/integrations.md)
- [Cheat sheet](https://aurelia-1.gitbook.io/v1-docs/developer-guides/cheat-sheet.md): Forgot the syntax for bindings? Need to know how to create a custom attribute? This article contains answers to questions like those as well as a bunch of quick snippets for common tasks..
- [Validation](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/validation.md)
- [i18n Internationalization](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/i18n-internationalization.md)
- [Dialogs](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/dialogs.md)
- [Fetch client](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/fetch-client.md)
- [HTTP client](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/http-client.md)
- [Store](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store.md)
- [Configuring your app](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/configuring-your-app.md)
- [What is the State?](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/what-is-the-state.md)
- [Reasons for state management](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/reasons-for-state-management.md)
- [Subscribing to the stream of states](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/subscribing-to-the-stream-of-states.md)
- [Subscribing with the connectTo decorator](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/subscribing-with-the-connectto-decorator.md)
- [What are actions?](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/what-are-actions.md)
- [Async actions](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/async-actions.md)
- [Dispatching actions](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/dispatching-actions.md)
- [Resetting the store to a specific state](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/resetting-the-store-to-a-specific-state.md)
- [Two-way binding and state management](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/two-way-binding-and-state-management.md)
- [Recording a navigable history of the stream of states](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/recording-a-navigable-history-of-the-stream-of-states.md)
- [Making our app history-aware](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/making-our-app-history-aware.md)
- [Navigating through history](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/navigating-through-history.md)
- [Handling side-effects with middleware](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/handling-side-effects-with-middleware.md)
- [Accessing the original (unmodified) state in a middleware](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/accessing-the-original-unmodified-state-in-a-middleware.md)
- [Defining settings for middlewares](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/defining-settings-for-middlewares.md)
- [Error Propagation with Middlewares](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/error-propagation-with-middlewares.md)
- [Default middlewares](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/default-middlewares.md)
- [Tracking overall performance](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/tracking-overall-performance.md)
- [Defining custom devToolsOptions](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/defining-custom-devtoolsoptions.md)
- [Defining custom loglevels](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/defining-custom-loglevels.md)
- [Debugging with the Redux devtools extension](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/debugging-with-the-redux-devtools-extension.md)
- [Comparison to other state management libraries](https://aurelia-1.gitbook.io/v1-docs/aurelia-packages/store/comparison-to-other-state-management-libraries.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://aurelia-1.gitbook.io/v1-docs/readme.md?ask=<question>
```
The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.
Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
