platanus / activeadmin_addons

Extends ActiveAdmin to enable a set of great optional UX improving add-ons
MIT License
763 stars 288 forks source link
activeadmin rails

ActiveAdmin Addons

Gem Version

ActiveAdmin Addons will extend your ActiveAdmin and enable a set of addons you can optionally use to improve the ActiveAdmin UI and make it awesome.

What you get:

Rows/Columns

Inputs

Filters

Themes

Installation

Add this line to your application's Gemfile:

gem 'activeadmin_addons'

And then execute:

$ bundle

After that, run the generator:

$ rails g activeadmin_addons:install

Check here to see more information about this generator.

Default changes to behaviour

Installing this gem will enable the following changes by default:

Addons

Rows/Columns

Images

Display images in the index and show views. This implementation supports Shrine.

Read more!

AASM Integration

You can show aasm values as active admin tags.

Read more!

Rails Enum Integration

You can show Rails' built in enums as active admin tags.

Read more!

Boolean Values

Modifies how boolean values are displayed.

Read more!

Toggleable Boolean Columns

Have switches to toggle values directly at the index

Read more!

Number Formatting

You can show numbers with format supported by Rails NumberHelper

Read more!

List

You can show Array or Hash values as html lists.

Read more!

Markdown

You can render text as markdown.

Read more!

Inputs

Slim Select Input

With Slim Select the select control looks nicer, it works great with large collections.

Read more!

Tag Input

Using tags input, you can add tags using slim select.

Read more!

Selected List Input

This form control allows you to handle your many to many associations.

Read more!

Search Select Input

Using search_select input, you can easily add ajax search to activeadmin.

Read more!

Nested Select Input

Using nested_select input, you can build related select inputs.

Read more!

Color Picker Input

You can pick colors using JQuery Palette Color Picker

f.input :color, as: :color_picker

Read more!

Date Time Picker Input

You can pick dates with time using the xdan's jQuery Plugin Date and Time Picker

f.input :updated_at, as: :date_time_picker

Read more!

Filters

Numeric Range Filter

To filter based on a range of values you can use numeric_range_filter like this:

filter :number, as: :numeric_range_filter

Date Time Picker Filter

To filter based on a range of datetimes you can use date_time_picker_filter like this:

filter :created_at, as: :date_time_picker_filter

Search Select Filter

You can use the ajax select input to filter values on index view like this:

filter :category, as: :search_select_filter

Read more!

Themes

NO Theme

Use default active_admin theme.

Publishing

On a new branch:

  1. Change VERSION in lib/activeadmin_addons/version.rb. Note that beta versions should have a .beta suffix (e.g. 1.0.0.beta.1).
  2. Change "version" in package.json to the same version. Note that beta versions should have a -beta suffix (e.g. 1.0.0-beta.1).
  3. Change Unreleased title to current version in CHANGELOG.md.
  4. Run bundle install.
  5. Open a new PR with those changes.
  6. Once the PR is merged, checkout to master and pull the changes.
  7. Create tag. For example: git tag v1.0.0.
  8. Push tag. For example: git push origin v1.0.0. This will trigger the CI to publish the new version to npm and rubygems.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

If you want to collaborate, please check the rules first.

Credits

Thank you contributors!

Platanus

activeadmin_addons is maintained by platanus.

License

ActiveAdminAddons is © 2021 Platanus, spa. It is free software and may be redistributed under the terms specified in the LICENSE file.