This is the web UI for the DBSP project.
sudo apt-get update
sudo apt-get install git sudo curl
curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - &&\
sudo apt-get install -y nodejs
sudo npm install --global yarn
sudo npm install --global openapi-typescript-codegen
git clone https://github.com/feldera/dbsp.git
cd dbsp/web-uiIf you don't run ubuntu: other binary distributions for node.js
Install dependencies (needs to be done whenever package.json depencies change):
yarn installStart the development server:
yarn devBuild & export static website:
yarn build
yarn exportFormat the code & linting:
yarn format
yarn lintIf yarn audit fails for a transitive dependency you can try to update it:
yarn up --recursive loader-utilsFor direct dependencies, you can adjust the version in package.json
and run yarn install.
The bindings for OpenAPI (under src/types/manager) are generated using openapi typescript codegen.
If you change the API, execute the following steps to update the bindings:
yarn generate-openapiNote sometimes strange caching errors may warrant deleting node_modules after
regenerating the API bindings.
@core: Settings, style and overrides.analytics: Logic to handle projects (SQL editor, programs).components: contains reusable React components.configs: Theme configuration (see also Material UI themes).data: Logic for handling connectors (Add, Update, Delete).home: Home page.layouts: General layout components.navigation: Side-bar Menu.pages: accessible website pages (e.g.pages/index.tsxis the homepage)streaming: Logic for building, managing Pipelines.types: Types used throughout the app, OpenAPI generated types.utils: contains utility functions.