The design goal of SQL Frames is to provide enterprise grade data management capabilities yet with a user friendly low code API. Below are the key features of SQL Frames.
- Declarative logic - Compose complex DataFrames declaratively using familiar
- In-memory analytics engine The composed DataFrame logic is executed by the built-in in-memory analytics engine. The TypeScript based engine can execute directly within the browser (or Node).
- Auto SQL generation - The composed DataFrame logic can be transpiled to SQL which helps in scaling for big data backends. That is, the compuation logic can be moved to the backend databases rather than doing in-memory. SQL can be generated for various databases.
- Data Cube - Multi-dimensional data warehouse like capabilities all within the browser providing the ability to slice, dice, rollup, drill-up/down and pivot to understand your data with milliseconds latency.
- Lazy evaluation - Compose complex DataFrames which are only evaluated when needed (like displaying in the UI or explicitly calling API to compute).
- Integrated UI - Intuitive user interfaces for different types of DataFrames letting you focus on the data while the framework takes care of the UI.
- Extensible - With a plugin architecture, SQL Frames can be extended to support additional features.
SQL Frames Plugins
- Integrated Charts - Easily craft data stories with intuitive charts. A powerful charting layer built on top of Apache ECharts that makes use of all the power of SQL Frames.
- Integrated Formatting - DataFrame rendering can be customized with data driven stylers and flexible row/column renderers.
- Integrated Full Text Search - Full text search is supported with rest of the WHERE clause and also with JOINs allowing advanced search with SQL compatibility. Lunr is used to support text search.
- Integrated Statistical Analysis - Perform the most common statistical analysis of the data.
- Integrated AI (TODO) - Integration with Tensorflow JS for realtime model building and using in key business flows.
SQL Frames UI
The different types of DataFrames provided by SQL Frames come with corresponding UI. Following are the key features of the UI.
- Fast rendering - Preact library is used for the UI components. However, it can be integrated with React as evidenced by all the examples in this documentation which is based on Docusaurus, a React based static documentation framework.
- Infinite scrolling support using virtual table rendering. This also assists in fast rendering.
- Reactive - changes to the model are automatically reflected in the associated UI.
- Conditional styling - apply various CSS styles based on data.
- UI Templates - formatting of data using HTML templates for both rows and cells of the DataFrame UI tables.