Provides the PageTemplate page base class and pageconf.yaml configuration for a consistent page structure
nicegui_dashboard — Vue Admin dashboard Template
By s71m
A NiceGUI-based dashboard example template that provides foundational structure such as page templates, route management, and module hot reload, for developers to reference when building their own data dashboards.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
web/components includes page management, page information, and module reload components
Example pages cover a basic page, a card grid, and a card page using Polars
The utility page shows currently running modules and can trigger a reload
Static assets include a drawer width script, header styles, and global styles
The README explains that adding a page only requires creating a new directory and page file, then clicking Reload
Template Details
This repository is an example template for building a dashboard with NiceGUI. The author chose NiceGUI after trying Streamlit, Dash, and Panel, and offers it as a starting reference for developers. The project is primarily Python; the repository tags include Vue, and the static assets directory contains JavaScript for adjusting the left drawer width along with header and global stylesheets.
Structurally, web/app.py is the application entry point, header.py defines the header layout, pagetemplate.py provides a common page template, and pageconf.yaml stores page configuration. web/components contains module reload, page configuration reading, page metadata, and page route management; web/pages provides an example page, a card grid page, a card page using Polars, and a utility page that visualizes currently running modules and supports reloading.
To add a page: refer to example_page.py, create a new directory under web/pages/ and add a .py file with a page class; after clicking Reload, the page will automatically appear in the application. The README also includes a link to a VueFlow-related demo video. The repository does not describe deployment, authentication, data source integration, or production use, so users must assess and supplement these themselves.
Is it right for your project?
Use Cases
- As a starting point when you need to quickly prototype a Python data dashboard
- When you want to understand how page templates, routing, and configuration are organized in NiceGUI
- When you need to reload modules during development without restarting the service
- When you need a dashboard page that displays data in a card grid
- When you want to see how Polars is used in a NiceGUI page
Suitable For
- Developers using Python and NiceGUI
- Individuals or small teams needing a dashboard starter template
- Projects looking to reference page modularization and hot reload practices
- Developers interested in combining VueFlow with NiceGUI
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Install dependencies: pip install -r requirements.txt
- 2
After entering the nicegui_dashboard directory, run python -m web.app
- 3
Open http://localhost:8080 in a browser
- 4
When adding a page, refer to web/pages/examples/example_page.py and create a new directory and page file under web/pages/
- 5
The code is under the MIT license; retain the copyright and license notice when distributing. Demo assets and external services require separate verification of licensing and fees.
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the MIT license in a public repository; the free scope is the code of this version and does not imply that external services or third-party assets are free.
Must comply with when using
- The code of this version may be used, modified, used commercially, and distributed free of charge.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis
https://github.com/s71m/nicegui_dashboard/blob/master/LICENSEhttps://github.com/s71m/nicegui_dashboard/blob/master/README.mdPermission is hereby granted, free of charge
Original License Text
Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 81 / 100
- Technologies
- Vue
- Website type
- Admin dashboard
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2025-06-15
- Screenshot last checked
- 2026-10-02
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Vue as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: a44d30c6bcb6217cba7e6aff4d5af2805430a8a934c4f7f5a2ed68b8aa2dd2d1
2026-10-02T23:32:49.082Z
Source file / repository
This repository demonstrates how quickly and elegantly you can create dashboards with **NiceGUI**. After trying Streamlit, Dash, Panel, and now NiceGUI, I've found that [NiceGUI](https://nicegui.io/) is fast, intuitive, and supports many plugins.
The purpose of this repository is to provide a friendly starting point for developers who want to work with NiceGUI.
----------
## Add new page
- Explore [example_page.py](web%2Fpages%2Fexamples%2Fexample_page.py) to see how a page is built.
- Create a new folder under `web/pages/` (e.g., `new_folder`).
- Add a `new_page.py` file with a `NewPage` class.
- Click the "Reload" button and watch it appear automatically in the application!.
----------
### **How to Start**
1. Install the required dependencies using:
```bash
pip install -r requirements.txt
```
2. Launch the application:
```bash
cd nicegui_dashboard
python -m web.app
```
3. Open your browser and navigate to:
`http://localhost:8080`
### Explanation of project structure: `nicegui_dashboard`
#### **web/**
- **`app.py`**: Main entry point for the application.
- **`header.py`**: Defines the UI layout and functionality for the application's header.
- **`pageconf.yaml`**: YAML configuration file for page settings.
- **`pagetemplate.py`**: Base template for creating pages with a common structure.
----------
#### **web/components/**
- **`modulereloader.py`**: Handles reloading of modules for dynamic updates during development without restarting the server.
- **`pageconf.py`**: Manages page configurations stored in the YAML file.
- **`pageinfo.py`**: Provides metadata about each page (e.g., route, name).
- **`pagemanager.py`**: Creates the page structure (`{folder}/{module}`) and handles page routing.
----------
#### **web/pages/**
- **`examples/example_page.py`**: Demonstrates how to create a new page using `PageTemplate`.
- **`cards/cards_page.py`**: Implements a page displaying grid of cards.
- **`cards/cards_polars_page.py`**: Similar to `cards_page.py` but with using Polars.
- **`tools/project_modules_page.py`**: Visualizes currently running project modules, allowing for reloading.
----------
#### **web/static/**
- Static files for styling and interactivity.
- **`drawer.js`**: JavaScript for dynamically changing the width of `ui.left_drawer` (sidebar).
- **`header.css`**: CSS for styling the application's header.
- **`styles.css`**: Global styles for the dashboard.
https://github.com/user-attachments/assets/cadec471-1204-446f-bb4e-2ad72adeebfd
## VueFlow for NiceGUI
https://github.com/user-attachments/assets/11dba36d-17fe-47e8-82b2-8f94fa83de84
Explore similar templates
Compare previews and descriptions within the same stack and category.

vuestic-admin
Vuestic Admin is an open-source Vue 3 admin template maintained by Epicmax, built on Vuestic UI with Vite, Pinia, and Tailwind CSS. It provides a ready-to-run dashboard with a dark theme, global configuration, i18n internationalization, and responsive layout.
Vue · Admin dashboard

v3-admin-vite
v3-admin-vite is an AI-friendly Vue3 admin template built on Vue3, Vite, TypeScript, and Element Plus. It keeps a lean structure with detailed comments, supports backend-controlled dynamic route permissions, page-level and button-level permissions, multiple themes and layouts, and mobile compatibility.
Vue · Admin dashboard

vue-typescript-admin-template
A Vue 2.6 + TypeScript + Element UI admin template ported from vue-element-admin, offering type safety and enterprise features like permission authentication, internationalization, dynamic themes, editors, charts, Excel/PDF handling, and PWA support.
Vue · Admin dashboard

vue-antd-admin
Vue Antd Admin is the Vue implementation of Ant Design Pro, providing an out-of-the-box front-end and design solution for admin dashboards.
Vue · Admin dashboard

coreui-free-vue-admin-template
CoreUI's official free Vue admin template, MIT licensed, built on Vue 3 and the CoreUI component library with Vue Router, Pinia, and Vite.
Vue · Admin dashboard

nova-admin
Nova Admin is an admin template built on Vue3, Vite, TypeScript, and Naive UI, with Unocss for styling.
Vue · Admin dashboard
