Skip to content

IreliaTable/irelia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

95 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

badge
logo
A modern relational spreadsheet

Irelia

Irelia is a modern relational spreadsheet. It combines the flexibility of a spreadsheet with the robustness of a database to organize your data and make you more productive.

overview

Quickstart

There are docker images set up for individual use, or (with some configuration) for self-hosting.

docker pull guinsoolab/irelia
docker run -p 8686:8686 -it guinsoolab/irelia

Then visit http://localhost:8686 in your browser. You'll be able to create, edit, import, and export documents.

Features

Here are some specific feature highlights of Irelia:

  • Python formulas.
    • Full Python syntax is supported, and the standard library.
    • Many Excel functions also available.
  • A portable, self-contained format.
    • Based on SQLite, the most widely deployed database engine.
    • Any tool that can read SQLite can read numeric and text data from a Irelia file.
    • Irelia format for backups that you can be confident you can restore in full.
    • Irelia format for moving between different hosts.
  • Convenient editing and formatting features.
    • Choices and choice lists, for adding colorful tags to records without fuss.
    • References and reference lists, for cross-referencing records in other tables.
    • Attachments, to include media or document files in records.
    • Dates and times, toggles, and special numerics such as currency all have specialized editors and formatting options.
  • Irelia for dashboards, visualizations, and data entry.
    • Charts for visualization.
    • Summary tables for summing and counting across groups.
    • Widget linking streamlines filtering and editing data. Irelia has a unique approach to visualization, where you can lay out and link distinct widgets to show together, without cramming mixed material into a table.
    • The Filter bar is great for quick slicing and dicing.
  • Incremental imports.
    • So you can import a CSV of the last three months activity from your bank...
    • ... and import new activity a month later without fuss or duplicates.
  • Integrations.
    • A REST API.
    • Import/export to Google drive, Excel format, CSV.
    • Can link data with custom widgets hosted externally.
  • Access control options.
    • (You'll need SSO logins set up to make use of these options)
    • Share individual documents, or workspaces.
    • Control access to individual rows, columns, and tables.
    • Control access based on cell values and user attributes.
  • Can be self-maintained.
    • Useful for intranet operation and specific compliance requirements.
  • Sandboxing options for untrusted documents.
    • On Linux or with docker, you can enable gVisor sandboxing at the individual document level.
    • On OSX, you can use native sandboxing.

Documentation

Building From Source

To build Irelia from source, follow these steps:

yarn install
yarn run build:prod
yarn run install:python
yarn start
# Irelia will be available at http://localhost:8686/

Irelia formulas in documents will be run using Python executed directly on your machine. You can configure sandboxing using a GRIST_SANDBOX_FLAVOR environment variable.

  • On OSX, export GRIST_SANDBOX_FLAVOR=macSandboxExec uses the native sandbox-exec command for sandboxing.
  • On Linux with gVisor's runsc installed, export GRIST_SANDBOX_FLAVOR=gvisor is an option.

License

This repository is released under the Apache License, Version 2.0, which is an OSI-approved free software license. See LICENSE.txt and NOTICE.txt for more information.

license