nl-d365boilerplate-vite 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +90 -61
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,75 +1,104 @@
1
- # React + TypeScript + Vite
1
+ # 🚀 novalogica | Dynamics 365 React Boilerplate
2
2
 
3
- This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
3
+ <div align="center">
4
4
 
5
- Currently, two official plugins are available:
5
+ [![Vite](https://img.shields.io/badge/Vite-7-646CFF?style=for-the-badge&logo=vite&logoColor=white)](https://vite.dev/)
6
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
7
+ [![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-4-38B2AC?style=for-the-badge&logo=tailwind-css&logoColor=white)](https://tailwindcss.com/)
8
+ [![Shadcn](https://img.shields.io/badge/Shadcn_UI-Latest-white?style=for-the-badge&logo=shadcnui&logoColor=white)](https://ui.shadcn.com/)
6
9
 
7
- - [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react) uses [Babel](https://babeljs.io/) (or [oxc](https://oxc.rs) when used in [rolldown-vite](https://vite.dev/guide/rolldown)) for Fast Refresh
8
- - [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
10
+ **Production-ready React 19 boilerplate built with Vite for Microsoft Dynamics 365 development.**
11
+ *Modern, type-safe, and designed for seamless Dataverse integration.*
9
12
 
10
- ## React Compiler
13
+ [🎯 Quick Start](#-quick-start) • [🔧 Features](#-features) • [📖 Documentation](#-documentation)
11
14
 
12
- The React Compiler is enabled on this template. See [this documentation](https://react.dev/learn/react-compiler) for more information.
15
+ </div>
13
16
 
14
- Note: This will impact Vite dev & build performances.
17
+ ---
15
18
 
16
- ## Expanding the ESLint configuration
19
+ ## 🎯 Quick Start
17
20
 
18
- If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:
21
+ ### Create a New Project
19
22
 
20
- ```js
21
- export default defineConfig([
22
- globalIgnores(['dist']),
23
- {
24
- files: ['**/*.{ts,tsx}'],
25
- extends: [
26
- // Other configs...
23
+ Scaffold your production-ready app in seconds using our interactive CLI:
27
24
 
28
- // Remove tseslint.configs.recommended and replace with this
29
- tseslint.configs.recommendedTypeChecked,
30
- // Alternatively, use this for stricter rules
31
- tseslint.configs.strictTypeChecked,
32
- // Optionally, add this for stylistic rules
33
- tseslint.configs.stylisticTypeChecked,
25
+ ```bash
26
+ # Initialize a new project
27
+ npx nl-d365boilerplate-vite@latest my-app-name
28
+ ```
29
+
30
+ ### 🚀 Start Developing
31
+
32
+ Once created, setting up your environment is simple:
33
+
34
+ 1. **Enter your project**:
35
+ ```bash
36
+ cd my-app-name
37
+ npm install
38
+ ```
39
+
40
+ 2. **Configure Environment**:
41
+ ```bash
42
+ cp .env.example .env
43
+ ```
44
+ *Update `.env` with your D365 Environment URL and Client ID.*
45
+
46
+ 3. **Run Development Server**:
47
+ ```bash
48
+ npm run dev
49
+ ```
50
+ *Automatically handles OAuth and launches your app at `http://localhost:5173`.*
51
+
52
+ ---
53
+
54
+ ## 🔧 Features
55
+
56
+ | Feature | Description |
57
+ | :--- | :--- |
58
+ | **⚛️ React 19 + Vite 7** | Built on the latest, fastest web standards |
59
+ | **🎨 Tailwind CSS 4** | Next-gen utility-first styling with Shadcn/UI components |
60
+ | **🔗 DynamicsWebApi** | Type-safe Dataverse wrapper with OAuth integration |
61
+ | **🛠️ TypeScript** | Complete type safety for reliable code |
62
+ | **🧭 Built-in Routing** | Configurable page routing and navigation hooks |
63
+ | **📦 Web Resource Ready** | Optimized build scripts for D365 deployment |
64
+
65
+ ---
34
66
 
35
- // Other configs...
36
- ],
37
- languageOptions: {
38
- parserOptions: {
39
- project: ['./tsconfig.node.json', './tsconfig.app.json'],
40
- tsconfigRootDir: import.meta.dirname,
41
- },
42
- // other options...
43
- },
44
- },
45
- ])
67
+ ## 📖 Documentation
68
+
69
+ ### Interactive Docs
70
+ Your new project comes with **built-in interactive documentation**.
71
+ Run `npm start` and navigate to the **Documentation** page for live examples.
72
+
73
+ ### Project Structure
74
+ ```text
75
+ src/
76
+ ├── 📁 components/ # Shadcn/UI & shared components
77
+ ├── 📁 config/ # App configuration & page routing
78
+ ├── 📁 hooks/ # Custom hooks (e.g., useDataverse)
79
+ ├── 📁 pages/ # Application views
80
+ ├── 📁 providers/ # React Context providers (Theme, Auth)
81
+ └── 📁 lib/ # Utilities
46
82
  ```
47
83
 
48
- You can also install [eslint-plugin-react-x](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-x) and [eslint-plugin-react-dom](https://github.com/Rel1cx/eslint-react/tree/main/packages/plugins/eslint-plugin-react-dom) for React-specific lint rules:
49
-
50
- ```js
51
- // eslint.config.js
52
- import reactX from 'eslint-plugin-react-x'
53
- import reactDom from 'eslint-plugin-react-dom'
54
-
55
- export default defineConfig([
56
- globalIgnores(['dist']),
57
- {
58
- files: ['**/*.{ts,tsx}'],
59
- extends: [
60
- // Other configs...
61
- // Enable lint rules for React
62
- reactX.configs['recommended-typescript'],
63
- // Enable lint rules for React DOM
64
- reactDom.configs.recommended,
65
- ],
66
- languageOptions: {
67
- parserOptions: {
68
- project: ['./tsconfig.node.json', './tsconfig.app.json'],
69
- tsconfigRootDir: import.meta.dirname,
70
- },
71
- // other options...
72
- },
73
- },
74
- ])
84
+ ---
85
+
86
+ ## 🚀 Deployment
87
+
88
+ Build your application for Dynamics 365 Web Resources:
89
+
90
+ ```bash
91
+ npm run build
75
92
  ```
93
+
94
+ **Output:**
95
+ - `build/index.html` → HTML Web Resource
96
+
97
+ ---
98
+
99
+ <div align="center">
100
+
101
+ **[⭐ Star on GitHub](https://github.com/novalogica/nl-dynamics-boilerplate)**
102
+ Made with ❤️ by [novalogica](https://novalogica.pt)
103
+
104
+ </div>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nl-d365boilerplate-vite",
3
3
  "private": false,
4
- "version": "1.0.0",
4
+ "version": "1.0.1",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "nl-d365boilerplate-vite": "./bin/cli.js"