.. | ||
demos | ||
homepage | ||
.gitignore | ||
docker-compose.yml | ||
gradio.nginx.conf | ||
package-lock.json | ||
README.md | ||
reload_website.sh | ||
reload_with_notification.sh |
The Gradio Website
The Gradio website (https://gradio.app) is built from the contents of this folder. The website is tightly coupled with the rest of the repository through several ways:
- The gradio library used to run the demos throughout the website is built from the library in the gradio folder of this repository
- The demos are loaded from the
gradio/demo
folder - The guide pages are loaded from the
gradio/guides
folder - The documentation is loaded from the docstrings in the library itself.
The website is launched through the docker-compose.yml
file in this directory.
You can run the entire website by:
- Installing nginx
- Copying gradio.nginx.conf from this folder to /etc/nginx/conf.d/gradio.nginx.conf
- Running
docker-compose build && docker-compose up
- (Re)starting nginx
This will serve the website on port 80 (you can change the port from the gradio.nginx.conf file)
Alternatively, for development, read the homepage
section below:
The homepage
docker
The homepage folder builds the static content of the website into standalone files, served by nginx in docker. For development purposes, instead of running docker to test changes, follow these steps in the gradio/website/homepage
folder.
npm install
npm run build
(ornpm run build-mac
on Mac OSX)
The website will be built in the gradio/website/homepage/build
directory. You can run a development server from this directory to launch the homepage, e.g. python -m http.server
. See gradio/website/homepage/package.json
for build steps.
The demos
docker
The demos folder launches all the demos embedded inside the website. The demos are loaded from the gradio/demo
folder.
Auto-Reloading
The website is built from the main branch and automatically reloads on commits to main.