Genesisx Generators
This has been moved to Packages section above
Introduction
Generators are templated boiler plates, autmations, dev tools that helps to speed up development workflow in Genesisx monorepos built on NX architecture. You can read more about NX generators here https://nx.dev/generators/using-schematics.
Purpose
The main aim of the generators is to reduce the amount of time it takes to research what is needed to build most types of full stack or just frontend apps that is most widely used across all app developments based on client requirements and requests.
Getting started
These are generators that can be installed publicly or that is part of NX which Genesisx is built on. Genesisx plugin generators can be installed from the public here https://www.npmjs.com/settings/genesisx/packages
Nx provides a large number of generators and executors that can be used by installing plugins. There are a huge number of communitiy maintained plugins which can be found in the Nx Plugin Directory and officially supported plugins for all major frameworks:
Generator types
There are two main categories of generators
- Genesisx Plugin Generators
- Genesisx Workspace Generators
Genesisx Generator differences
These are generators that can be installed publicly or that is part of NX which Genesisx is built on. Genesisx plugin generators can be installed from the public here
https://www.npmjs.com/org/genesisx
- Genesisx plugin generators are different to the workspace generators as they end with -plg on the npm website for installing new generators. Other installed generators including NX generators can be navigated to via: NX console > Generate > list of all generators
- Genesisx plugin generators are run from node_modeles/genesisx/pluginname while Genesisx workspace generators are run from tools/generators/generatorname
- Genesisx generators are usually not easily visible to the developer to be able to update them as they are mostly maintained externally or publicly while Workspace generators are more for private generators where a client might not want to go public with generators they own and that needs to be maintained by their internal developers.
Genesisx Recommendations
This will depend on client requirement on a per project basis, but it is important for publicis consultants, product owners, and developers to understand the pros and cons of both based on the differences so that clients can make informed decisions on what will add value to the client's projects.
NX main Generator categories
React
- Overview
- Application Generator
- Component Generator
- Library Generator
- Hook Generator
- Stories Generator
- Redux Generator