Project

hotsheet

0.03
There's a lot of open issues
A long-lived project that still receives updates
Manage your Rails database through a spreadsheet-like interface.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

>= 6.1.0
 Project Readme

Hotsheet

Manage your Rails database through a spreadsheet-like interface.

  • Look at and modify your DB within the app itself (no rails console required!).
  • Give controlled DB access to your admin users without having to create CRUD views for each table.
  • Lightweight and fast. We keep usage simple and configuration to the minimum.
demo

Installation

  1. Add gem "hotsheet" to your Gemfile.
  2. Run bundle.
  3. Run bin/rails g hotsheet:install.

Usage

After the installation, you can start the Rails server and visit /hotsheet to view the spreadsheet.

Configuration

You can configure which models ('sheets') this gem should manage, and specify which database columns should be editable or viewable in the spreadsheet. This can be done by editing the config/initializers/hotsheet.rb file created by the install command:

Hotsheet.configure do
  # Configure the visible and editable columns for each model.
  # The ID is included as the first column by default.
  # The number of rows displayed can be configured using the `per` option,
  # which defaults to 100.

  sheet :User, per: 10 do
    column :name
    column :email, editable: false
    column :birthdate, editable: -> { rand > 0.5 }
  end

  # Leave the block out to include all database columns.
  sheet :Post
end

Basic Authentication

If you don't want everyone to have access to Hotsheet, you can set a basic auth environment variable:

HOTSHEET_BASIC_AUTH="admin:password"

Internationalization

You can create custom translations by overwriting the default locales defined in config/locales/en.yml.

Contributing

See Contributing Guide and please follow the Code of Conduct.

Roadmap

This is a newly created gem, and we will firstly focus on:

  1. Single-user experience (styles and usability)
  2. Configuration and access permissions
  3. Concurrent users (broadcasting, conflict resolution)

Feel free to look at our planned enhancements or add your own.

License

Hotsheet is available as open source under the terms of the MIT License.
Copyright © 2024-present Renuo AG.