API Reference starter v#0.3.1

Copy Markdown View Source

Modules

Composable project starters for Phoenix applications.

Conveniences for writing steps.

Expands and runs a starter's steps against an igniter.

Registry of Starter's built-in steps.

Fetches latest package versions from Hex, npm, GitHub, and the Oban Pro docs site so generated dependencies start current instead of pinned to whatever Starter shipped with.

Mix Tasks

Runs one or more :add steps by name.

Replaces the esbuild and tailwind asset pipeline with bun.

Adds credo as a dev/test dependency.

Adds dotenv_parser to load environment variables from a .env file.

Adds exsync to reload modules on file changes.

Adds libcluster for clustering Elixir nodes.

Adds mix_test_watch to automatically run tests on file changes.

Adds oban_pro for advanced background job processing features. Requires an Oban Pro license.

Adds pgvector support for vector similarity search in Postgres.

Adds quokka, a formatter plugin that rewrites code to match your Credo configuration.

Adds Remix Icons as a Tailwind plugin with remix-#{ICON} classes.

Adds uuidv7 for time-sortable UUID primary keys. Updates the app's Schema module when present.

Runs one or more :gen steps by name.

Generates a MyApp.Schema module with sensible primary key and timestamp defaults. Uses UUIDv7 for primary keys when the uuidv7 dependency is present, :binary_id otherwise.

Updates the ecto.drop alias in mix.exs to use --force-drop.

Defaults generators to binary_id primary keys and utc_datetime_usec timestamps, migrations included.

Generates Gigalixir deployment configuration: buildpacks, Procfile, release scripts, and production SSL/endpoint config.

Configures libcluster's Kubernetes strategy for clustering on Gigalixir.

Adds macOS system files to .gitignore, creating the file if needed.

Replaces the Layouts.app/1 component with a minimal header-and-main layout.

Replaces the phx.new marketing home page with a minimal starting point, and updates the generated page controller test to match.

Adds config :app, env: Mix.env() to config.exs so the environment is readable at runtime.

Generates a migration enabling common PostgreSQL extensions (citext, pg_trgm, unaccent, vector).

Sorts the dependencies in mix.exs alphabetically by name.

Generates a formatter that sorts Tailwind CSS classes in HEEx templates.

Generates lib/mix/tasks/<app>.starter.ex containing your project's starter.

Runs one or more :remove steps by name.

Removes the AGENTS.md file that phx.new generates.

Removes the :daisyui Mix dependency and the CSS plugin blocks that phx.new generates.

Removes the suffix=" · Phoenix Framework" attribute from <.live_title> in the root layout.

Removes the theme toggle that phx.new generates: the theme scripts in the root layout, and the theme_toggle component and its usage in Layouts.

Removes the topbar progress indicator that phx.new generates.

Finds the starter generated by mix starter.new and runs it, passing all flags through.