The bitplatform repository is a comprehensive .NET development ecosystem designed to build production-ready Blazor applications with extensive features. It delivers a rich UI component library with over 80 components, Progressive Web App (PWA) support through an advanced service worker system (Bswup), browser API access via C# wrappers (Butil), offline client database support (Besql), and multi-platform capabilities including Web, Android, iOS, Windows, and macOS targets.
This repository also provides reusable project templates such as the Bit Boilerplate, enabling unified development with integrated authentication, localization, and native platform interoperability. A centralized build system and automated CI/CD pipelines allow seamless packaging, testing, and deployment.
This page serves as a high-level architectural overview. For detailed guides on setup, libraries, and demos, consult the linked child pages:
Sources: README.md15-29
The codebase is organized under a src/ directory, grouping related projects and libraries following a modular architecture. Central package management is enforced with a shared Bit.Build.props file controlling versioning and common build properties, currently set to version 10.5.0-pre-09.
| Directory | Purpose | Example Projects |
|---|---|---|
BlazorUI/ | UI component library with demos | Bit.BlazorUI, Bit.BlazorUI.Extras |
Bswup/ | Service worker based PWA and caching system | Bit.Bswup, Bit.Bswup.Demo |
Butil/ | Browser API wrappers for C# | Bit.Butil |
Besql/ | Offline SQLite database in browser | Bit.Besql |
Templates/ | Project templates including boilerplate | Bit.Boilerplate, Bit.BlazorEmpty |
Websites/ | Showcase websites showcasing platform features | Bit.Websites.Platform, Bit.Websites.Sales |
The root Bit.Build.props file centralizes repository metadata, versioning, packaging, and compile options to ensure uniformity:
Project-level Directory.Build.props files configure platform targeting, language features, and global using directives to streamline development on various mobile and desktop platforms.
Sources: src/Bit.Build.props3-45 src/BlazorUI/Demo/Directory.Build.props1-47
The bitplatform platform differentiates itself by delivering a full-stack Blazor ecosystem, far beyond just UI components. It provides the following core libraries, which together cover UI, PWA support, browser APIs, and offline storage:
Sources: README.md17-26 README.md27-28 src/Brouter/README.md1-20
The centerpiece is the Bit.BlazorUI library featuring 80+ components optimized to be lightweight (under 400 KB) with comprehensive Dark and Light theme support. It provides base classes like BitComponentBase for common UI logic, validation, and styling README.md17-18
Sources: README.md17-26
Bit.Bswup delivers advanced PWA functionality based on service workers using a sophisticated caching and update management system. It supports customization through four operational modes that control client prerendering and offline behavior:
NoPrerenderInitialPrerenderAlwaysPrerenderFullOfflineKey scripts in the Bit.Bswup system include:
The service worker script (bit-bswup.sw.ts) handles caching assets and fetch events, ensuring robust offline support and optimized resource updates. The registration script (bit-bswup.ts) manages the lifecycle of the service worker, including automatic Blazor startup synchronization, update detection, and activation. The progress UI script (bit-bswup.progress.ts) provides feedback for asset download progress, auto-reloading, and user interaction.
Sources: src/Bswup/Bit.Bswup/Scripts/bit-bswup.sw.ts50-83 src/Bswup/Bit.Bswup/Scripts/bit-bswup.ts5-120 src/Bswup/Bit.Bswup/Scripts/bit-bswup.progress.ts1-111
The Bit Boilerplate template is a foundational project template enabling full-stack Blazor apps with multi-platform targets: WebAssembly, Android, iOS, Windows, and macOS. It tightly integrates many platform features including:
Android, iOS, Windows, Mac enabling platform-specific featuresPlatform targeting is configured in Directory.Build.props files via conditional property groups and define constants:
For step-by-step instructions on setting up projects using this template, see Getting Started.
Sources: README.md27-28 src/BlazorUI/Demo/Directory.Build.props1-47
The repository hosts several open source showcase applications, each demonstrating different platform features and configurations:
| Application | Description | Web Demo URL | iOS App | Android App | Windows App | macOS App |
|---|---|---|---|---|---|---|
| bitplatform | Main platform website | bitplatform.dev | N/A | N/A | N/A | N/A |
| Sales | High-performance CRM demo | sales.bitplatform.dev | Soon! | Soon! | Windows app | Soon! |
| bit BlazorUI | Component showcase & docs | blazorui.bitplatform.dev | iOS app | Android app | Windows app | macOS app |
| AdminPanel | Enterprise management dashboard | adminpanel.bitplatform.dev | iOS app | Android app | Windows app | macOS app |
| Todo | Task management with offline & PWA support | todo.bitplatform.dev | iOS app | Android app | Windows app | macOS app |
These applications provide practical examples of multi-platform bundling, offline capabilities, UI components usage, and integration patterns.
For an in-depth look at these demos, see Showcase Applications and Demos.
Sources: README.md37-53
This overview establishes a foundational understanding of the bitplatform repository’s purpose, architecture, and key components. For comprehensive technical details, follow the links to each child page dedicated to environment setup, library exploration, and example applications.
Refresh this wiki
This wiki was recently refreshed. Please wait 6 days to refresh again.