This directory contains technical documentation for the HiFiBerryOS WebUI project.
This project is built on VueJS. VueJS provides a way to seperate different components, thus creating separation of concerns. Using this framework also improves the reusability of code.
The project also uses the pinia store for local storage synchronization.
.vscode: Recommended VSCode extensionsdebian: Debian packaging filesdebug: Scripts to help debugging the projectdocs: Project documentationpublic: Assets, such as fonts, images or the faviconsrc: Code of the projectsrc/api: API abstraction layerssrc/assets: SCSS stuffsrc/components: Components that are used throughout the websitesrc/composables: Reuse logic using vue's Composition APIsrc/helpers: Useful helpers functionssrc/layouts: Available layouts for vuejssrc/router: Router definitions. Those file/s in here define what to show when going to what urlsrc/services: Functions and types that connect with external servicessrc/stores: Pinia storessrc/types: Types that are used throughout the projectsrc/utils: Utility function definitionssrc/views: The different ui views
- Button System - Comprehensive guide to the button mixin system, including usage examples and best practices
- Known Issues & Fixes - Current issues, fixes needed, and technical notes
- Missing Icons - Icons that are currently missing
When adding new components or systems, please:
- Document any new mixins or utilities in the appropriate files
- Include usage examples and best practices
- Update this index file with new documentation links