This sample code demonstrates using Metabase static embedding in Node.js using Express.
- Have a running instance of Metabase. If you don't have one
- A dashboard to embed. If you don't have one, use X-Rays to let Metabase create one for you. Note down the dashboard id.
- Sign in to your Metabase instance as an admin.
- Go to admin settings and enabling embedding.
- Under admin settings/embedding, click on static embedding and copy the embedding secret key.
- Paste the secret key into an env var:
$ export METABASE_EMBEDDING_SECRET="PASTE_SECRET_HERE"
- Create an env var pointing to your Metabase site URL, if it's not on http://localhost:3000
$ export METABASE_SITE_URL="http://localhost:4000"
- Create an env var with the ID of the dashboard to embed:
$ export METABASE_EMBED_DASHBOARD_ID="8"
- Install dependencies:
$ bundle install
- Go to your dashboard, click on the share/embed button at the top
- Click on the "Publish" button
- Install the dependencies:
$ npm install
- Start the server:
$ node index.js
- Open the app in your browser at http://localhost:8080
Please report bugs or feature requests as issues in this repository. Please do not report security vulnerabilities on the public GitHub issue tracker. Our Security Policy describes the procedure for disclosing security issues.
This project is licensed under the MIT license. See the LICENSE file for more info.