Skip to content

a prototype re-implementation of KDB Studio using JavaScript and Electron

License

Notifications You must be signed in to change notification settings

ScottLogic/kdb-boothroyd

Repository files navigation

Boothroyd.

Now pay attention...

Boothroyd is a GUI for KDB+/q database built with React on Electron. The name, if you are wondering, is taken from the James Bond character Q.

Getting Started

To run this project.

  • Install the dependencies
  npm install
  • To set up the precommit hooks run:
  npm run prepare
  • Now run these two commands in separate consoles.
  npm run dev:react
  npm run dev:electron

Testing

To test the project you'll need a q server running on port 5001. Then run:

  npm run build:test
  npm test

What We've Used

  • React: The main app structure is built using React Functional Components
  • Electron: We're using electron to wrap everything as a desktop app
  • Typescript: Everything is written in Typescript for extra safety
  • FluentUI: We're using FluentUI and it's built React components for layout and trying to follow their design language where possible.
  • Playwright: We're using Playwright to run our automated integration tests.

What's KDB+ and q?

KDB is a database and q is the programming language used to interact with it. To learn more go here

What needs doing?

Check out our Issues list for what's still outstanding. You can also make suggestions for new features/improvements here which will then be approved by one of the core team. Once something is approved feel free to pick it up and implement it. Be sure to work on a feature branch and submit a pull request when ready.