|
2 | 2 |
|
3 | 3 | Modern, interactive documentation website for EasyAppDev.Blazor.Store built with React and Vite. |
4 | 4 |
|
5 | | -## Features |
| 5 | +**🌐 Live Site:** [https://mashrulhaque.github.io/EasyAppDev.Blazor.Store/](https://mashrulhaque.github.io/EasyAppDev.Blazor.Store/) |
| 6 | + |
| 7 | +## About the Library |
| 8 | + |
| 9 | +**EasyAppDev.Blazor.Store** is a Zustand-inspired state management library for Blazor applications. It emphasizes simplicity, type safety, and immutability with minimal boilerplate. |
| 10 | + |
| 11 | +**Key Library Features:** |
| 12 | +- ✨ **Zero boilerplate** - Write state methods, not actions/reducers |
| 13 | +- 🔒 **Immutable by default** - C# records + `with` expressions |
| 14 | +- 🎯 **Automatic reactivity** - Components update automatically |
| 15 | +- ⚡ **5 async helpers** - UpdateDebounced, AsyncData<T>, ExecuteAsync, UpdateThrottled, LazyLoad (74% code reduction) |
| 16 | +- 📦 **Tiny** - Only 38 KB gzipped |
| 17 | +- 🧰 **Redux DevTools** - Time-travel debugging |
| 18 | + |
| 19 | +## Documentation Site Features |
6 | 20 |
|
7 | 21 | - 📚 **Multi-Page Documentation** - Comprehensive coverage of all library features |
8 | 22 | - 🎨 **Syntax Highlighting** - Beautiful code examples with Prism.js |
@@ -44,12 +58,44 @@ npm run build |
44 | 58 |
|
45 | 59 | The built site will be in the `dist/` directory. |
46 | 60 |
|
| 61 | +For GitHub Pages deployment, the build uses the `GITHUB_PAGES=true` environment variable to set the correct base path: |
| 62 | + |
| 63 | +```bash |
| 64 | +GITHUB_PAGES=true npm run build |
| 65 | +``` |
| 66 | + |
47 | 67 | ### Preview Production Build |
48 | 68 |
|
49 | 69 | ```bash |
50 | 70 | npm run preview |
51 | 71 | ``` |
52 | 72 |
|
| 73 | +## Deployment |
| 74 | + |
| 75 | +The documentation site is automatically deployed to GitHub Pages via GitHub Actions. |
| 76 | + |
| 77 | +### Automatic Deployment |
| 78 | + |
| 79 | +The site deploys automatically when: |
| 80 | +- Changes are pushed to the `main` branch |
| 81 | +- Files in `docs-site/**` are modified |
| 82 | +- The workflow file `.github/workflows/deploy-docs.yml` is changed |
| 83 | + |
| 84 | +### Manual Deployment |
| 85 | + |
| 86 | +You can manually trigger a deployment: |
| 87 | +1. Go to the [Actions tab](https://github.com/mashrulhaque/EasyAppDev.Blazor.Store/actions) |
| 88 | +2. Select "Deploy Docs to GitHub Pages" |
| 89 | +3. Click "Run workflow" → Select "main" branch → "Run workflow" |
| 90 | + |
| 91 | +### Deployment Configuration |
| 92 | + |
| 93 | +The deployment is configured via: |
| 94 | +- **Workflow:** `.github/workflows/deploy-docs.yml` |
| 95 | +- **Base Path:** Set in `vite.config.js` via `process.env.GITHUB_PAGES` |
| 96 | +- **Router:** React Router uses `basename={import.meta.env.BASE_URL}` |
| 97 | +- **Output:** `dist/` directory is deployed to GitHub Pages |
| 98 | + |
53 | 99 | ## Project Structure |
54 | 100 |
|
55 | 101 | ``` |
@@ -241,10 +287,11 @@ MIT © EasyAppDev |
241 | 287 |
|
242 | 288 | ## Support |
243 | 289 |
|
244 | | -For issues or questions about the documentation: |
245 | | -- Open an issue on GitHub |
246 | | -- Check existing documentation |
247 | | -- Review code examples |
| 290 | +For issues or questions: |
| 291 | +- **Library Issues:** [GitHub Issues](https://github.com/mashrulhaque/EasyAppDev.Blazor.Store/issues) |
| 292 | +- **Documentation Issues:** Open an issue with the `documentation` label |
| 293 | +- **Main Repository:** [EasyAppDev.Blazor.Store](https://github.com/mashrulhaque/EasyAppDev.Blazor.Store) |
| 294 | +- **NuGet Package:** [EasyAppDev.Blazor.Store](https://www.nuget.org/packages/EasyAppDev.Blazor.Store/) |
248 | 295 |
|
249 | 296 | --- |
250 | 297 |
|
|
0 commit comments