简体中文 | English
README VERSION 0.9.4
A Material 3 component library for Qt Widget.
Explore the docs »
Table of Contents
Welcome to Material3-QWidget, this is my side project attempting to make a UI component library for QWidget that mimics Google's Material Design 3 Style.
Here are the feature of this library:
- Custom palette
- Auto dark/light mode switching
You may either complie or install this library or include this project as a sub project of your CMake project as the license is compactiable.
- If you are only introducing the
.so/.a/.dll, etc file: Then you may want to check out theincludesdirectory as all the headers are there. - If you are introducing the project as a sub project of your CMake project: Please first make sure the license is compactiable, and you may refer the code in the
examplesfolder for examples of introducing this library.
To use this library, you will need these avaliable in your system:
-
Qt: Minimum version of 6 as we depends on
QGuiApplication::styleHints(). -
CMake: Minimum version of 3.16.
The complier may run slow as we integrated the material symbols into the resource.qrc file.
(Documentation working in progress)
You could integrate the library using the way showed in the examples folder.
In the future, there will be a documentation site set up in the docs folder.
The docs site is not up yet...
To read those docs, you will need to have Node.JS environment and pnpm ready in the system.
Then, at the root directory of the project, run the following command:
cd docs
pnpm i
pnpm approve-builds
pnpm devThis will pull a local server up. The default address should be at http://localhost:5173.
The port could change if there is another program occupying the port, the way to get the port number is to check your terminal output:
➜ docs git:(main) ✗ pnpm dev
> m3qw.docs@ dev /home/marcus/Desktop/Repositories/Public/material3-qwidget/docs
> react-router dev
➜ Local: http://localhost:5173/
➜ Network: use --host to expose
➜ press h + enter to show helpHence, in the example above, the port is 5173.
- Infras
- Theme loader
- Font loader
- Icon loader
- Default palette (will be updated while introducing new components...)
- Components
- App bar
- App bar Icon buttons
- Navigation drawer (Work in progress)
- Icon buttons (Sorry, it's delayed)
- ...
- Docs
- README
- Document site (Planned)
- Example program (Work in progress)
- I18N
- EN-US
- ZH-CN
- This project is licensed under
GNU GENERAL PUBLIC LICENSE Version 3, for the license content, please see COPYING for details. - We also vendored the material symbols font, they are licensed under
Apache License Version 2.0, see res/fonts/material-symbols/COPYING for details.
Please fire up an issue if you need to find me.
Thanks othneildrew/Best-README-Template for the README template!!
