# elixir_cache v0.5.0 - Table of Contents > Standardized and testable caching across your app. In test caches are isolated. ## Pages - Getting Started - [Introduction to ElixirCache](introduction.md) - Tutorials - [Installation](installation.md) - [Basic Cache Operations](basic_operations.md) - [Advanced Cache Techniques](advanced_techniques.md) - How-to Guides - [Using Strategy Adapters](using_strategies.md) - [How to Choose the Right Cache Adapter](choosing_adapter.md) - [How to Set Up Redis Caching](redis_setup.md) - [How to Test Applications Using ElixirCache](testing_with_cache.md) - [How to Use Metrics and Telemetry with ElixirCache](using_metrics.md) - Explanation - [Architecture and Core Concepts](architecture.md) - Reference - [API Reference](api.md) - Changelog - [0.5.0](changelog.md) ## Modules - [Cache.MultiLayer.Coordinator](Cache.MultiLayer.Coordinator.md): Per-node coordinator for cross-node layer coherence in `Cache.MultiLayer`. - Main - [Cache](Cache.md): # ElixirCache [![Hex version badge](https://img.shields.io/hexpm/v/elixir_cache.svg)](https://hex.pm/packages/elixir_cache) [![Test](https://github.com/MikaAK/elixir_cache/actions/workflows/test.yml/badge.svg)](https://github.com/MikaAK/elixir_cache/actions/workflows/test.yml) [![Credo](https://github.com/MikaAK/elixir_cache/actions/workflows/credo.yml/badge.svg)](https://github.com/MikaAK/elixir_cache/actions/workflows/credo.yml) [![Dialyzer](https://github.com/MikaAK/elixir_cache/actions/workflows/dialyzer.yml/badge.svg)](https://github.com/MikaAK/elixir_cache/actions/workflows/dialyzer.yml) [![Coverage](https://github.com/MikaAK/elixir_cache/actions/workflows/test.yml/badge.svg)](https://github.com/MikaAK/elixir_cache/actions/workflows/test.yml) - [Cache.Metrics](Cache.Metrics.md): Add the following metrics for elixir_cache into [prometheus_telmetery](https://hexdocs.pm/prometheus_telemetry), this module will only be included if the library is included - Adapters - [Cache.Agent](Cache.Agent.md): This module is the Agent adapter. Very lightweight use only - [Cache.ConCache](Cache.ConCache.md): ETS Based cache https://github.com/sasa1977/con_cache - [Cache.Counter](Cache.Counter.md): Atomic integer counter adapter backed by Erlang's `:counters` module. - [Cache.DETS](Cache.DETS.md): DETS adapter so that we can use dets as a cache - [Cache.ETS](Cache.ETS.md): ETS (Erlang Term Storage) adapter for high-performance in-memory caching. - [Cache.PersistentTerm](Cache.PersistentTerm.md): `:persistent_term` adapter for storing rarely-written, frequently-read cached values. - [Cache.Redis](Cache.Redis.md): Redis adapter for distributed caching with ElixirCache. - Strategies - [Cache.HashRing](Cache.HashRing.md): Consistent hash ring strategy adapter using `libring`. - [Cache.MultiLayer](Cache.MultiLayer.md): Multi-layer caching strategy that cascades through multiple cache layers. - [Cache.RefreshAhead](Cache.RefreshAhead.md): Refresh-ahead caching strategy that proactively refreshes values before they expire. - [Cache.Strategy](Cache.Strategy.md): Behaviour for strategy-based cache adapters. - Test Utils - [Cache.CaseTemplate](Cache.CaseTemplate.md): A reusable ExUnit case template for applications using `elixir_cache`. - [Cache.Sandbox](Cache.Sandbox.md): Sandbox adapter for isolated testing of applications using ElixirCache. - [Cache.SandboxRegistry](Cache.SandboxRegistry.md): This module is used to start the sandbox registry and register caches in test mode