API Reference svelixir v#0.11.0

Copy Markdown

Modules

SimpleEnum is a simple library that implements Enumerations in Elixir.

Provenance and drift checking for the checked-in generator baselines.

The whole scaffolder config for one project, as a struct — one child struct per section of the templates in priv/templates.

Which asset surfaces are generated — the assets: section.

API surface detail — the assets.api: block.

UI surface detail — the assets.ui: block.

Authentication surfaces — the auth: section.

Caching backend and client mode — the cache: section.

Container tooling — the container: section. Type-independent: podman and docker are valid for :otp and :web alike.

Sidecar containers to generate — the container.sidecars: block.

The closed domains the config sections draw their atom values from.

Optional capability toggles — the features: section.

Raised when a config section is given a key it does not declare, a value outside that key's domain, or a combination the canonical rules forbid.

The :otp project preset — priv/templates/base_otp_app.exs as code.

Identity of the project being scaffolded — the project: section.

Shared behaviour for the sections of Svelixir.Config.Otp.

Encryption and secret sourcing — the security: section. Type-independent: it applies to :otp and :web alike.

Supervision tree and repo ownership — the otp: section.

The :web project preset — priv/templates/base_web_app.exs as code.

Codec for the plain-data .exs files Svelixir owns — svelixir.exs and fireside.exs.

Raised when an .exs file is not the plain data Svelixir expects.

Raised when a term cannot be written as re-readable .exs source.

Content hashing for manifest file entries.

Reads and writes fireside.exs — the generated lock file (SDD 8.2).

One component's entry in fireside.exs (SDD 8.2): what it is, which version of it was applied, where that version came from, when it was applied, and every file it owns or contributes to.

One file a component owns or contributes to (SDD 7.3).

Raised when fireside.exs is plain data of the wrong shape — a missing or unknown key, an unsupported schema_version, or a field whose value is outside its domain.

A validated, absolute path to the project Svelixir is acting on.

Raised when a project-relative path would escape the target root.

Raised when a path is not a usable project root.

TypedStruct is a library for defining structs with a type without writing boilerplate code.

This module defines the plugin interface for TypedStruct.

Vex

Data Validation for Elixir.

Implementation of this behaviour should be set in validator options as :error_renderer or in :vex application config with same key.

Common validator behavior.

Ensure a value is absent.

Ensure an attribute is set to a positive (or custom) value.

Ensure a value meets a custom criteria.

Ensure a value, if provided, is equivalent to a second value.

Ensure a value is not a member of a list of values.

Ensure a value matches a regular expression.

Ensure a value is a member of a list of values.

Ensure a value's length meets a constraint.

Ensure a value is a number.

Ensure a value is present.

Ensure a value is a valid UUID string.