Jayvee is a DSL to model and execute automated data pipelines, e.g., for data engineering.
In case you would like to contribute to Jayvee, please have a look at our contribution guide.
- Run
npm ci
to install the dependencies. - Run
npm run generate
to generate TypeScript code from the Jayvee grammar definition and the standard library. - Run
npm run build
to compile all projects. - In Visual Studio Code, press
F5
to open a new window with the Jayvee extension loaded. - Create a new file with a
.jv
file name suffix or open an existing file in the directoryexample
. - Verify that syntax highlighting, validation, completion etc. are working as expected.
- Run
node dist/apps/interpreter/main.js
to see options for the CLI of the interpreter;node dist/apps/interpreter/main.js <file>
interprets a given.jv
file.
In case you run into problems, make sure to use the current LTS version of Node.js and npm.
Name | Description | NPM package |
---|---|---|
language-server |
Jayvee language definition and language server implementation | @jvalue/jayvee-language-server |
interpreter |
Command line tool for interpreting Jayvee files | @jvalue/jayvee-interpreter |
language-server-web-worker |
Ready-to-use Jayvee language server, bundled as a Web Worker | @jvalue/jayvee-language-server-web-worker |
vs-code-extension |
Visual Studio Code extension for editing Jayvee files | - |
docs |
Website for Jayvee user documentation | - |
monaco-editor |
React component for editing Jayvee files | @jvalue/jayvee-monaco |
execution |
Shared code for Jayvee extensions and the interpreter | - |
extensions/std |
Standard Jayvee extension consisting of the extensions below | - |
extensions/rdbms |
Jayvee extension for relational databases | - |
extensions/tabular |
Jayvee extension for tabular data | - |
npm run build
npm run lint
npm run format
npm run test
npm run generate
npm run example:cars
npm run example:gtfs
- Start the Postgres database locally
docker compose -f ./example/docker-compose.example.yml up
- Run the Jayvee model
npm run example:vehicles