It’s been 6 days since the beta release of FeniXTools. I was able to have some fun testing things out and see how helpful it is in a plugin development environment. The good news, it works and it does what it’s supposed to be doing. At first, tree shaking was not working correctly due to some issues with the way I set up the package but now when that tree shakes, it ignores the unnecessary code and leaves behind only what is imported during development.
The Repository Automation
During development, I noticed a few tweaks that could be done to FeniXTools GitLab repository. Pipelines, these bad boys help automate the process of linting, unit testing, building and deploying the work done to FeniXtools in real-time, well, as real-time as it gets.
Basically, it makes life easier and helps me focus on coding and quality control. It was tricky to get running correctly at first and failed quite a few jobs, the worst of it was 8 or more commits it took just to get things just right. With each commit you have to wait for the job to complete or fail, in my case, it failed one too many times.
It’s finally here! All documentation, although could use even more improvement, is finally complete. Every method inside of FeniXTools has been added. Even the process of generating the jsdoc documentation is automated in the pipeline I talked about previously.
The documentation will be available on the repo wiki as soon as I setup the jsdoc to markdown generator, for now, we have the auto generated documentation website available here, FeniXTools Documentation. It could use a bit more work and it will include the getting started guide once available but for now, this will do the trick.
Getting Started Guide
The getting started guide is going to have to wait a little while longer as I have a few plans to really change the way FeniXTools helps you build pluigns.
Rather than it being a simple library, I want to create a CLI tool that will help you get a project setup without the hassle of installing a bunch of packages one by one and setting up the directory structure. Rather, you will be able to simply use FeniXTools as a CLI like this
fenix-tools new plugin and the CLI will build a project directory for you. The next step would be to install the packages generated by FeniXTools and start developing your plugin.
Unfortunatly, I won’t be working on the CLI until after FeniXCore has been completed and ready for public. That may take a while longer than expected as the core API needs a stable foundation before being released. This helps me avoid any large mistakes and major changes to the API too quickly.
The Latest Changes
- Removed Logger and Pluginstore
- Renamed SignalDispatcher to Signals
- Improved Documentation and jsdoc generation
- Removed @license headers
- Automated piepline for testing, building and deploying
- Removed dist folder and replaced with artifacts
- Support for both http and https protocol
- Removed writing to file and instead the promise resolved the file’s data.
- New Util method
convertParameters()for converting objects whose values are strings
- Deep parse plugin parameters
- Converts string numbers, booleans, and arrays to the appropriate type
- Improved tree shaking for use with RollupJS and Webpack
- GitLab Repository FeniXTools
- Report An Issue FeniXTools Issues