Toolkit for building apps that interact with Vega
Go to file
Matthew Russell 6ad2a7676e
Feat/84 Order list (#89)
* scaffold dealticket package, remove trading views from react-helpers

* add deal ticket component, add intent utils, expand dialog and form group styles

* add splash component, show market not found message if market doesnt exist

* tidy up error handling

* add handleError method for vega tx hook

* add better testname for provider test, flesh out tests a bit more for deal ticket

* Add unit tests for useVegaTransaction and useOrderSubmit hooks

* add wrapper component for order dialog styles

* add vega styled loader to ui toolkit and use in order dialog

* add title prop to order dialog

* add button radio component

* revert dialog styles

* move splash component to ui-toolkit, add story

* convert intent to enum

* add date-fns, add datetime to helpers

* add order types to wallet package, make price undefined if order type is market

* tidy up order state by moving submit and transaction hooks out of deal ticket

* add types package, delete old generated types from trading project

* rename types package to graphql

* add order list container and order list component

* add test setup for useOrders

* add test for use-orders hook

* tidy unnecessary diff

* regen types and use them in order-list, also change to use applytransaction hook for orderlist grid

* make order table columns resizable

* make market table not have highlightable cells, use splash for orders errors and loading states, unit test for orderlist container

* add tests for order list table

* show rejection reason and expires at depending on status and tif

* add decimal places to query

* only update row if data has changed, add test coverage

* add setup tests file to avoid importing jest-dom for every test, add async-renderer component to handle fetch ui logic

* install all of lodash but import individually to get tree shaking

* add setup tests file for orderlist package

* add missing fields to use orders spec mock order

* fix act warnings in index page test

* fix casing of app import

* remove react-singleton-hook, simplify side formatting

* fix linting errors
2022-03-23 12:08:10 -07:00
.github/workflows add workflow for lint, build and format (#111) 2022-03-22 13:11:01 +00:00
.husky rrun nx commands through yarn 2022-03-02 12:21:58 +00:00
.storybook Add storybook/addon-a11y 2022-03-07 13:57:06 -08:00
.vscode Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
apps Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00
libs Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00
tools Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
.editorconfig Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
.eslintrc.json restrict lodash import (#121) 2022-03-23 15:01:50 +00:00
.gitignore #29 Add market-list-table 2022-03-18 13:13:14 +01:00
.nvmrc Add .nvmrc and engine, set node version to 16.14.0 2022-02-17 13:43:41 +01:00
.prettierignore #29 Add market-list-table 2022-03-18 13:13:14 +01:00
.prettierrc Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
babel.config.json Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
CODEOWNERS add code owners 2022-02-23 08:53:57 +00:00
ignore-netlify-build.js Ignore not affected netlify projecs (#80) 2022-03-14 16:52:02 +01:00
jest.config.js Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
jest.preset.js Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
LICENSE Create a Mono-repo for DeFiUI + ui toolkit using nx 2022-02-11 15:02:11 +01:00
netlify.toml Ignore not affected netlify projecs (#80) 2022-03-14 16:52:02 +01:00
nx.json migrate stuff into new NX 2022-02-23 08:53:57 +00:00
package.json Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00
README.md Task/73 Update readme 2022-03-14 08:21:26 -07:00
tsconfig.base.json Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00
workspace.json Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00
yarn.lock Feat/84 Order list (#89) 2022-03-23 12:08:10 -07:00

Vega front-end monorepo

The front-end monorepo provides a toolkit for building apps that interact with Vega, as well as the apps themselves.

This repository is managed using Nx.

🔎 Applications in this repo

Block explorer

The Vega block explorer provides an interface that allows users to search for and see transactions, blocks, parties, assets, markets and more on the Vega chain.

Trading UI

The trading interface built based on a component toolkit. It will provide a way for participants to interact with markets and provide resources for others to build additional open-source user interfaces.

🧱 Libraries in this repo

UI toolkit

The UI toolkit contains a set of components used to build interfaces that can interact with the Vega protocol, and follow the design style of the project.

Tailwind CSS config

The Tailwind CSS config contains theme that align default config with Vega design system.

💻 Develop

Build

Run nx build my-app to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Run nx serve my-app for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Running tests

Run nx test my-app to execute the unit tests with Jest, or nx affected:test to execute just unit tests affected by a change.

Similarly nx e2e my-app will execute the end-to-end tests with Cypress., and nx affected:e2e will execute just the end-to-end tests affected by a change.

Further help with Nx

Visit the Nx Documentation to learn more.

📑 License

MIT