Skip to content

malloydata/publisher

Repository files navigation

Malloy Publisher

The Malloy Publisher is a basic semantic model server and application. The aim of the project are:

  1. Create a local development environment for Malloy data app development.
  2. Develop & standardize Malloy's package format and serving APIs.
  3. Activate the Malloy open source community!

The diagram below illustrates the Publisher's basic components: Publisher Web App, Publisher SDK, and Publisher Server.

The Publisher app allows you to browse packages, their contents, and generate code snippets that can be embedded in an application. See the screenshots below.

The Publisher is a data app composed of a set React components. The React components form an SDK that can be embedded in other data applications. The SDK's React components call the Publisher server's APIs to fetch package metadata and query results.

The Publisher server is a simple semantic layer. While its primary purpose is to facilitate local data app development, it can easily be bundled with a set of Malloy packages in docker image in order to serve Malloy models and packages (coming soon).

As mentioned above, one goal of the Publisher project is to develop and standardize a Malloy package format. Currently, a Malloy package consists of a set of files in a directory with a publisher.json file. The publisher.json only supports two fields at the moment (name & description). We intend to add more fields as we build out Publisher functionality.

Screenshots

Browse loaded packages


Explore a package's contents


Explore Malloy models and notebooks

Build and Run Instructions

To build and run the package server, first load the malloy-samples.

git submodule init
git submodule update

Then build and run the package server:

npm run build
npm run start

NOTE: Note that the Publisher repository currently points to a fork of the malloy-samples repo. The fork contains minor changes to turn each Malloy sample directory into a package. Once the package format solidifies, we intend to merge the changes into the main malloy-samples repo.

Coming Soon

  • Developer mode that automatically recompiles models and refreshes the publisher app as you make changes.
  • Scheduled transform pipelines
  • Scheduled report generation
  • Dockerfile

Join the Malloy Community

  • Join our Malloy Slack Community! Use this community to ask questions, meet other Malloy users, and share ideas with one another.
  • Use GitHub issues in this Repo to provide feedback, suggest improvements, report bugs, and start new discussions.

Resources

Documentation:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages