# AshScylla v1.6.0 - Table of Contents ## Pages - [README](readme.md) - [AshScylla Usage Guide](usage_guide.md) - [Development Guide: AshScylla with Dev Container](dev_guide.md) - [Production Guide: AshScylla with ScyllaDB Cluster](production_guide.md) - [AshScylla Implementation Summary](implementation_summary.md) - [Error Handling Guide](error_handling.md) - [Changelog](changelog.md) ## Modules - [AshScylla.Application](AshScylla.Application.md): Application callback for AshScylla. - [AshScylla.Connection](AshScylla.Connection.md): GenServer wrapper for Xandra connections. - [AshScylla.DataLayer.SchemaUtils](AshScylla.DataLayer.SchemaUtils.md): Shared schema utilities for table names, column analysis, and identifier quoting. - [AshScylla.DataLayer.Types](AshScylla.DataLayer.Types.md): Shared CQL type mapping and conversion helpers. - [AshScylla.Extension](AshScylla.Extension.md): AshScylla extension for `mix ash.codegen` and `mix ash.migrate` support. - [AshScylla.Identifier](AshScylla.Identifier.md): Centralized CQL identifier sanitization. - [AshScylla.MigrationGenerator](AshScylla.MigrationGenerator.md): Generates CQL migration files from Ash resource definitions. - [AshScylla.Migrator](AshScylla.Migrator.md): Thin wrapper for executing CQL schema migrations via Xandra directly. - [AshScylla.MixHelpers](AshScylla.MixHelpers.md): Shared helper functions for AshScylla Mix tasks. - [AshScylla.ResourceGenerator](AshScylla.ResourceGenerator.md): Generates starter Ash Resource modules for AshScylla. - [AshScylla.Schema](AshScylla.Schema.md): Behaviour for schema migration modules loaded from `priv/migrations`. - [AshScylla.Schema.Resource](AshScylla.Schema.Resource.md): Struct representing a single resource's schema statements. - [AshScylla.SchemaLoader](AshScylla.SchemaLoader.md): Loads and discovers schema migration modules from `priv//migrations`. - [MyApp.CustomRepo](MyApp.CustomRepo.md): AshScylla Repo for ash_scylla. - [MyApp.ProdRepo](MyApp.ProdRepo.md): AshScylla Repo for my_app. - Core - [AshScylla](AshScylla.md): AshScylla is a data layer for Ash Framework that uses ScyllaDB (via Xandra). - [AshScylla.DataLayer](AshScylla.DataLayer.md): An Ash data layer for ScyllaDB using Xandra (direct CQL driver). - [AshScylla.Query](AshScylla.Query.md): Represents a pending ScyllaDB query being built from Ash query expressions. - Schema Helpers - [AshScylla.Migration](AshScylla.Migration.md): CQL schema generation helpers for ScyllaDB. - Data Layer Modules - [AshScylla.DataLayer.Batch](AshScylla.DataLayer.Batch.md): Batch operations support for AshScylla using ScyllaDB's BATCH statements. - [AshScylla.DataLayer.Collection](AshScylla.DataLayer.Collection.md): Collection type (LIST, SET, MAP) optimization for ScyllaDB. - [AshScylla.DataLayer.Compression](AshScylla.DataLayer.Compression.md): Compression support for large payloads in ScyllaDB. - [AshScylla.DataLayer.Dsl](AshScylla.DataLayer.Dsl.md): DSL extensions for configuring ScyllaDB-specific options on Ash resources. - [AshScylla.DataLayer.FilterValidator](AshScylla.DataLayer.FilterValidator.md): Validates that filter columns are queryable in ScyllaDB/Cassandra. - [AshScylla.DataLayer.MaterializedView](AshScylla.DataLayer.MaterializedView.md): Materialized view support for AshScylla. - [AshScylla.DataLayer.Pagination](AshScylla.DataLayer.Pagination.md): Token-based pagination support for AshScylla. - [AshScylla.DataLayer.QueryBuilder](AshScylla.DataLayer.QueryBuilder.md): Query building functions for AshScylla data layer. - [AshScylla.DataLayer.QueryOptimizer](AshScylla.DataLayer.QueryOptimizer.md): Query optimization hints for ScyllaDB. - [AshScylla.DataLayer.SchemaMigration](AshScylla.DataLayer.SchemaMigration.md): Automatic schema migration support for AshScylla. - [AshScylla.DataLayer.SecondaryIndex](AshScylla.DataLayer.SecondaryIndex.md): Struct representing a secondary index definition on a ScyllaDB table. - [AshScylla.DataLayer.Udt](AshScylla.DataLayer.Udt.md): User Defined Type (UDT) runtime support for ScyllaDB. - Repo Helpers - [AshScylla.Release](AshScylla.Release.md): Release task helpers for running AshScylla migrations in production without Mix installed. - [AshScylla.Repo](AshScylla.Repo.md): Configuration module for AshScylla using direct Xandra connections. - Performance - [AshScylla.PreparedStatementCache](AshScylla.PreparedStatementCache.md): ETS-based prepared statement cache for ScyllaDB/Cassandra queries. - Observability - [AshScylla.Telemetry](AshScylla.Telemetry.md): Telemetry integration for AshScylla. - Error Handling - [AshScylla.Error](AshScylla.Error.md): Common error types and utilities for AshScylla. - [AshScylla.Error.ScyllaError](AshScylla.Error.ScyllaError.md): Comprehensive error handling for ScyllaDB-specific errors. - Full-Text Search - [AshScylla.Search](AshScylla.Search.md): A scalable multi-word search engine built on ScyllaDB using an inverted index. - [AshScylla.Search.Analyzer](AshScylla.Search.Analyzer.md): Text analysis pipeline coordinator. - [AshScylla.Search.Analyzer.Normalizer](AshScylla.Search.Analyzer.Normalizer.md): Text normalization for the search pipeline. - [AshScylla.Search.Analyzer.Stemmer](AshScylla.Search.Analyzer.Stemmer.md): A simplified Porter stemming algorithm for English. - [AshScylla.Search.Analyzer.StopWords](AshScylla.Search.Analyzer.StopWords.md): Stop words filter for the search pipeline. - [AshScylla.Search.Analyzer.Tokenizer](AshScylla.Search.Analyzer.Tokenizer.md): Unicode-aware tokenizer for the search pipeline. - [AshScylla.Search.Indexer](AshScylla.Search.Indexer.md): Index management coordinator. - [AshScylla.Search.Indexer.Builder](AshScylla.Search.Indexer.Builder.md): Builds the inverted index for a document. - [AshScylla.Search.Indexer.Deleter](AshScylla.Search.Indexer.Deleter.md): Removes a document from the inverted index. - [AshScylla.Search.Indexer.Updater](AshScylla.Search.Indexer.Updater.md): Updates the inverted index when a document's text changes. - [AshScylla.Search.Query.BooleanEngine](AshScylla.Search.Query.BooleanEngine.md): Boolean operations on posting lists. - [AshScylla.Search.Query.Paginator](AshScylla.Search.Query.Paginator.md): Pagination helpers for search results. - [AshScylla.Search.Query.Parser](AshScylla.Search.Query.Parser.md): Parses user search queries. - [AshScylla.Search.Query.Planner](AshScylla.Search.Query.Planner.md): Query planner that executes search queries against the inverted index. - [AshScylla.Search.Query.Ranking](AshScylla.Search.Query.Ranking.md): Ranking and relevance scoring for search results. - [AshScylla.Search.Storage](AshScylla.Search.Storage.md): CQL schema definitions for the inverted index tables used by the search engine. ## Mix Tasks - [mix ash_scylla.gen.repo](Mix.Tasks.AshScylla.Gen.Repo.md): Generates an AshScylla Repo module for your application. - [mix ash_scylla.generate_migrations](Mix.Tasks.AshScylla.GenerateMigrations.md): Generates CQL migration files from Ash resource definitions, and stores snapshots. - [mix ash_scylla.migrate](Mix.Tasks.AshScylla.Migrate.md): Runs pending CQL migrations and applies resource schema changes. - [mix ash_scylla.new_template](Mix.Tasks.AshScylla.NewTemplate.md): Generates an Ash Resource template backed by AshScylla. - [mix ash_scylla.reset](Mix.Tasks.AshScylla.Reset.md): Drops the ScyllaDB keyspace (and all its data) and re-runs migrations. - [mix ash_scylla.setup](Mix.Tasks.AshScylla.Setup.md): Sets up the ScyllaDB keyspace for AshScylla.