demf-custom-operator-details 3.0.0 β†’ 3.0.2

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.
package/README.md CHANGED
@@ -1,343 +1,352 @@
1
- # 🎨 Vue 3 + Vite Microfrontend Template
1
+ # Digital Enabler Custom Operator Details
2
2
 
3
- ![REPO-TYPE](https://img.shields.io/badge/repo--type-template-blue?style=for-the-badge&logo=github)
3
+ The Custom Operator Details microfrontend provides the detailed configuration interface for creating and editing custom operators. Includes code editor for JavaScript logic, input/output parameter definition, validation, and test execution capabilities.
4
4
 
5
- Professional template for creating Vue 3 + Vite microfrontends with Single-SPA architecture.
5
+ Built with **Vue 3**, **Vuetify 3**, and **Vite**. Designed for **Single-SPA** integration.
6
+
7
+ > πŸ“Œ **See also:**
8
+ > - [Root Config integration guide](https://github.com/digital-enabler/root-config-microfrontend-vite-template)
9
+ > - [Microfrontend template documentation](https://github.com/digital-enabler/vuejs3-microfrontend-vite-template)
6
10
 
7
11
  ---
8
12
 
9
- ## πŸ“¦ Repository Contents
13
+ ## πŸ“¦ Installation
14
+
10
15
 
11
- This repository provides:
16
+ ### Via CDN
12
17
 
13
- ### 🎨 **Microfrontend Template** (`/app`)
14
- Base Vue 3 + Vite + Vuetify 3 template for Single-SPA
18
+ This project is available from the following CDN:
15
19
 
16
- ### πŸ› οΈ **MF Generator** (`/generator`)
17
- Automated tool to create new microfrontends from template
20
+ ```
21
+ https://cdn.jsdelivr.net/npm/demf-custom-operator-details@latest/mf-app.js
22
+ ```
18
23
 
19
- ### πŸ”„ **Migration Tool** (`/migration-tools`)
20
- Automated tool to migrate Vue CLI β†’ Vite projects
24
+ Add it to your root-config import map:
25
+
26
+ ```json
27
+ {
28
+ "imports": {
29
+ "demf-custom-operator-details": "https://cdn.jsdelivr.net/npm/demf-custom-operator-details@latest/mf-app.js"
30
+ }
31
+ }
32
+ ```
21
33
 
22
34
  ---
23
35
 
24
36
  ## πŸš€ Quick Start
25
37
 
26
- ### Option 1: Create New Microfrontend
38
+ ### Prerequisites
27
39
 
28
- ```bash
29
- # 1. Navigate to generator folder
30
- cd generator
40
+ Before you continue you need to have:
41
+
42
+ - A Digital Enabler **root-config** application running
43
+ - **Single-SPA** layout engine configured
44
+ - A configuration file for the Custom Operator Details (see below)
45
+
46
+ ### Integration Steps
31
47
 
32
- # 2. Run the script
33
- # Windows
34
- create-mf.bat
48
+ **1. Add to Import Map**
35
49
 
36
- # Linux/macOS
37
- ./create-mf.sh
50
+ In your root-config `importmap.json`:
38
51
 
39
- # Cross-platform (Node.js)
40
- node create-mf.js
52
+ ```json
53
+ {
54
+ "imports": {
55
+ "demf-custom-operator-details": "https://cdn.jsdelivr.net/npm/demf-custom-operator-details@latest/mf-app.js"
56
+ }
57
+ }
41
58
  ```
42
59
 
43
- πŸ“š **Complete Documentation:**
44
- - [`generator/README.md`](./generator/README.md) - Complete guide
45
- - [`generator/QUICKSTART.md`](./generator/QUICKSTART.md) - Quick reference
60
+ For local development:
61
+ ```json
62
+ {
63
+ "imports": {
64
+ "demf-custom-operator-details": "http://localhost:9018/mf-app.js"
65
+ }
66
+ }
67
+ ```
46
68
 
47
- ---
69
+ **2. Register in Layout**
48
70
 
49
- ### Option 2: Migrate Existing Vue CLI Project
71
+ In your root-config layout HTML:
50
72
 
51
- ```bash
52
- # 1. Navigate to migration-tools folder
53
- cd migration-tools
73
+ ```html
74
+ <application
75
+ name="demf-custom-operator-details"
76
+ props="realm, palette, custom-operator-details-config">
77
+ </application>
78
+ ```
54
79
 
55
- # 2. Run the script
56
- # Windows
57
- migrate-to-vite.bat
80
+ **3. Create Configuration File**
58
81
 
59
- # Linux/macOS
60
- node migrate-to-vite.js
82
+ Create a `custom-operator-details-config.json` file with these settings:
83
+
84
+ ```json
85
+ {
86
+ "name": "custom-operator-details",
87
+ "mf": "demf-custom-operator-details",
88
+ "api": "https://[generic_api_location]/api"
89
+ }
61
90
  ```
62
91
 
63
- ⚑ **Automated migration in 5-10 minutes!**
92
+ This JSON file must be:
93
+ - Stored in a location accessible to the root-config
94
+ - Included in the root-config's remote configuration
95
+ - Passed as the `custom-operator-details-config` prop to the microfrontend
64
96
 
65
- πŸ“š **Migration Documentation:**
66
- - [`migration-tools/README.md`](./migration-tools/README.md) - Complete guide
67
- - [`migration-tools/QUICKSTART.md`](./migration-tools/QUICKSTART.md) - Quick guide
68
- - [`migration-tools/CHANGELOG.md`](./migration-tools/CHANGELOG.md) - Version changelog
97
+ > πŸ“– For details on configuration management, see:
98
+ > - [Microfrontend Template Guide](https://github.com/digital-enabler/vuejs3-microfrontend-vite-template)
99
+ > - [Root Config Documentation](https://github.com/digital-enabler/root-config-microfrontend-vite-template)
69
100
 
70
101
  ---
71
102
 
72
- ## πŸ“‹ Prerequisites
103
+ ## βš™οΈ Configuration
73
104
 
74
- - **Node.js** >= 22.0.0 < 23 || >= 24.8.0 < 25
75
- - **npm** (included with Node.js)
76
- - **Git** (to clone the repository)
105
+ The Custom Operator Details microfrontend receives a configuration object via the `custom-operator-details-config` prop:
77
106
 
78
- ---
107
+ ```json
108
+ {
109
+ "name": "custom-operator-details",
110
+ "mf": "demf-custom-operator-details",
111
+ "api": "https://your-api-endpoint.com/api"
112
+ }
113
+ ```
79
114
 
80
- ## 🎯 Template Features
115
+ ### Configuration Fields
81
116
 
82
- ### Frontend Stack
83
- - βœ… **Vue 3** + Composition API
84
- - βœ… **Vuetify 3** - Material Design UI
85
- - βœ… **Vite** - Fast build + HMR
86
- - βœ… **Vue Router 4** - Routing
87
- - βœ… **Vuex 4** - State management
88
- - βœ… **Vue I18n 9** - Internationalization
117
+ | Field | Type | Required | Description |
118
+ |-------|------|----------|-------------|
119
+ | `mf` | string | Yes | Microfrontend identifier (use "demf-custom-operator-details") |
120
+ | `api` | string | Yes | Base URL for API calls |
89
121
 
90
- ### Architecture
91
- - βœ… **Single-SPA** - Microfrontend orchestration
92
- - βœ… **SystemJS** - Module loading
93
- - βœ… **Dynamic Props** - Runtime configuration
94
- - βœ… **Dynamic Theme** - Customizable palette
122
+ ### Additional Props from Root-Config
95
123
 
96
- ### Developer Experience
97
- - βœ… **ESLint** - Linting
98
- - βœ… **Prettier** - Formatting
99
- - βœ… **Hot Module Replacement** - Fast development
100
- - βœ… **TypeScript Support** - Optional
124
+ The microfrontend also receives these props automatically from the root-config:
125
+
126
+ - **`realm`**: Current tenant/realm identifier
127
+ - **`palette`**: Dynamic theme colors (primary, secondary, etc.)
128
+
129
+ These props are used to:
130
+ - Apply consistent theming across the platform
131
+ - Configure tenant-specific behavior
132
+ - Adapt the Custom Operator Details appearance to the current application theme
101
133
 
102
134
  ---
103
135
 
104
- ## πŸ“ Repository Structure
136
+ ## πŸ› οΈ Development
105
137
 
106
- ```
107
- vuejs3-microfrontend-vite-template/
108
- β”œβ”€β”€ app/ # 🎨 Microfrontend Template
109
- β”‚ β”œβ”€β”€ public/
110
- β”‚ β”œβ”€β”€ src/
111
- β”‚ β”‚ β”œβ”€β”€ App.vue
112
- β”‚ β”‚ β”œβ”€β”€ main.js
113
- β”‚ β”‚ β”œβ”€β”€ components/
114
- β”‚ β”‚ β”œβ”€β”€ locales/
115
- β”‚ β”‚ β”œβ”€β”€ plugins/
116
- β”‚ β”‚ β”œβ”€β”€ router/
117
- β”‚ β”‚ └── store/
118
- β”‚ β”œβ”€β”€ package.json
119
- β”‚ β”œβ”€β”€ vite.config.js
120
- β”‚ └── ...
121
- β”‚
122
- β”œβ”€β”€ generator/ # πŸ› οΈ MF Creation Tool
123
- β”‚ β”œβ”€β”€ create-mf.js # Main script
124
- β”‚ β”œβ”€β”€ create-mf.bat # Windows wrapper
125
- β”‚ β”œβ”€β”€ create-mf.ps1 # PowerShell
126
- β”‚ β”œβ”€β”€ create-mf.sh # Bash
127
- β”‚ β”œβ”€β”€ README.md # Complete documentation
128
- β”‚ β”œβ”€β”€ QUICKSTART.md # Quick guide
129
- β”‚ └── CLEANUP-INSTRUCTIONS.md
130
- β”‚
131
- β”œβ”€β”€ migration-tools/ # πŸ”„ Migration Tool
132
- β”‚ β”œβ”€β”€ migrate-to-vite.js # Migration script
133
- β”‚ β”œβ”€β”€ migrate-to-vite.bat # Windows wrapper
134
- β”‚ β”œβ”€β”€ migrate-to-vite.ps1 # PowerShell
135
- β”‚ β”œβ”€β”€ README.md # Complete guide
136
- β”‚ β”œβ”€β”€ CHANGELOG.md # Versions
137
- β”‚ β”œβ”€β”€ QUICKSTART.md # Quick guide
138
- β”‚ └── CLEANUP-INSTRUCTIONS.md
139
- β”‚
140
- β”œβ”€β”€ .circleci/ # CI/CD configuration
141
- β”œβ”€β”€ .gitignore
142
- β”œβ”€β”€ CHANGELOG.md # Template changelog
143
- β”œβ”€β”€ package.json # Root package
144
- └── README.md # πŸ“– This file
145
- ```
138
+ ### Prerequisites
146
139
 
147
- ---
140
+ Before you continue you need to have:
148
141
 
149
- ## ⚠️ Naming Conventions
142
+ - [NPM](https://www.npmjs.com/) installed
143
+ - [Node.js](https://nodejs.org/) (v22+ or v24.8+) installed
144
+ - [Vue.js](https://v3.vuejs.org/) and [Vite](https://vitejs.dev/) knowledge
145
+ - A [GitHub](https://github.com/) account
146
+ - Visual Studio Code or IntelliJ IDEA as your development IDE
150
147
 
151
- ### Digital Enabler Standard
148
+ ### Project Management
152
149
 
153
- New microfrontends follow the convention:
150
+ #### Installation
154
151
 
155
- ```
156
- demf-[functional-name]
152
+ Open a **Terminal** window in the project folder and go inside the `app` folder, then launch:
153
+
154
+ ```bash
155
+ npm install
157
156
  ```
158
157
 
159
- **Valid examples:**
160
- - βœ… `demf-auth` - Authentication
161
- - βœ… `demf-sidebar` - Sidebar
162
- - βœ… `demf-dashboard` - Dashboard
163
- - βœ… `demf-mashups-list` - Mashup list
158
+ > **NOTE:** When install finishes, do not worry about warnings on versions and vulnerability problems reported. **DO NOT** launch `npm audit fix` or `npm audit fix --force` commands.
164
159
 
165
- **Rules:**
166
- - Only lowercase letters (a-z)
167
- - Numbers (0-9)
168
- - Hyphens (`-`) and underscores (`_`)
169
- - ❌ NO spaces
170
- - ❌ NO special characters
171
- - ❌ NO uppercase letters
160
+ #### Development Server (with hot-reload)
172
161
 
173
- ---
162
+ ```bash
163
+ npm run dev
164
+ ```
174
165
 
175
- ## πŸ”— Root-Config Integration
166
+ This command:
167
+ 1. Generates Vuetify locales automatically (via `predev` script)
168
+ 2. Builds the microfrontend in watch mode
169
+ 3. Starts a preview server at `http://localhost:9018`
176
170
 
177
- After creating a microfrontend:
171
+ The microfrontend will be available at: `http://localhost:9018/mf-app.js`
178
172
 
179
- ### 1. Update Import Map
173
+ #### Build for Production
180
174
 
181
- ```json
182
- {
183
- "imports": {
184
- "demf-my-app": "http://localhost:9901/mf-app.js"
185
- }
186
- }
175
+ ```bash
176
+ npm run build
187
177
  ```
188
178
 
189
- ### 2. Add to Layout
179
+ This command:
180
+ 1. Generates Vuetify locales automatically (via `prebuild` script)
181
+ 2. Creates an optimized production build in the `dist/` folder
182
+ 3. Outputs a SystemJS bundle ready for deployment
190
183
 
191
- ```html
192
- <application name="demf-my-app" props="realm, palette, mfConfig"></application>
193
- ```
184
+ #### Code Quality
194
185
 
195
- ### 3. Configure Props
186
+ ```bash
187
+ npm run lint # Lint and fix files with ESLint
188
+ npm run format # Format code with Prettier
189
+ ```
196
190
 
197
- Standard props are:
198
- - **`realm`** - Application context
199
- - **`palette`** - Color theme
200
- - **`mfConfig`** - MF-specific configuration
191
+ > **NOTE:** Alternatively to the commands indicated above you can use the Vue UI browser interface.
201
192
 
202
193
  ---
203
194
 
204
- ## πŸ› οΈ Development Commands
195
+ ## 🌐 Internationalization
205
196
 
206
- ```bash
207
- # Install dependencies
208
- npm install
197
+ The Custom Operator Details microfrontend supports multiple languages through **vue-i18n** with automatic **Vuetify locale integration**.
209
198
 
210
- # Development (watch + preview)
211
- npm run dev
199
+ ### How It Works
212
200
 
213
- # Production build
214
- npm run build
201
+ - Locale files are stored in `src/locales/*.json` (e.g., `en.json`, `it.json`)
202
+ - The script `scripts/generate-vuetify-locales.mjs` automatically scans these files
203
+ - Matching Vuetify translations are imported and merged
204
+ - The active language is read from `localStorage.getItem('lang')` (defaults to `en`)
215
205
 
216
- # Preview build
217
- npm run preview
206
+ ### Supported Languages
218
207
 
219
- # Lint
220
- npm run lint
208
+ The Custom Operator Details includes translations for the languages defined in `src/locales/`:
209
+ - English (`en`)
210
+ - Italian (`it`)
211
+ - [Add other languages as needed]
221
212
 
222
- # Format
223
- npm run format
224
- ```
213
+ ### Adding a New Language
225
214
 
226
- ---
215
+ 1. Create a new file: `src/locales/<code>.json` (e.g., `es.json`)
216
+ 2. Add your translations following the existing structure
217
+ 3. Run `npm run dev` or `npm run build`
218
+ 4. The generator will automatically include Vuetify translations for that language
227
219
 
228
- ## πŸ“š Detailed Documentation
220
+ ---
229
221
 
230
- ### MF Generator
231
- - [`generator/README.md`](./generator/README.md) - Complete generator guide
232
- - [`generator/QUICKSTART.md`](./generator/QUICKSTART.md) - Quick start
233
- - [`generator/CLEANUP-INSTRUCTIONS.md`](./generator/CLEANUP-INSTRUCTIONS.md) - Cleanup instructions
222
+ ## 🎨 Features
234
223
 
235
- ### Migration Tool
236
- - [`migration-tools/README.md`](./migration-tools/README.md) - Complete migration guide
237
- - [`migration-tools/QUICKSTART.md`](./migration-tools/QUICKSTART.md) - Quick migration
238
- - [`migration-tools/CHANGELOG.md`](./migration-tools/CHANGELOG.md) - Version changelog
239
- - [`migration-tools/CLEANUP-INSTRUCTIONS.md`](./migration-tools/CLEANUP-INSTRUCTIONS.md) - Cleanup instructions
224
+ - **Dynamic theming**: Automatically adapts to the palette passed from root-config
225
+ - **Multi-language support**: Full internationalization with vue-i18n
226
+ - **Responsive design**: Works seamlessly on mobile, tablet, and desktop
227
+ - **Material Design**: Built with Vuetify 3 components and Material Design Icons
228
+ - **Consistent branding**: Shows uniform Custom Operator Details across all Digital Enabler services
229
+ - **Platform information**: Displays version, copyright, and relevant links
240
230
 
241
231
  ---
242
232
 
243
- ## πŸ”„ Versions
244
-
245
- ### Template
246
- - **Current Version**: 3.0.0
247
- - **Vue**: 3.5.13
248
- - **Vuetify**: 3.10.5
249
- - **Vite**: 6.0.11
233
+ ## πŸ“ Project Structure
250
234
 
251
- ### Tools
252
- - **Generator**: v1.0.0
253
- - **Migration Tool**: v1.0.0
235
+ ```
236
+ demf-custom-operator-details/
237
+ β”œβ”€β”€ app/
238
+ β”‚ β”œβ”€β”€ src/
239
+ β”‚ β”‚ β”œβ”€β”€ App.vue # Main component
240
+ β”‚ β”‚ β”œβ”€β”€ main.js # Entry point
241
+ β”‚ β”‚ β”œβ”€β”€ components/ # Custom Operator Details components
242
+ β”‚ β”‚ β”œβ”€β”€ locales/
243
+ β”‚ β”‚ β”‚ β”œβ”€β”€ i18n.js # i18n configuration
244
+ β”‚ β”‚ β”‚ β”œβ”€β”€ en.json # English translations
245
+ β”‚ β”‚ β”‚ β”œβ”€β”€ it.json # Italian translations
246
+ β”‚ β”‚ β”‚ └── vuetify-generated.js # Auto-generated Vuetify locales
247
+ β”‚ β”‚ β”œβ”€β”€ plugins/
248
+ β”‚ β”‚ β”‚ └── vuetify.js # Vuetify configuration
249
+ β”‚ β”‚ β”œβ”€β”€ router/
250
+ β”‚ β”‚ └── store/
251
+ β”‚ β”œβ”€β”€ scripts/
252
+ β”‚ β”‚ └── generate-vuetify-locales.mjs
253
+ β”‚ β”œβ”€β”€ public/
254
+ β”‚ β”œβ”€β”€ dist/ # Build output
255
+ β”‚ β”œβ”€β”€ package.json
256
+ β”‚ β”œβ”€β”€ vite.config.js
257
+ β”‚ └── eslint.config.js
258
+ β”œβ”€β”€ docker/
259
+ └── README.md
260
+ ```
254
261
 
255
262
  ---
256
263
 
257
- ## πŸ› Troubleshooting
264
+ ## πŸ” Troubleshooting
258
265
 
259
- ### MF Generator
266
+ ### Custom Operator Details not visible
260
267
 
261
- | Problem | Solution |
262
- |---------|----------|
263
- | Invalid MF name | Use only lowercase, numbers, `-` and `_` |
264
- | Directory already exists | Choose different name or delete directory |
265
- | Port in use | Use different port (1024-65535) |
268
+ - Verify the import map includes `demf-custom-operator-details`
269
+ - Check the layout HTML has the `<application>` tag with correct name
270
+ - Ensure the bundle is accessible at the configured URL
271
+ - Look for console errors in the browser developer tools
266
272
 
267
- ### Migration Tool
273
+ ### Configuration not working
268
274
 
269
- | Problem | Solution |
270
- |---------|----------|
271
- | Not a Vue CLI project | Check for `vue.config.js` file |
272
- | Build failed | Read `MIGRATION-REPORT.md` |
273
- | Broken i18n imports | Check relative paths in `src/` |
275
+ - Check that `custom-operator-details-config` prop is passed in the layout
276
+ - Verify the configuration JSON structure matches the expected format
277
+ - Ensure the root-config is loading the remote configuration correctly
278
+ - Check console for warnings about missing configuration
274
279
 
275
- ---
276
-
277
- ## 🀝 Contributing
280
+ ### Styling issues
278
281
 
279
- To contribute to this template:
282
+ - Ensure the `palette` prop is being passed from root-config
283
+ - Verify Material Design Icons fonts are loaded
284
+ - Check that Vuetify theme configuration is correct
285
+ - Clear browser cache and reload
280
286
 
281
- 1. Fork the repository
282
- 2. Create a branch for your feature (`git checkout -b feature/amazing-feature`)
283
- 3. Commit your changes (`git commit -m 'Add amazing feature'`)
284
- 4. Push to the branch (`git push origin feature/amazing-feature`)
285
- 5. Open a Pull Request
287
+ ### API connection errors
286
288
 
287
- ---
289
+ - Verify the `api` field in `custom-operator-details-config.json` is correct
290
+ - Check network tab for failed API requests
291
+ - Ensure CORS is properly configured on the backend
292
+ - Verify the API endpoint is accessible from the browser
288
293
 
289
- ## πŸ“ License
294
+ ### Development server not starting
290
295
 
291
- Questo progetto Γ¨ proprietΓ  di **Engineering Ingegneria Informatica S.p.A.**
296
+ - Check that port 9018 is not already in use
297
+ - Verify Node.js version is compatible (v22+ or v24.8+)
298
+ - Try removing `node_modules` and running `npm install` again
299
+ - Ensure all dependencies are correctly installed
292
300
 
293
301
  ---
294
302
 
295
- ## πŸ”— Risorse Utili
303
+ ## πŸ“š Tech Stack
296
304
 
297
- - [Single-SPA Documentation](https://single-spa.js.org/)
298
- - [Vue 3 Documentation](https://vuejs.org/)
299
- - [Vite Documentation](https://vitejs.dev/)
300
- - [Vuetify 3 Documentation](https://vuetifyjs.com/)
301
- - [Vue Router Documentation](https://router.vuejs.org/)
302
- - [Vuex Documentation](https://vuex.vuejs.org/)
303
- - [Vue I18n Documentation](https://vue-i18n.intlify.dev/)
305
+ ### Runtime Dependencies
304
306
 
305
- ---
307
+ - **Vue 3** (^3.5.22) - Progressive JavaScript framework
308
+ - **Vuetify 3** (^3.10.7) - Material Design component library
309
+ - **Single-SPA Vue** (^3.0.1) - Single-SPA integration for Vue
310
+ - **Vue Router** (^4.6.3) - Official router for Vue.js
311
+ - **Vue i18n** (^9.14.5) - Internationalization plugin
312
+ - **Vuex** (^4.1.0) - State management
313
+ - **Axios** (^1.13.0) - HTTP client
314
+ - **Material Design Icons** (^7.4.47) - Icon library
306
315
 
307
- ## πŸ“§ Support
316
+ ### Development Dependencies
308
317
 
309
- For issues or questions:
318
+ - **Vite** (^7.1.12) - Next generation frontend tooling
319
+ - **ESLint** (^9.38.0) - Code linting
320
+ - **Prettier** (^3.6.2) - Code formatting
321
+ - **Vite Plugin Vue DevTools** (^8.0.3) - Vue DevTools integration
322
+ - **Concurrently** (^9.2.1) - Run multiple commands
310
323
 
311
- 1. Check documentation in `generator/` and `migration-tools/` folders
312
- 2. Review Troubleshooting sections
313
- 3. Contact the **Digital Enabler Team**
324
+ For complete dependencies, see [`package.json`](./app/package.json).
314
325
 
315
326
  ---
316
327
 
317
- **Digital Enabler Team**
318
- *Engineering Ingegneria Informatica S.p.A.*
328
+ ## πŸ“– Related Documentation
319
329
 
320
- ---
330
+ - [Digital Enabler Root Config Template](https://github.com/digital-enabler/root-config-microfrontend-vite-template)
331
+ - [Digital Enabler Microfrontend Template](https://github.com/digital-enabler/vuejs3-microfrontend-vite-template)
332
+ - [Single-SPA Documentation](https://single-spa.js.org/)
333
+ - [Vue 3 Documentation](https://vuejs.org/)
334
+ - [Vuetify 3 Documentation](https://vuetifyjs.com/)
335
+ - [Vite Documentation](https://vitejs.dev/)
321
336
 
322
- ## 🎯 Next Steps
337
+ ---
323
338
 
324
- ### Want to create a new MF?
325
- ```bash
326
- cd generator
327
- create-mf.bat # Windows
328
- ./create-mf.sh # Linux/macOS
329
- ```
339
+ ## πŸ“„ License
330
340
 
331
- ### Want to migrate a Vue CLI project?
332
- ```bash
333
- cd migration-tools
334
- migrate-to-vite.bat # Windows
335
- node migrate-to-vite.js # Linux/macOS
336
- ```
341
+ This project is part of Digital Enabler Ecosystem.
337
342
 
338
- ### Want to use the template manually?
339
- Copy the `app/` folder and customize files manually.
343
+ Β© 2025 Engineering Ingegneria Informatica S.p.A.
340
344
 
341
345
  ---
342
346
 
343
- *Last updated: January 2025*
347
+ ## πŸ†˜ Support
348
+
349
+ For support, questions, or issues:
350
+ - Open an issue on [GitHub](https://github.com/digital-enabler/demf-custom-operator-details/issues)
351
+ - Contact the Digital Enabler development team
352
+ - Check the [Digital Enabler documentation](https://github.com/digital-enabler)