gradio/js
Aarni Koskela 0a6a80ce02
Remove a bunch of unused frontend code (#4275)
Co-authored-by: pngwn <hello@pngwn.io>
2023-05-30 12:02:04 +09:00
..
_cdn-test Ensure error modal display as expected when using the queue (#4273) 2023-05-20 00:32:12 +01:00
_spaces-test chore: update versions (#4283) 2023-05-29 16:30:54 -07:00
accordion Keep hidden Accordion content in DOM (#4073) 2023-05-06 08:00:05 -05:00
app Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
atoms UI fixes for themes (#3590) 2023-04-28 14:31:41 -04:00
audio Upload audio ios (#4071) 2023-05-08 20:35:52 -05:00
button
chart
chatbot Katex support in chatbot (#4285) 2023-05-21 15:41:09 +09:00
code Input listener (#4157) 2023-05-15 21:36:57 -04:00
file
form Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
gallery Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
highlighted-text Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
html
icons Add Clear Mask button to sketch mode (#3615) 2023-04-28 14:16:14 -04:00
image Add Clear Mask button to sketch mode (#3615) 2023-04-28 14:16:14 -04:00
json
label node support for js client (#3692) 2023-04-03 14:33:01 +01:00
markdown
model3D Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
plot Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
table Input listener (#4157) 2023-05-15 21:36:57 -04:00
tabs
theme 3712 js client (#3899) 2023-05-12 16:22:25 +01:00
tooltip
tootils
upload Adding subtitles to gr.Video (#3673) 2023-04-11 16:06:48 -07:00
upload-button
utils Remove a bunch of unused frontend code (#4275) 2023-05-30 12:02:04 +09:00
video Fix duplicate play commands in full-screen mode of Vidieo (#3968) 2023-04-26 14:33:53 -04:00
workbench make workbench private (#4247) 2023-05-17 11:10:54 +01:00
.npmrc
jsx.d.ts
README.md Fix dev docs (#4132) 2023-05-09 16:38:38 -05:00

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:

  • Format check (pnpm format:check)
  • Type check (pnpm ts:check)
  • Build as a smoke test (pnpm build)