# Cherrycake

## version 0.x

- [Introduction](https://cherrycake.tin.cat/version-0.x/readme.md): Cherrycake is a low-level programming framework for developing modular, efficient and secure PHP web applications.
- [Status](https://cherrycake.tin.cat/version-0.x/status.md)
- [Changelog](https://cherrycake.tin.cat/version-0.x/changelog.md)
- [Migration](https://cherrycake.tin.cat/version-0.x/migration.md): Instructions on how to migrate your existing Cherrycake application from earlier versions of the Cherrycake engine.
- [Basics](https://cherrycake.tin.cat/version-0.x/architecture/basics.md)
- [Modules](https://cherrycake.tin.cat/version-0.x/architecture/modules.md): Modules pack process-specific functionality in isolated classes with auto-loading, dependency and configuration capabilities, so it's easier to keep your app structure clean and clear.
- [Classes](https://cherrycake.tin.cat/version-0.x/architecture/classes.md): Classes encapsulate the object-specific structure and logic of entities in Cherrycake and in your application.
- [Lifecycle](https://cherrycake.tin.cat/version-0.x/architecture/lifecycle.md): Understanding the lifecycle of a request in Cherrycake will give you valuable insight on how it works.
- [Deep lifecycle](https://cherrycake.tin.cat/version-0.x/architecture/lifecycle/deep-lifecycle.md): Let's take a deep dive on a typical request lifecycle.
- [Performance](https://cherrycake.tin.cat/version-0.x/architecture/performance.md): Cherrycake is capable of handling a high number of requests per second in a reasonable server setup, let's take a look at the most important performance features and tools it provides.
- [Security](https://cherrycake.tin.cat/version-0.x/architecture/security.md): Cherrycake structure has been modeled from the ground up with security in mind. Let's explore its most important security features.
- [Patterns](https://cherrycake.tin.cat/version-0.x/architecture/patterns.md): Cherrycake provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Files structure](https://cherrycake.tin.cat/version-0.x/architecture/patterns/app-files-structure.md): Let's take a look at how are directories organized in a typical Cherrycake App setup, and the file naming conventions.
- [Items](https://cherrycake.tin.cat/version-0.x/architecture/items.md): Cherrycake provides you with an optimized way of interacting with the primordial objects of your app.
- [Server requirements](https://cherrycake.tin.cat/version-0.x/architecture/server-requirements.md)
- [Getting started](https://cherrycake.tin.cat/version-0.x/guide/getting-started.md): A simple guide to build a simple "Hello world" application with Cherrycake.
- [Skeleton start](https://cherrycake.tin.cat/version-0.x/guide/getting-started/skeleton.md): Start a Cherrycake app using the pre-built skeleton, a simple "Hello world" web app ready to run.
- [Docker start](https://cherrycake.tin.cat/version-0.x/guide/getting-started/docker.md): Set up a development environment with a skeleton "Hello world" Cherrycake web app to start working in just a few minutes using Docker.
- [Modules guide](https://cherrycake.tin.cat/version-0.x/guide/modules-guide.md): Modules are the fundamental containers of functionality in Cherrycake apps.
- [Classes guide](https://cherrycake.tin.cat/version-0.x/guide/classes-guide.md): Classes contain the logic behind  the elemental objects that are used within a Cherrycake application.
- [Actions guide](https://cherrycake.tin.cat/version-0.x/guide/actions-guide.md): Actions is the routing core module of Cherrycake, and allows your application to receive requests and attend them accordingly.
- [Complex actions](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/complex-routes.md)
- [Variable path components](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/variable-path-components.md)
- [Accept GET or POST parameters](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/accept-get-or-post-parameters.md)
- [Getting the URL of an action](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/getting-the-url-of-an-action.md)
- [Cached actions](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/cached-actions.md)
- [Brute force attacks](https://cherrycake.tin.cat/version-0.x/guide/actions-guide/brute-force-attacks.md)
- [Patterns guide](https://cherrycake.tin.cat/version-0.x/guide/patterns-guide.md): Patterns provides your HTML, CSS, JavaScript and other types of files with a dynamic template mechanism that brings performance, re-usability and code tidiness benefits.
- [Passing variables to a pattern](https://cherrycake.tin.cat/version-0.x/guide/patterns-guide/passing-variables-to-a-pattern.md)
- [Nested patterns](https://cherrycake.tin.cat/version-0.x/guide/patterns-guide/nested-patterns.md)
- [Cached patterns](https://cherrycake.tin.cat/version-0.x/guide/patterns-guide/cached-patterns.md)
- [Cache guide](https://cherrycake.tin.cat/version-0.x/guide/cache-guide.md): The Cache module provides your Cherrycake application with a standardized interface to implement caching and shared memory mechanisms into your App by connecting to multiple external cache providers.
- [Time To Live](https://cherrycake.tin.cat/version-0.x/guide/cache-guide/time-to-live.md)
- [Using cache](https://cherrycake.tin.cat/version-0.x/guide/cache-guide/using-cache.md)
- [Lists](https://cherrycake.tin.cat/version-0.x/guide/cache-guide/lists.md)
- [Queues](https://cherrycake.tin.cat/version-0.x/guide/cache-guide/queues.md)
- [Pools](https://cherrycake.tin.cat/version-0.x/guide/cache-guide/pools.md)
- [Database guide](https://cherrycake.tin.cat/version-0.x/guide/database-guide.md): The Database module provides your Cherrycake application with a standardized interface to connect to database servers like MySQL and MariaDB.
- [Basic queries](https://cherrycake.tin.cat/version-0.x/guide/database-guide/basic-queries.md)
- [Prepared queries](https://cherrycake.tin.cat/version-0.x/guide/database-guide/prepared-queries.md)
- [Cached queries](https://cherrycake.tin.cat/version-0.x/guide/database-guide/cached-queries.md)
- [Cache key naming](https://cherrycake.tin.cat/version-0.x/guide/database-guide/cache-key-naming.md)
- [Removing queries from cache](https://cherrycake.tin.cat/version-0.x/guide/database-guide/removing-queries-from-cache.md)
- [Items guide](https://cherrycake.tin.cat/version-0.x/guide/items-guide.md): Using Items in your Cherrycake application brings you many benefits when interacting with the primordial objects of your app, like optimized loading, storage, caching and embedded security mechanisms.
- [Item cache](https://cherrycake.tin.cat/version-0.x/guide/items-guide/item-cache.md): All the performance benefits of a cache system when working with Items.
- [Item lists](https://cherrycake.tin.cat/version-0.x/guide/items-guide/item-lists.md): Item lists are groups of Item objects retrieved from the database.
- [Items custom filters](https://cherrycake.tin.cat/version-0.x/guide/items-guide/items-custom-filters.md)
- [Items custom ordering](https://cherrycake.tin.cat/version-0.x/guide/items-guide/items-custom-ordering.md)
- [Mixing filters and ordering](https://cherrycake.tin.cat/version-0.x/guide/items-guide/mixing-filters-and-ordering.md)
- [Items with relationships](https://cherrycake.tin.cat/version-0.x/guide/items-guide/items-relationships.md)
- [Items cache](https://cherrycake.tin.cat/version-0.x/guide/items-guide/items-cache.md)
- [HtmlDocument guide](https://cherrycake.tin.cat/version-0.x/guide/htmldocument-guide.md)
- [Css and Javascript guide](https://cherrycake.tin.cat/version-0.x/guide/css-and-javascript-guide.md)
- [Modules injecting CSS and JavaScript](https://cherrycake.tin.cat/version-0.x/guide/css-and-javascript-guide/modules-injecting-css-and-javascript.md)
- [Session guide](https://cherrycake.tin.cat/version-0.x/guide/session-guide.md): The Session module provides a session tracking and session storage mechanism.
- [Login guide](https://cherrycake.tin.cat/version-0.x/guide/login-guide.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Creating a complete login workflow](https://cherrycake.tin.cat/version-0.x/guide/login-guide/creating-a-complete-login-workflow.md)
- [Locale guide](https://cherrycake.tin.cat/version-0.x/guide/locale-guide.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Multilingual texts](https://cherrycake.tin.cat/version-0.x/guide/locale-guide/multilingual-texts.md): Locale allows you to change the language of your app based on the selected locale.
- [Domain based site localization](https://cherrycake.tin.cat/version-0.x/guide/locale-guide/domain-based-site-localization.md)
- [Log guide](https://cherrycake.tin.cat/version-0.x/guide/log-guide.md)
- [Loading Log events from the database](https://cherrycake.tin.cat/version-0.x/guide/log-guide/loading-systemlog-events-from-the-database.md)
- [Stats guide](https://cherrycake.tin.cat/version-0.x/guide/stats-guide.md)
- [Stats events with additional dimensions](https://cherrycake.tin.cat/version-0.x/guide/stats-guide/stats-events-with-additional-dimensions.md)
- [Loading Stats events from the database](https://cherrycake.tin.cat/version-0.x/guide/stats-guide/loading-stats-events-from-the-database.md)
- [Janitor guide](https://cherrycake.tin.cat/version-0.x/guide/janitor-guide.md): The Janitor module allows an app to program tasks to be executed periodically.
- [Janitor tasks configuration files](https://cherrycake.tin.cat/version-0.x/guide/janitor-guide/janitor-tasks-configuration-files.md)
- [Command line interface](https://cherrycake.tin.cat/version-0.x/guide/cli.md)
- [Debugging](https://cherrycake.tin.cat/version-0.x/guide/debugging.md)
- [Core modules](https://cherrycake.tin.cat/version-0.x/reference/core-modules.md)
- [Actions](https://cherrycake.tin.cat/version-0.x/reference/core-modules/actions-1.md): Manages the queries to the engine. It answers to queries by evaluating the query path and parameters and finding a matching mapped Action.
- [Actions methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/actions-1/actions.md)
- [Browser](https://cherrycake.tin.cat/version-0.x/reference/core-modules/browser.md): Module that identifies the client's browser identity and capabilities.
- [Cache](https://cherrycake.tin.cat/version-0.x/reference/core-modules/cache.md): Provides a standardized interface to implement caching and shared memory mechanisms into an App by connecting to multiple external cache providers.
- [Cache methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/cache/cache-methods.md)
- [Css](https://cherrycake.tin.cat/version-0.x/reference/core-modules/css.md): Provides a way to work with CSS stylesheets in a web application, with additional features and performance improvements.
- [Css methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/css/css-methods.md)
- [Database](https://cherrycake.tin.cat/version-0.x/reference/core-modules/database.md): Provides a standardized interface to connect to database servers like MySQL and MariaDB.
- [Email](https://cherrycake.tin.cat/version-0.x/reference/core-modules/email.md): Module to send email.
- [Errors](https://cherrycake.tin.cat/version-0.x/reference/core-modules/errors.md): Module to manage application and core errors.
- [HtmlDocument](https://cherrycake.tin.cat/version-0.x/reference/core-modules/htmldocument.md): Helps you create standard HTML headers and footers.
- [HtmlDocument methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/htmldocument/htmldocument-methods.md)
- [ItemAdmin](https://cherrycake.tin.cat/version-0.x/reference/core-modules/itemadmin.md): A module to admin Items.
- [Janitor](https://cherrycake.tin.cat/version-0.x/reference/core-modules/janitor.md): Allows an app to program tasks to be executed periodically.
- [Janitor methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/janitor/janitor-methods.md)
- [Javascript](https://cherrycake.tin.cat/version-0.x/reference/core-modules/javascript.md): Provides a way to work with JavaScript in a web application, with additional features and performance improvements.
- [Javascript methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/javascript/javascript-methods.md)
- [Locale](https://cherrycake.tin.cat/version-0.x/reference/core-modules/locale.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Locale methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/locale/locale-methods.md)
- [Log](https://cherrycake.tin.cat/version-0.x/reference/core-modules/log.md): The Log module stores app-related events in a persistent log as they occur, aimed at providing a log of meaningful events that happened in the app.
- [Log methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/log/log-methods.md)
- [Login](https://cherrycake.tin.cat/version-0.x/reference/core-modules/login.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Login methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/login/login-methods.md)
- [Output](https://cherrycake.tin.cat/version-0.x/reference/core-modules/output.md): Manages the final output produced by the app.
- [Output methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/output/methods.md)
- [Patterns](https://cherrycake.tin.cat/version-0.x/reference/core-modules/patterns.md): Provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Patterns methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/patterns/methods.md)
- [Security](https://cherrycake.tin.cat/version-0.x/reference/core-modules/security.md): Provides security mechanisms used by other modules to detect, prevent, log and block attacks like SQL injection, XSS and CSRF.
- [Security methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/security/methods.md)
- [Session](https://cherrycake.tin.cat/version-0.x/reference/core-modules/session.md): Provides a session tracking and storage mechanism.
- [Session methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/session/session-methods.md)
- [Stats](https://cherrycake.tin.cat/version-0.x/reference/core-modules/stats.md): The Stats module stores statistical events in a persistent log aimed at providing insight about the activity in your app.
- [Stats methods](https://cherrycake.tin.cat/version-0.x/reference/core-modules/stats/stats-methods.md)
- [SystemLog](https://cherrycake.tin.cat/version-0.x/reference/core-modules/systemlog.md): The SystemLog module stores system events in a persistent log as they occur, aimed at monitoring failures, warnings and notices that usually generated by core modules.
- [TableAdmin](https://cherrycake.tin.cat/version-0.x/reference/core-modules/tableadmin.md): A module to admin database tables.
- [Validate](https://cherrycake.tin.cat/version-0.x/reference/core-modules/validate.md): Module to validate different types of data.
- [Core classes](https://cherrycake.tin.cat/version-0.x/reference/core-classes.md)
- [Action](https://cherrycake.tin.cat/version-0.x/reference/core-classes/action.md)
- [Action methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/action/methods.md)
- [Action properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/action/properties.md)
- [AjaxResponseJson](https://cherrycake.tin.cat/version-0.x/reference/core-classes/ajaxresponsejson.md)
- [BasicObject](https://cherrycake.tin.cat/version-0.x/reference/core-classes/basicobject.md)
- [BasicObject methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/basicobject/basicobject-methods.md)
- [CacheProvider](https://cherrycake.tin.cat/version-0.x/reference/core-classes/cacheprovider.md): Represents a connection to a cache provider.
- [CacheProvider methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/cacheprovider/cacheprovider-methods.md)
- [Color](https://cherrycake.tin.cat/version-0.x/reference/core-classes/color.md)
- [DatabaseProvider](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaseprovider.md): Represents a connection to a database provider.
- [DatabaseProvider methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaseprovider/databaseprovider-methods.md)
- [DatabaseResult](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaseresult.md): Manages the result of a query to a database.
- [DatabaseResult methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaseresult/databaseresult-methods.md)
- [DatabaseResult properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaseresult/databaseresult-properties.md)
- [DatabaseRow](https://cherrycake.tin.cat/version-0.x/reference/core-classes/databaserow.md): Manages one row of the results of a query to a database.
- [Engine](https://cherrycake.tin.cat/version-0.x/reference/core-classes/engine.md)
- [Engine methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/engine/methods.md)
- [Engine properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/engine/engine-properties.md)
- [Gradient](https://cherrycake.tin.cat/version-0.x/reference/core-classes/gradient.md)
- [Item](https://cherrycake.tin.cat/version-0.x/reference/core-classes/item.md): Represents a fundamental object stored in a database.
- [Item methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/item/item-methods.md)
- [Item properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/item/item-properties.md)
- [Items](https://cherrycake.tin.cat/version-0.x/reference/core-classes/items.md)
- [Items methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/items/items-methods.md)
- [Items properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/items/items-properties.md)
- [Image](https://cherrycake.tin.cat/version-0.x/reference/core-classes/image.md)
- [JanitorTask](https://cherrycake.tin.cat/version-0.x/reference/core-classes/janitortask.md): Represents a task to be executed by Janitor.
- [JanitorTask methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/janitortask/janitortask-methods.md)
- [JanitorTask properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/janitortask/janitortask-properties.md)
- [LogEvent](https://cherrycake.tin.cat/version-0.x/reference/core-classes/logevent.md): Represents a log event to be handled by the Log module.
- [LogEvent methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/logevent/logevent-methods.md)
- [LogEvent Properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/logevent/logevent-properties.md)
- [LogEvents](https://cherrycake.tin.cat/version-0.x/reference/core-classes/logevents.md): Class that represents a list of LogEvent objects.
- [LogEvents methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/logevents/logevents-methods.md)
- [Module](https://cherrycake.tin.cat/version-0.x/reference/core-classes/module.md)
- [Module methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/module/methods.md)
- [Module properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/module/properties.md)
- [Response](https://cherrycake.tin.cat/version-0.x/reference/core-classes/response.md)
- [Request](https://cherrycake.tin.cat/version-0.x/reference/core-classes/request.md)
- [Request methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/request/request-methods.md)
- [RequestParameter](https://cherrycake.tin.cat/version-0.x/reference/core-classes/requestparameter.md)
- [RequestParameter methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/requestparameter/methods.md)
- [RequestPathComponent](https://cherrycake.tin.cat/version-0.x/reference/core-classes/requestpathcomponent.md)
- [RequestPathComponent methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/requestpathcomponent/methods.md)
- [Result](https://cherrycake.tin.cat/version-0.x/reference/core-classes/result.md)
- [StatsEvent](https://cherrycake.tin.cat/version-0.x/reference/core-classes/statsevent.md): Represents stats events for the Stats module. Custom stats events must extend this class.
- [StatsEvent properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/statsevent/statsevent-properties.md)
- [StatsEvents](https://cherrycake.tin.cat/version-0.x/reference/core-classes/statsevents.md)
- [StatsEvents methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/statsevents/statsevents-methods.md)
- [SystemLogEvent](https://cherrycake.tin.cat/version-0.x/reference/core-classes/systemlogevent.md): Represents system log events for the SystemLog module. Custom system events must extend this class.
- [SystemLogEvent methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/systemlogevent/systemlogevent-methods.md)
- [SystemLogEvent properties](https://cherrycake.tin.cat/version-0.x/reference/core-classes/systemlogevent/systemlogevent-properties.md)
- [SystemLogEvents](https://cherrycake.tin.cat/version-0.x/reference/core-classes/systemlogevents.md): Class that represents a list of SystemLogEvent objects.
- [SystemLogEvents methods](https://cherrycake.tin.cat/version-0.x/reference/core-classes/systemlogevents/systemlogevents-methods.md)
- [Code conventions](https://cherrycake.tin.cat/version-0.x/conventions.md): This are the official programming standards Cherrycake follows.
- [License](https://cherrycake.tin.cat/version-0.x/license.md)
- [Extras](https://cherrycake.tin.cat/version-0.x/extras.md)

## version 1.x beta

- [Introduction](https://cherrycake.tin.cat/version-1.x-beta/master.md): Cherrycake is a low-level programming framework for developing modular, efficient and secure PHP web applications.
- [Status](https://cherrycake.tin.cat/version-1.x-beta/status.md)
- [Changelog](https://cherrycake.tin.cat/version-1.x-beta/changelog.md)
- [Migration](https://cherrycake.tin.cat/version-1.x-beta/migration.md): Instructions on how to migrate your existing Cherrycake application from earlier versions of the Cherrycake engine.
- [Basics](https://cherrycake.tin.cat/version-1.x-beta/architecture/basics.md)
- [Modules](https://cherrycake.tin.cat/version-1.x-beta/architecture/modules.md): Modules pack process-specific functionality in isolated classes with auto-loading, dependency and configuration capabilities, so it's easier to keep your app structure clean and clear.
- [Classes](https://cherrycake.tin.cat/version-1.x-beta/architecture/classes.md): Classes encapsulate the object-specific structure and logic of entities in Cherrycake and in your application.
- [Lifecycle](https://cherrycake.tin.cat/version-1.x-beta/architecture/lifecycle.md): Understanding the lifecycle of a request in Cherrycake will give you valuable insight on how it works.
- [Deep lifecycle](https://cherrycake.tin.cat/version-1.x-beta/architecture/lifecycle/deep-lifecycle.md): Let's take a deep dive on a typical request lifecycle.
- [Performance](https://cherrycake.tin.cat/version-1.x-beta/architecture/performance.md): Cherrycake is capable of handling a high number of requests per second in a reasonable server setup, let's take a look at the most important performance features and tools it provides.
- [Security](https://cherrycake.tin.cat/version-1.x-beta/architecture/security.md): Cherrycake structure has been modeled from the ground up with security in mind. Let's explore its most important security features.
- [Patterns](https://cherrycake.tin.cat/version-1.x-beta/architecture/patterns.md): Cherrycake provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Files structure](https://cherrycake.tin.cat/version-1.x-beta/architecture/patterns/app-files-structure.md): Let's take a look at how are directories organized in a typical Cherrycake App setup, and the file naming conventions.
- [Items](https://cherrycake.tin.cat/version-1.x-beta/architecture/items.md): Cherrycake provides you with an optimized way of interacting with the primordial objects of your app.
- [Server requirements](https://cherrycake.tin.cat/version-1.x-beta/architecture/server-requirements.md)
- [Getting started](https://cherrycake.tin.cat/version-1.x-beta/guide/getting-started.md): A simple guide to build a simple "Hello world" application with Cherrycake.
- [Skeleton start](https://cherrycake.tin.cat/version-1.x-beta/guide/getting-started/skeleton.md): Start a Cherrycake app using the pre-built skeleton, a simple "Hello world" web app ready to run.
- [Docker start](https://cherrycake.tin.cat/version-1.x-beta/guide/getting-started/docker.md): Set up a development environment with a skeleton "Hello world" Cherrycake web app to start working in just a few minutes using Docker.
- [Modules guide](https://cherrycake.tin.cat/version-1.x-beta/guide/modules-guide.md): Modules are the fundamental containers of functionality in Cherrycake apps.
- [Classes guide](https://cherrycake.tin.cat/version-1.x-beta/guide/classes-guide.md): Classes contain the logic behind  the elemental objects that are used within a Cherrycake application.
- [Actions guide](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide.md): Actions is the routing core module of Cherrycake, and allows your application to receive requests and attend them accordingly.
- [Complex actions](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/complex-routes.md)
- [Variable path components](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/variable-path-components.md)
- [Accept GET or POST parameters](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/accept-get-or-post-parameters.md)
- [Getting the URL of an action](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/getting-the-url-of-an-action.md)
- [Cached actions](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/cached-actions.md)
- [Brute force attacks](https://cherrycake.tin.cat/version-1.x-beta/guide/actions-guide/brute-force-attacks.md)
- [Patterns guide](https://cherrycake.tin.cat/version-1.x-beta/guide/patterns-guide.md): Patterns provides your HTML, CSS, JavaScript and other types of files with a dynamic template mechanism that brings performance, re-usability and code tidiness benefits.
- [Passing variables to a pattern](https://cherrycake.tin.cat/version-1.x-beta/guide/patterns-guide/passing-variables-to-a-pattern.md)
- [Nested patterns](https://cherrycake.tin.cat/version-1.x-beta/guide/patterns-guide/nested-patterns.md)
- [Cached patterns](https://cherrycake.tin.cat/version-1.x-beta/guide/patterns-guide/cached-patterns.md)
- [Cache guide](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide.md): The Cache module provides your Cherrycake application with a standardized interface to implement caching and shared memory mechanisms into your App by connecting to multiple external cache providers.
- [Time To Live](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide/time-to-live.md)
- [Using cache](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide/using-cache.md)
- [Lists](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide/lists.md)
- [Queues](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide/queues.md)
- [Pools](https://cherrycake.tin.cat/version-1.x-beta/guide/cache-guide/pools.md)
- [Database guide](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide.md): The Database module provides your Cherrycake application with a standardized interface to connect to database servers like MySQL and MariaDB.
- [Basic queries](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide/basic-queries.md)
- [Prepared queries](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide/prepared-queries.md)
- [Cached queries](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide/cached-queries.md)
- [Cache key naming](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide/cache-key-naming.md)
- [Removing queries from cache](https://cherrycake.tin.cat/version-1.x-beta/guide/database-guide/removing-queries-from-cache.md)
- [Items guide](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide.md): Using Items in your Cherrycake application brings you many benefits when interacting with the primordial objects of your app, like optimized loading, storage, caching and embedded security mechanisms.
- [Item cache](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/item-cache.md): All the performance benefits of a cache system when working with Items.
- [Item lists](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/item-lists.md): Item lists are groups of Item objects retrieved from the database.
- [Items custom filters](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/items-custom-filters.md)
- [Items custom ordering](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/items-custom-ordering.md)
- [Mixing filters and ordering](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/mixing-filters-and-ordering.md)
- [Items with relationships](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/items-relationships.md)
- [Items cache](https://cherrycake.tin.cat/version-1.x-beta/guide/items-guide/items-cache.md)
- [HtmlDocument guide](https://cherrycake.tin.cat/version-1.x-beta/guide/htmldocument-guide.md)
- [Css and Javascript guide](https://cherrycake.tin.cat/version-1.x-beta/guide/css-and-javascript-guide.md)
- [Modules injecting CSS and JavaScript](https://cherrycake.tin.cat/version-1.x-beta/guide/css-and-javascript-guide/modules-injecting-css-and-javascript.md)
- [Session guide](https://cherrycake.tin.cat/version-1.x-beta/guide/session-guide.md): The Session module provides a session tracking and session storage mechanism.
- [Login guide](https://cherrycake.tin.cat/version-1.x-beta/guide/login-guide.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Creating a complete login workflow](https://cherrycake.tin.cat/version-1.x-beta/guide/login-guide/creating-a-complete-login-workflow.md)
- [Locale guide](https://cherrycake.tin.cat/version-1.x-beta/guide/locale-guide.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Multilingual texts](https://cherrycake.tin.cat/version-1.x-beta/guide/locale-guide/multilingual-texts.md): Locale allows you to change the language of your app based on the selected locale.
- [Domain based site localization](https://cherrycake.tin.cat/version-1.x-beta/guide/locale-guide/domain-based-site-localization.md)
- [Log guide](https://cherrycake.tin.cat/version-1.x-beta/guide/log-guide.md)
- [Loading Log events from the database](https://cherrycake.tin.cat/version-1.x-beta/guide/log-guide/loading-systemlog-events-from-the-database.md)
- [Stats guide](https://cherrycake.tin.cat/version-1.x-beta/guide/stats-guide.md)
- [Stats events with additional dimensions](https://cherrycake.tin.cat/version-1.x-beta/guide/stats-guide/stats-events-with-additional-dimensions.md)
- [Loading Stats events from the database](https://cherrycake.tin.cat/version-1.x-beta/guide/stats-guide/loading-stats-events-from-the-database.md)
- [Janitor guide](https://cherrycake.tin.cat/version-1.x-beta/guide/janitor-guide.md): The Janitor module allows an app to program tasks to be executed periodically.
- [Janitor tasks configuration files](https://cherrycake.tin.cat/version-1.x-beta/guide/janitor-guide/janitor-tasks-configuration-files.md)
- [Command line interface](https://cherrycake.tin.cat/version-1.x-beta/guide/cli.md)
- [Debugging](https://cherrycake.tin.cat/version-1.x-beta/guide/debugging.md)
- [Core modules](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules.md)
- [Actions](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/actions-1.md): Manages the queries to the engine. It answers to queries by evaluating the query path and parameters and finding a matching mapped Action.
- [Actions methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/actions-1/actions.md)
- [Browser](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/browser.md): Module that identifies the client's browser identity and capabilities.
- [Cache](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/cache.md): Provides a standardized interface to implement caching and shared memory mechanisms into an App by connecting to multiple external cache providers.
- [Cache methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/cache/cache-methods.md)
- [Css](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/css.md): Provides a way to work with CSS stylesheets in a web application, with additional features and performance improvements.
- [Css methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/css/css-methods.md)
- [Database](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/database.md): Provides a standardized interface to connect to database servers like MySQL and MariaDB.
- [Email](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/email.md): Module to send email.
- [Errors](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/errors.md): Module to manage application and core errors.
- [HtmlDocument](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/htmldocument.md): Helps you create standard HTML headers and footers.
- [HtmlDocument methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/htmldocument/htmldocument-methods.md)
- [ItemAdmin](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/itemadmin.md): A module to admin Items.
- [Janitor](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/janitor.md): Allows an app to program tasks to be executed periodically.
- [Janitor methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/janitor/janitor-methods.md)
- [Javascript](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/javascript.md): Provides a way to work with JavaScript in a web application, with additional features and performance improvements.
- [Javascript methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/javascript/javascript-methods.md)
- [Locale](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/locale.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Locale methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/locale/locale-methods.md)
- [Log](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/log.md): The Log module stores app-related events in a persistent log as they occur, aimed at providing a log of meaningful events that happened in the app.
- [Log methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/log/log-methods.md)
- [Login](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/login.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Login methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/login/login-methods.md)
- [Output](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/output.md): Manages the final output produced by the app.
- [Output methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/output/methods.md)
- [Patterns](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/patterns.md): Provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Patterns methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/patterns/methods.md)
- [Security](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/security.md): Provides security mechanisms used by other modules to detect, prevent, log and block attacks like SQL injection, XSS and CSRF.
- [Security methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/security/methods.md)
- [Session](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/session.md): Provides a session tracking and storage mechanism.
- [Session methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/session/session-methods.md)
- [Stats](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/stats.md): The Stats module stores statistical events in a persistent log aimed at providing insight about the activity in your app.
- [Stats methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/stats/stats-methods.md)
- [SystemLog](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/systemlog.md): The SystemLog module stores system events in a persistent log as they occur, aimed at monitoring failures, warnings and notices that usually generated by core modules.
- [TableAdmin](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/tableadmin.md): A module to admin database tables.
- [Validate](https://cherrycake.tin.cat/version-1.x-beta/reference/core-modules/validate.md): Module to validate different types of data.
- [Core classes](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes.md)
- [Action](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/action.md)
- [Action methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/action/methods.md)
- [Action properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/action/properties.md)
- [AjaxResponseJson](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/ajaxresponsejson.md)
- [BasicObject](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/basicobject.md)
- [BasicObject methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/basicobject/basicobject-methods.md)
- [CacheProvider](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/cacheprovider.md): Represents a connection to a cache provider.
- [CacheProvider methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/cacheprovider/cacheprovider-methods.md)
- [Color](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/color.md)
- [DatabaseProvider](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaseprovider.md): Represents a connection to a database provider.
- [DatabaseProvider methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaseprovider/databaseprovider-methods.md)
- [DatabaseResult](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaseresult.md): Manages the result of a query to a database.
- [DatabaseResult methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaseresult/databaseresult-methods.md)
- [DatabaseResult properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaseresult/databaseresult-properties.md)
- [DatabaseRow](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/databaserow.md): Manages one row of the results of a query to a database.
- [Engine](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/engine.md)
- [Engine methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/engine/methods.md)
- [Engine properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/engine/engine-properties.md)
- [Gradient](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/gradient.md)
- [Item](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/item.md): Represents a fundamental object stored in a database.
- [Item methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/item/item-methods.md)
- [Item properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/item/item-properties.md)
- [Items](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/items.md)
- [Items methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/items/items-methods.md)
- [Items properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/items/items-properties.md)
- [Image](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/image.md)
- [JanitorTask](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/janitortask.md): Represents a task to be executed by Janitor.
- [JanitorTask methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/janitortask/janitortask-methods.md)
- [JanitorTask properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/janitortask/janitortask-properties.md)
- [LogEvent](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/logevent.md): Represents a log event to be handled by the Log module.
- [LogEvent methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/logevent/logevent-methods.md)
- [LogEvent Properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/logevent/logevent-properties.md)
- [LogEvents](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/logevents.md): Class that represents a list of LogEvent objects.
- [LogEvents methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/logevents/logevents-methods.md)
- [Module](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/module.md)
- [Module methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/module/methods.md)
- [Module properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/module/properties.md)
- [Response](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/response.md)
- [Request](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/request.md)
- [Request methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/request/request-methods.md)
- [RequestParameter](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/requestparameter.md)
- [RequestParameter methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/requestparameter/methods.md)
- [RequestPathComponent](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/requestpathcomponent.md)
- [RequestPathComponent methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/requestpathcomponent/methods.md)
- [Result](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/result.md)
- [StatsEvent](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/statsevent.md): Represents stats events for the Stats module. Custom stats events must extend this class.
- [StatsEvent properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/statsevent/statsevent-properties.md)
- [StatsEvents](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/statsevents.md)
- [StatsEvents methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/statsevents/statsevents-methods.md)
- [SystemLogEvent](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/systemlogevent.md): Represents system log events for the SystemLog module. Custom system events must extend this class.
- [SystemLogEvent methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/systemlogevent/systemlogevent-methods.md)
- [SystemLogEvent properties](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/systemlogevent/systemlogevent-properties.md)
- [SystemLogEvents](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/systemlogevents.md): Class that represents a list of SystemLogEvent objects.
- [SystemLogEvents methods](https://cherrycake.tin.cat/version-1.x-beta/reference/core-classes/systemlogevents/systemlogevents-methods.md)
- [Code conventions](https://cherrycake.tin.cat/version-1.x-beta/conventions.md): This are the official programming standards Cherrycake follows.
- [License](https://cherrycake.tin.cat/version-1.x-beta/license.md)
- [Extras](https://cherrycake.tin.cat/version-1.x-beta/extras.md)

## version 2.x alpha

- [Introduction](https://cherrycake.tin.cat/master.md): Cherrycake is a low-level programming framework for developing modular, efficient and secure PHP web applications.
- [Changelog](https://cherrycake.tin.cat/changelog.md)
- [Migration](https://cherrycake.tin.cat/migration.md): Instructions on how to migrate your existing Cherrycake application from earlier versions of the Cherrycake engine.
- [Basics](https://cherrycake.tin.cat/architecture/basics.md)
- [Modules](https://cherrycake.tin.cat/architecture/modules.md): Modules pack process-specific functionality in isolated classes with auto-loading, dependency and configuration capabilities, so it's easier to keep your app structure clean and clear.
- [Classes](https://cherrycake.tin.cat/architecture/classes.md): Classes encapsulate the object-specific structure and logic of entities in Cherrycake and in your application.
- [Lifecycle](https://cherrycake.tin.cat/architecture/lifecycle.md): Understanding the lifecycle of a request in Cherrycake will give you valuable insight on how it works.
- [Deep lifecycle](https://cherrycake.tin.cat/architecture/lifecycle/deep-lifecycle.md): Let's take a deep dive on a typical request lifecycle.
- [Performance](https://cherrycake.tin.cat/architecture/performance.md): Cherrycake is capable of handling a high number of requests per second in a reasonable server setup, let's take a look at the most important performance features and tools it provides.
- [Security](https://cherrycake.tin.cat/architecture/security.md): Cherrycake structure has been modeled from the ground up with security in mind. Let's explore its most important security features.
- [Patterns](https://cherrycake.tin.cat/architecture/patterns.md): Cherrycake provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Files structure](https://cherrycake.tin.cat/architecture/patterns/app-files-structure.md): Let's take a look at how are directories organized in a typical Cherrycake App setup, and the file naming conventions.
- [Items](https://cherrycake.tin.cat/architecture/items.md): Cherrycake provides you with an optimized way of interacting with the primordial objects of your app.
- [Server requirements](https://cherrycake.tin.cat/architecture/server-requirements.md)
- [Getting started](https://cherrycake.tin.cat/guide/getting-started.md): A simple guide to build a simple "Hello world" application with Cherrycake.
- [Skeleton start](https://cherrycake.tin.cat/guide/getting-started/skeleton.md): Start a Cherrycake app using the pre-built skeleton, a simple "Hello world" web app ready to run.
- [Docker start](https://cherrycake.tin.cat/guide/getting-started/docker.md): Set up a development environment with a skeleton "Hello world" Cherrycake web app to start working in just a few minutes using Docker.
- [Modules guide](https://cherrycake.tin.cat/guide/modules-guide.md): Modules are the fundamental containers of functionality in Cherrycake apps.
- [Classes guide](https://cherrycake.tin.cat/guide/classes-guide.md): Classes contain the logic behind  the elemental objects that are used within a Cherrycake application.
- [Actions guide](https://cherrycake.tin.cat/guide/actions-guide.md): Actions is the routing core module of Cherrycake, and allows your application to receive requests and attend them accordingly.
- [Complex actions](https://cherrycake.tin.cat/guide/actions-guide/complex-routes.md)
- [Variable path components](https://cherrycake.tin.cat/guide/actions-guide/variable-path-components.md)
- [Accept GET or POST parameters](https://cherrycake.tin.cat/guide/actions-guide/accept-get-or-post-parameters.md)
- [Getting the URL of an action](https://cherrycake.tin.cat/guide/actions-guide/getting-the-url-of-an-action.md)
- [Cached actions](https://cherrycake.tin.cat/guide/actions-guide/cached-actions.md)
- [Brute force attacks](https://cherrycake.tin.cat/guide/actions-guide/brute-force-attacks.md)
- [Patterns guide](https://cherrycake.tin.cat/guide/patterns-guide.md): Patterns provides your HTML, CSS, JavaScript and other types of files with a dynamic template mechanism that brings performance, re-usability and code tidiness benefits.
- [Passing variables to a pattern](https://cherrycake.tin.cat/guide/patterns-guide/passing-variables-to-a-pattern.md)
- [Nested patterns](https://cherrycake.tin.cat/guide/patterns-guide/nested-patterns.md)
- [Cached patterns](https://cherrycake.tin.cat/guide/patterns-guide/cached-patterns.md)
- [Cache guide](https://cherrycake.tin.cat/guide/cache-guide.md): The Cache module provides your Cherrycake application with a standardized interface to implement caching and shared memory mechanisms into your App by connecting to multiple external cache providers.
- [Time To Live](https://cherrycake.tin.cat/guide/cache-guide/time-to-live.md)
- [Using cache](https://cherrycake.tin.cat/guide/cache-guide/using-cache.md)
- [Lists](https://cherrycake.tin.cat/guide/cache-guide/lists.md)
- [Queues](https://cherrycake.tin.cat/guide/cache-guide/queues.md)
- [Pools](https://cherrycake.tin.cat/guide/cache-guide/pools.md)
- [Database guide](https://cherrycake.tin.cat/guide/database-guide.md): The Database module provides your Cherrycake application with a standardized interface to connect to database servers like MySQL and MariaDB.
- [Basic queries](https://cherrycake.tin.cat/guide/database-guide/basic-queries.md)
- [Prepared queries](https://cherrycake.tin.cat/guide/database-guide/prepared-queries.md)
- [Cached queries](https://cherrycake.tin.cat/guide/database-guide/cached-queries.md)
- [Cache key naming](https://cherrycake.tin.cat/guide/database-guide/cache-key-naming.md)
- [Removing queries from cache](https://cherrycake.tin.cat/guide/database-guide/removing-queries-from-cache.md)
- [Items guide](https://cherrycake.tin.cat/guide/items-guide.md): Using Items in your Cherrycake application brings you many benefits when interacting with the primordial objects of your app, like optimized loading, storage, caching and embedded security mechanisms.
- [Item cache](https://cherrycake.tin.cat/guide/items-guide/item-cache.md): All the performance benefits of a cache system when working with Items.
- [Item lists](https://cherrycake.tin.cat/guide/items-guide/item-lists.md): Item lists are groups of Item objects retrieved from the database.
- [Items custom filters](https://cherrycake.tin.cat/guide/items-guide/items-custom-filters.md)
- [Items custom ordering](https://cherrycake.tin.cat/guide/items-guide/items-custom-ordering.md)
- [Mixing filters and ordering](https://cherrycake.tin.cat/guide/items-guide/mixing-filters-and-ordering.md)
- [Items with relationships](https://cherrycake.tin.cat/guide/items-guide/items-relationships.md)
- [Items cache](https://cherrycake.tin.cat/guide/items-guide/items-cache.md)
- [HtmlDocument guide](https://cherrycake.tin.cat/guide/htmldocument-guide.md)
- [Css and Javascript guide](https://cherrycake.tin.cat/guide/css-and-javascript-guide.md)
- [Modules injecting CSS and JavaScript](https://cherrycake.tin.cat/guide/css-and-javascript-guide/modules-injecting-css-and-javascript.md)
- [Session guide](https://cherrycake.tin.cat/guide/session-guide.md): The Session module provides a session tracking and session storage mechanism.
- [Login guide](https://cherrycake.tin.cat/guide/login-guide.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Creating a complete login workflow](https://cherrycake.tin.cat/guide/login-guide/creating-a-complete-login-workflow.md)
- [Locale guide](https://cherrycake.tin.cat/guide/locale-guide.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Multilingual texts](https://cherrycake.tin.cat/guide/locale-guide/multilingual-texts.md): Locale allows you to change the language of your app based on the selected locale.
- [Domain based site localization](https://cherrycake.tin.cat/guide/locale-guide/domain-based-site-localization.md)
- [Log guide](https://cherrycake.tin.cat/guide/log-guide.md)
- [Loading Log events from the database](https://cherrycake.tin.cat/guide/log-guide/loading-systemlog-events-from-the-database.md)
- [Stats guide](https://cherrycake.tin.cat/guide/stats-guide.md)
- [Stats events with additional dimensions](https://cherrycake.tin.cat/guide/stats-guide/stats-events-with-additional-dimensions.md)
- [Loading Stats events from the database](https://cherrycake.tin.cat/guide/stats-guide/loading-stats-events-from-the-database.md)
- [Janitor guide](https://cherrycake.tin.cat/guide/janitor-guide.md): The Janitor module allows an app to program tasks to be executed periodically.
- [Janitor tasks configuration files](https://cherrycake.tin.cat/guide/janitor-guide/janitor-tasks-configuration-files.md)
- [Command line interface](https://cherrycake.tin.cat/guide/cli.md)
- [Debugging](https://cherrycake.tin.cat/guide/debugging.md)
- [Core modules](https://cherrycake.tin.cat/reference/core-modules.md)
- [Actions](https://cherrycake.tin.cat/reference/core-modules/actions-1.md): Manages the queries to the engine. It answers to queries by evaluating the query path and parameters and finding a matching mapped Action.
- [Actions methods](https://cherrycake.tin.cat/reference/core-modules/actions-1/actions.md)
- [Browser](https://cherrycake.tin.cat/reference/core-modules/browser.md): Module that identifies the client's browser identity and capabilities.
- [Cache](https://cherrycake.tin.cat/reference/core-modules/cache.md): Provides a standardized interface to implement caching and shared memory mechanisms into an App by connecting to multiple external cache providers.
- [Cache methods](https://cherrycake.tin.cat/reference/core-modules/cache/cache-methods.md)
- [Css](https://cherrycake.tin.cat/reference/core-modules/css.md): Provides a way to work with CSS stylesheets in a web application, with additional features and performance improvements.
- [Css methods](https://cherrycake.tin.cat/reference/core-modules/css/css-methods.md)
- [Database](https://cherrycake.tin.cat/reference/core-modules/database.md): Provides a standardized interface to connect to database servers like MySQL and MariaDB.
- [Email](https://cherrycake.tin.cat/reference/core-modules/email.md): Module to send email.
- [Errors](https://cherrycake.tin.cat/reference/core-modules/errors.md): Module to manage application and core errors.
- [HtmlDocument](https://cherrycake.tin.cat/reference/core-modules/htmldocument.md): Helps you create standard HTML headers and footers.
- [HtmlDocument methods](https://cherrycake.tin.cat/reference/core-modules/htmldocument/htmldocument-methods.md)
- [ItemAdmin](https://cherrycake.tin.cat/reference/core-modules/itemadmin.md): A module to admin Items.
- [Janitor](https://cherrycake.tin.cat/reference/core-modules/janitor.md): Allows an app to program tasks to be executed periodically.
- [Janitor methods](https://cherrycake.tin.cat/reference/core-modules/janitor/janitor-methods.md)
- [Javascript](https://cherrycake.tin.cat/reference/core-modules/javascript.md): Provides a way to work with JavaScript in a web application, with additional features and performance improvements.
- [Javascript methods](https://cherrycake.tin.cat/reference/core-modules/javascript/javascript-methods.md)
- [Locale](https://cherrycake.tin.cat/reference/core-modules/locale.md): The Locale module provides a mechanism to build apps that adapt to users using different languages, timezones, currencies and other local unit standards.
- [Locale methods](https://cherrycake.tin.cat/reference/core-modules/locale/locale-methods.md)
- [Log](https://cherrycake.tin.cat/reference/core-modules/log.md): The Log module stores app-related events in a persistent log as they occur, aimed at providing a log of meaningful events that happened in the app.
- [Log methods](https://cherrycake.tin.cat/reference/core-modules/log/log-methods.md)
- [Login](https://cherrycake.tin.cat/reference/core-modules/login.md): The Login module provides a standardized method for implementing secure user identification workflows for web apps.
- [Login methods](https://cherrycake.tin.cat/reference/core-modules/login/login-methods.md)
- [Output](https://cherrycake.tin.cat/reference/core-modules/output.md): Manages the final output produced by the app.
- [Output methods](https://cherrycake.tin.cat/reference/core-modules/output/methods.md)
- [Patterns](https://cherrycake.tin.cat/reference/core-modules/patterns.md): Provides a patterns parser that uses PHP code to integrate your code seamlessly with your template files, providing advanced Cherrycake capabilities to your template structures.
- [Patterns methods](https://cherrycake.tin.cat/reference/core-modules/patterns/methods.md)
- [Security](https://cherrycake.tin.cat/reference/core-modules/security.md): Provides security mechanisms used by other modules to detect, prevent, log and block attacks like SQL injection, XSS and CSRF.
- [Security methods](https://cherrycake.tin.cat/reference/core-modules/security/methods.md)
- [Session](https://cherrycake.tin.cat/reference/core-modules/session.md): Provides a session tracking and storage mechanism.
- [Session methods](https://cherrycake.tin.cat/reference/core-modules/session/session-methods.md)
- [Stats](https://cherrycake.tin.cat/reference/core-modules/stats.md): The Stats module stores statistical events in a persistent log aimed at providing insight about the activity in your app.
- [Stats methods](https://cherrycake.tin.cat/reference/core-modules/stats/stats-methods.md)
- [SystemLog](https://cherrycake.tin.cat/reference/core-modules/systemlog.md): The SystemLog module stores system events in a persistent log as they occur, aimed at monitoring failures, warnings and notices that usually generated by core modules.
- [TableAdmin](https://cherrycake.tin.cat/reference/core-modules/tableadmin.md): A module to admin database tables.
- [Translation](https://cherrycake.tin.cat/reference/core-modules/translation.md): The Translation module provides a mechanism to use texts in multiple languages.
- [Validate](https://cherrycake.tin.cat/reference/core-modules/validate.md): Module to validate different types of data.
- [Core classes](https://cherrycake.tin.cat/reference/core-classes.md)
- [Action](https://cherrycake.tin.cat/reference/core-classes/action.md)
- [Action methods](https://cherrycake.tin.cat/reference/core-classes/action/methods.md)
- [Action properties](https://cherrycake.tin.cat/reference/core-classes/action/properties.md)
- [AjaxResponseJson](https://cherrycake.tin.cat/reference/core-classes/ajaxresponsejson.md)
- [BasicObject](https://cherrycake.tin.cat/reference/core-classes/basicobject.md)
- [BasicObject methods](https://cherrycake.tin.cat/reference/core-classes/basicobject/basicobject-methods.md)
- [CacheProvider](https://cherrycake.tin.cat/reference/core-classes/cacheprovider.md): Represents a connection to a cache provider.
- [CacheProvider methods](https://cherrycake.tin.cat/reference/core-classes/cacheprovider/cacheprovider-methods.md)
- [Color](https://cherrycake.tin.cat/reference/core-classes/color.md)
- [DatabaseProvider](https://cherrycake.tin.cat/reference/core-classes/databaseprovider.md): Represents a connection to a database provider.
- [DatabaseProvider methods](https://cherrycake.tin.cat/reference/core-classes/databaseprovider/databaseprovider-methods.md)
- [DatabaseResult](https://cherrycake.tin.cat/reference/core-classes/databaseresult.md): Manages the result of a query to a database.
- [DatabaseResult methods](https://cherrycake.tin.cat/reference/core-classes/databaseresult/databaseresult-methods.md)
- [DatabaseResult properties](https://cherrycake.tin.cat/reference/core-classes/databaseresult/databaseresult-properties.md)
- [DatabaseRow](https://cherrycake.tin.cat/reference/core-classes/databaserow.md): Manages one row of the results of a query to a database.
- [Engine](https://cherrycake.tin.cat/reference/core-classes/engine.md)
- [Engine methods](https://cherrycake.tin.cat/reference/core-classes/engine/methods.md)
- [Engine properties](https://cherrycake.tin.cat/reference/core-classes/engine/engine-properties.md)
- [Gradient](https://cherrycake.tin.cat/reference/core-classes/gradient.md)
- [Item](https://cherrycake.tin.cat/reference/core-classes/item.md): Represents a fundamental object stored in a database.
- [Item methods](https://cherrycake.tin.cat/reference/core-classes/item/item-methods.md)
- [Item properties](https://cherrycake.tin.cat/reference/core-classes/item/item-properties.md)
- [Items](https://cherrycake.tin.cat/reference/core-classes/items.md)
- [Items methods](https://cherrycake.tin.cat/reference/core-classes/items/items-methods.md)
- [Items properties](https://cherrycake.tin.cat/reference/core-classes/items/items-properties.md)
- [Image](https://cherrycake.tin.cat/reference/core-classes/image.md)
- [JanitorTask](https://cherrycake.tin.cat/reference/core-classes/janitortask.md): Represents a task to be executed by Janitor.
- [JanitorTask methods](https://cherrycake.tin.cat/reference/core-classes/janitortask/janitortask-methods.md)
- [JanitorTask properties](https://cherrycake.tin.cat/reference/core-classes/janitortask/janitortask-properties.md)
- [LogEvent](https://cherrycake.tin.cat/reference/core-classes/logevent.md): Represents a log event to be handled by the Log module.
- [LogEvent methods](https://cherrycake.tin.cat/reference/core-classes/logevent/logevent-methods.md)
- [LogEvent Properties](https://cherrycake.tin.cat/reference/core-classes/logevent/logevent-properties.md)
- [LogEvents](https://cherrycake.tin.cat/reference/core-classes/logevents.md): Class that represents a list of LogEvent objects.
- [LogEvents methods](https://cherrycake.tin.cat/reference/core-classes/logevents/logevents-methods.md)
- [Module](https://cherrycake.tin.cat/reference/core-classes/module.md)
- [Module methods](https://cherrycake.tin.cat/reference/core-classes/module/methods.md)
- [Module properties](https://cherrycake.tin.cat/reference/core-classes/module/properties.md)
- [Response](https://cherrycake.tin.cat/reference/core-classes/response.md)
- [Request](https://cherrycake.tin.cat/reference/core-classes/request.md)
- [Request methods](https://cherrycake.tin.cat/reference/core-classes/request/request-methods.md)
- [RequestParameter](https://cherrycake.tin.cat/reference/core-classes/requestparameter.md)
- [RequestParameter methods](https://cherrycake.tin.cat/reference/core-classes/requestparameter/methods.md)
- [RequestPathComponent](https://cherrycake.tin.cat/reference/core-classes/requestpathcomponent.md)
- [RequestPathComponent methods](https://cherrycake.tin.cat/reference/core-classes/requestpathcomponent/methods.md)
- [Result](https://cherrycake.tin.cat/reference/core-classes/result.md)
- [StatsEvent](https://cherrycake.tin.cat/reference/core-classes/statsevent.md): Represents stats events for the Stats module. Custom stats events must extend this class.
- [StatsEvent properties](https://cherrycake.tin.cat/reference/core-classes/statsevent/statsevent-properties.md)
- [StatsEvents](https://cherrycake.tin.cat/reference/core-classes/statsevents.md)
- [StatsEvents methods](https://cherrycake.tin.cat/reference/core-classes/statsevents/statsevents-methods.md)
- [SystemLogEvent](https://cherrycake.tin.cat/reference/core-classes/systemlogevent.md): Represents system log events for the SystemLog module. Custom system events must extend this class.
- [SystemLogEvent methods](https://cherrycake.tin.cat/reference/core-classes/systemlogevent/systemlogevent-methods.md)
- [SystemLogEvent properties](https://cherrycake.tin.cat/reference/core-classes/systemlogevent/systemlogevent-properties.md)
- [SystemLogEvents](https://cherrycake.tin.cat/reference/core-classes/systemlogevents.md): Class that represents a list of SystemLogEvent objects.
- [SystemLogEvents methods](https://cherrycake.tin.cat/reference/core-classes/systemlogevents/systemlogevents-methods.md)
- [Code conventions](https://cherrycake.tin.cat/conventions.md): This are the official programming standards Cherrycake follows.
- [License](https://cherrycake.tin.cat/license.md)
- [Extras](https://cherrycake.tin.cat/extras.md)
