Jayvee is a domain-specific language (DSL) for automated processing of data pipelines. The Jayvee interpreter allows executing such data pipelines on local machines. Data engineers can use Jayvee and its interpreter to clean and preprocess data for later activities like data science or machine learning.
Explore a glimpse of our upcoming features in the following list. This overview is broad and subject to evolution. We're excited to share our vision of the exciting journey ahead, and we invite you to accompany us on this adventure!
Anything missing, or you have ideas how some of the items on the list could be approached? Feel free to create and issue and share your thoughts with us!
You like the project and our vision? Then we'd appreciate your star! ⭐
In case you would like to contribute to Jayvee, please have a look at our contribution guide.
npm ci
to install the dependencies.npm run generate
to generate TypeScript code from the Jayvee grammar definition and the standard library.npm run build
to compile all projects.F5
to open a new window with the Jayvee extension loaded..jv
file name suffix or open an existing file in the directory example
.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
docker compose -f ./example/docker-compose.example.yml up
npm run example:vehicles