-
Notifications
You must be signed in to change notification settings - Fork 1
Home
The VS Code extension contains a set of rules that based on a project's package.json
and other environmental files and settings it can make suggestions to fix common problems or help with migrations.
In App Flow there are also common problems with solutions that could be suggested that would help reduce the time to resolve an issue.
App Flow requires a node console CLI application that can give these suggestions as part of the running of an app build. The VS Code Extension project can provide this by adding an additional project that imports the rules defined, takes inputs from App Flow and returns results (eg text suggestions).
From App Flow we'll need:
- The build output as text (which includes errors, warnings, etc)
- Access to environment variables passed in that a node process may not have access to (to be determined but maybe the build stack name, etc)
A simple scenario is that errors are often embedded somewhere in the build logs. The output from a CLI tool could include the error in a standard json format or as text. Eg: { type: 'Swift Error', message: 'blar', location: { file: 'ios/blar.swift', line: 123, position: 0}}
A project is built from dependencies like the framework (Angular, React etc.), the platform (Capacitor, Cordova), plugins and 3rd party dependencies. The health of the project is a summary of factors of those dependencies:
- How far behind in major versions
- Has an update been done to a dependency in the last year (does it look abandoned)
- Is the dependency open source? commercially supported? internal? deprecated?
Based on these factors provide an overall health score (out of 100) for:
- Platform
- Framework
- Plugins
- Dependencies
Sample:
Quite often it is difficult for project owners to know when they should invest in maintenance of their application. Visually seeing this and setting a target can make the decision to improve easier and less bias to developer opinions. It can also be easy way for developers to argue that maintenance is important.