![]() ![]() You can automate build/publishing tasks in a sweeping fashion.It's clear what npm scope these plugins belong to from management perspective but also from consumer perspective.Demo'ing plugin functionality can be written once and shared across multiple NativeScript app flavors to confirm frontend framework integration compliance with ease and comfort.This is a game changer and life saver for source maintenance in general. Reduces package.json and tsconfig.json updates to 1 for entire suite of plugins and demo apps instead of multiplied by the dozens.Workspaces are intended to manage a suite of plugins bound to an npm scope. Or if you prefer a video you can watch here. The workspace contains helpful tooling that removes a ton of the boring mundane work ordinarily required for maintenance and really lets you focus on the source that matters. We wanted to address this squarely not only for right now but provide a way to make the future easier in these circumstances as well. This is no different in other tech communities and/or frameworks. Because we love your plugins!! However one thing noone loves is when a major version occurs and our teams and projects have to wait for plugin compatibility. When we say "make lives easier", we mean for yourself and the entire community. Enter plugin workspaces to make lives easier The process is made a bit worse by the fact that most plugin repo's have their own set of demo app's (typically 3: angular, vue and vanilla), all with their own package dependencies, their own tsconfig, their own App_Resources and even their own duplicated demo code making plugin maintainance very time consuming when dependencies or configurations need to be updated. We however shudder everytime and we suspect many out there do as well. Now lets say a new TypeScript version comes out.or a new Angular version.or a new Vue version.or a new NativeScript version.and perhaps there are breaking changes or features you now want to integrate with? How does it make you feel that you now need to maintain all your plugin repos and update them individually? Maybe you don't mind? You are first of all an amazing individual for creating a plugin at all. My package.Let's say you're a plugin developer and you have over 2-3 plugins. This will reference a directory and project that don’t exist yet but we won’t have to come back later. Then edit the package.json file to add our workspaces and a start script. I’m just going to start by setting up an npm workspace.Īnd just enter through it. I’ve tried using several monorepo solutions like lerna and turbo but they all have the same issue, so I’m just using npm workspaces here because it’s the easiest to setup. Webpack 5.82.1 compiled with 5 errors in 2730 ms src/main.js 2:0-33 3:12-17ĥ errors have detailed information that is not shown. Module not found: Error: Can't resolve in. ![]() Module not found: Error: Can't resolve 'aurelia' in 'C:\Work\monorepoTests\new_aurelia_monorepo\packages\aurelia-project\src' ![]() /node_modules/css-loader/dist/cjs.js!././node_modules/postcss-loader/dist/cjs.js?!./src/my-app.css 485 bytes /node_modules/css-loader/dist/runtime/*.js 2.31 KiB 2 modules /node_modules/html-entities/lib/*.js 81.3 KiB 4 modules /node_modules/webpack/hot/*.js 4.59 KiB 4 modules /node_modules/style-loader/dist/runtime/*.js 5.84 KiB 6 modules /node_modules/webpack-dev-server/client/ 71.8 KiB 16 modules wait until bundle finished: /Īsset 619 KiB (name: entry) ![]() Content not from webpack is served from 'C:\Work\monorepoTests\new_aurelia_monorepo\packages\aurelia-project\public' directory Instead I get a series of errors: $ npm run start I’m trying to initialise an Aurelia 2 project inside an npm workspace but when npm extracts the package dependencies to the root of the workspace aurelia wont boot correctly. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |