The packages that make up the Queryverse
Queryverse.jl is the meta-package for the Queryverse. It installs and makes usable most of the other packages that are described below. The main purpose of this package is to make it easier to install all of the Queryverse in one go.
Query.jl provides commands to query and manipulate any data source. It provides tools to filter, sort, group, join and do many other operations on datasets. It works equally well with tabular and non-tabular data sources.
QuerySQLite.jl provides a SQLite backend for Query.jl. One can write normal Query.jl queries against a SQLite database. These queries are automatically translated into SQL, so that all processing of such a query occurs in the database.
DataTables.jl provides a minimalistic, lightweight and read-only tabular data structure.
ElectronDisplay.jl is an Electron based figure and table display for Julia. When the package is loaded, figures from various plotting packages open up in a custom Electron window. The package natively supports interactive figures from VegaLite.jl and PlotlyJS.jl. It also provides a grid view for tabular data.
FeatherFiles.jl can read and write Feather files.
ExcelFiles.jl can read and write Excel Files.
StatFiles.jl can read SPSS, STATA and SAS files.
ParquetFiles.jl can read Parquet files.
Low level infrastructure
TableTraits.jl contains the core table interface that powers all of Queryverse and enables seemless interopability between lots of different packages that work with tabular data.
DataValues.jl contains the core types that the Queryverse uses to handle missing (also known as NA or NULL) data.
IteratorInterfaceExtensions.jl has a few extensions to the standard Julia iterator interface that are used throughout the Queryverse.
TableShowUtils.jl provides various functions that are used throughout the Queryverse to show tabular data in the REPL and in some other MIME formats.
IterableTables.jl contains implementations of the TableTraits.jl interface for packages that don't support this interface natively. As more packages support TableTraits.jl out of the box, the role of this package becomes less and less important.
QueryOperators.jl contains the low level query operator function definitions and the default implementation of the query operators for iterable sources. The Query.jl package provides a user friendly API for this functionality.