A powerful, intelligent data collection component for Ash Framework resources in Phoenix LiveView
See the codeA powerful, intelligent data collection component for Ash Framework resources in Phoenix LiveView.
Cinder transforms complex data table requirements into simple, declarative markup. With automatic type inference and intelligent defaults, you can build feature-rich tables, lists, and grids with minimal configuration.
<Cinder.collection resource={MyApp.User} actor={@current_user}>
<:col :let={user} field="name" filter sort>{user.name}</:col>
<:col :let={user} field="email" filter>{user.email}</:col>
<:col :let={user} field="department.name" filter sort>{user.department.name}</:col>
<:col :let={user} field="settings__country" filter>{user.settings.country}</:col>
</Cinder.collection>
Cinder automatically provides:
user.department.name)profile__country) with automatic enum detectionmix igniter.install cinder
Add to mix.exs:
def deps do
[{:cinder, "~> 0.17"}]
end
Then run:
mix deps.get
mix cinder.install # Configure Tailwind CSS
<Cinder.collection resource={MyApp.User} actor={@current_user}>
<:col :let={user} field="name" filter sort>{user.name}</:col>
<:col :let={user} field="email" filter>{user.email}</:col>
<:col :let={user} field="role" filter>{user.role}</:col>
</Cinder.collection>
For list or grid layouts:
<Cinder.collection resource={MyApp.Product} actor={@current_user} layout={:grid} grid_columns={3}>
<:col field="name" filter sort />
<:item :let={product}>
<div class="p-4 border rounded">{product.name}</div>
</:item>
</Cinder.collection>
MIT License - see LICENSE file for details.
Elixir
99.9%
A powerful, intelligent data collection component for Ash Framework resources in Phoenix LiveView
See the codeA powerful, intelligent data collection component for Ash Framework resources in Phoenix LiveView.
Cinder transforms complex data table requirements into simple, declarative markup. With automatic type inference and intelligent defaults, you can build feature-rich tables, lists, and grids with minimal configuration.
<Cinder.collection resource={MyApp.User} actor={@current_user}>
<:col :let={user} field="name" filter sort>{user.name}</:col>
<:col :let={user} field="email" filter>{user.email}</:col>
<:col :let={user} field="department.name" filter sort>{user.department.name}</:col>
<:col :let={user} field="settings__country" filter>{user.settings.country}</:col>
</Cinder.collection>
Cinder automatically provides:
user.department.name)profile__country) with automatic enum detectionmix igniter.install cinder
Add to mix.exs:
def deps do
[{:cinder, "~> 0.17"}]
end
Then run:
mix deps.get
mix cinder.install # Configure Tailwind CSS
<Cinder.collection resource={MyApp.User} actor={@current_user}>
<:col :let={user} field="name" filter sort>{user.name}</:col>
<:col :let={user} field="email" filter>{user.email}</:col>
<:col :let={user} field="role" filter>{user.role}</:col>
</Cinder.collection>
For list or grid layouts:
<Cinder.collection resource={MyApp.Product} actor={@current_user} layout={:grid} grid_columns={3}>
<:col field="name" filter sort />
<:item :let={product}>
<div class="p-4 border rounded">{product.name}</div>
</:item>
</Cinder.collection>
MIT License - see LICENSE file for details.
Elixir
99.9%