7aca673b38
* add msw setup and initialisation tests * add changeset * add eventsource polyfill for node and browser envs * add changeset * add changeset * config tweak * types * update eventsource usage * add changeset * add walk_and_store_blobs improvements and add tests * add changeset * api_info tests * add direct space URL link tests * fix tests * add view_api tests * add post_message test * tweak * add spaces tests * jwt and protocol tests * add post_data tests * test tweaks * dynamically import eventsource * revet eventsource imports * add node test * lockfile * add client test in root pkg file * lcokfile * remove eventsource from js/app * add changeset * remove ts ignore * move eventsource polyfill to eventsource factory * add changeset * tweak --------- Co-authored-by: gradio-pr-bot <gradio-pr-bot@users.noreply.github.com> |
||
---|---|---|
.. | ||
_cdn-test | ||
_spaces-test | ||
_website | ||
accordion | ||
annotatedimage | ||
app | ||
atoms | ||
audio | ||
box | ||
button | ||
chatbot | ||
checkbox | ||
checkboxgroup | ||
code | ||
colorpicker | ||
column | ||
dataframe | ||
dataset | ||
downloadbutton | ||
dropdown | ||
fallback | ||
file | ||
fileexplorer | ||
form | ||
gallery | ||
group | ||
highlightedtext | ||
html | ||
icons | ||
image | ||
imageeditor | ||
json | ||
label | ||
lite | ||
markdown | ||
model3D | ||
multimodaltextbox | ||
number | ||
paramviewer | ||
plot | ||
preview | ||
radio | ||
row | ||
simpledropdown | ||
simpleimage | ||
simpletextbox | ||
slider | ||
state | ||
statustracker | ||
storybook | ||
tabitem | ||
tabs | ||
textbox | ||
theme | ||
tooltip | ||
tootils | ||
upload | ||
uploadbutton | ||
utils | ||
video | ||
wasm | ||
.npmrc | ||
jsx.d.ts | ||
README.md |
gradio-ui
This folder contains all of the Gradio UI and component source code.
setup
This folder is managed as 'monorepo' a multi-package repository which make dependency management very simple. In order to do this we use pnpm
as our package manager.
Make sure pnpm
is installed by following the installation instructions for your system.
You will also need node
which you probably already have
running the application
Install all dependencies:
pnpm i
This will install the dependencies for all packages and link any local packages
local development
To develop locally, open two terminal tabs from the root of the repository.
Run the python test server, from the root directory:
cd demo/kitchen_sink
python run.py
This will start a development server on port 7860
that the web app is expecting.
Run the web app:
pnpm dev
building for production
Run the build:
pnpm build
This will create the necessary files in js/app/public
and also in gradio/templates/frontend
.
quality checks
The repos currently has two quality checks that can be run locally and are run in CI.
formatting
Formatting is handled by prettier
to ensure consistent formatting and prevent style-focused conversations. Formatting failures will fails CI and should be reoslve before merging.
To check formatting:
pnpm format:check
If you have formatting failures then you can run the following command to fix them:
pnpm format:write
type checking
We use TypeScript to provide static types to javascript code. These checks are also run in CI.
to typecheck the code:
pnpm ts:check
ci checks
Currently the following checks are run in CI:
static checks
- Format check (
pnpm format:check
) - Build css (
pnpm css
) - Build client (
pnpm build
) - Type check (
pnpm ts:check
) - Unit tests (
pnpm test:run
)
functional test
pip install -r demo/outbreak_forecast/requirements.txt
pnpm exec playwright install chromium
pnpm exec playwright install-deps chromium
pnpm test:browser:full