Why you need GenesisX?
Pain Points of Frontend Development
- Setting up initial projects from scratch.
- Spending time integrating code quality tools for new/existing projects.
- Maturity and quality of the solution depends on the architect on the project.
- Delays setting up dev eco-systems, quality gates and pipelines.
- Overall lack of efficiency, as replication of best practices isn’t easy.
How does GenesisX addresses the above concerns?
- Quick initial setup of essential tools for new or existing enterprise scale applications.
- Continuous value addition beyond initial setup through evolving accelerator.
- Attention to Developer experience for great productivity.
- Preservation and replication of low-level best practices.
- Pipelines and generators to build with speed and release quickly.
- GenesisX is modular which enables engineers to pick and choose the features based on their requirements.
How is GenesisX better than Nx?
Better Integrations and Dependency Management
- Seamless integration of various apps(packages) generated using various technologies and consistent build/deploy process.
- Better dependency management of various Nx and custom generators
Better generators (for not just apps but for various other tools as well).
- For CI/CD tools: GenesisX offers various non-Nx generators to add CI/CD capabilities and dockerization features out-of-the-box. Refer the packages section on left. Git workflow, Jenkins and so on.
GraphQL out-of-the-box solutions: Various GraphQL Features like SubGraphs(Services), federation, SuperGraph via Router and Gateway are provided out of the box
Vanilla Javascript: To provide complete freedom to developer to create a micro app using a library of their choice and no library as well, like a jQuery app, bootstrap or just typescript based vanilla app.
Upcoming Features: Constant Improvements and new generators which are not provided by Nx , like upcoming features ADB2C Authentication, AEM CMS Based SSR Generators, Code-shaper based generators and so on, please refer the road-map section on left.
Better documentation: GenesisX offers developer friendly documentation, which is available to everyone, and its constantly updating with latest enhancements and changes and feature-releases.
Non-Nx based base-framework: GenesisX has turboRepo based variation called Universal react, in case the need is not to go with Nx.
Industry Comparison
Create React App | Create Next App | GenesisX | |
---|---|---|---|
SSR, SSG | No | Yes | Yes |
Various UI Lib Support | React Only | React & Node | All Libraries , OOTB React, Node, Angular, Gql |
MicroApp | Yes | No | Yes |
Customization | Low | High | Very High |
Monorepo setup | No | No | Yes |
Typescript | Yes | Yes | Yes |
Unit Testing setup | Yes | Yes | Yes |
Inbuilt Storybook | No | No | Yes |
Design system | No | No | Yes |
Micro App Loader | No | No | Yes |
State Management Solution | No | No | Yes, with Smart Context |
Browser & Server logger | No | No | Yes |
Component generator | No | No | Yes, with Generate Plop |
Module Federation | No | No | Yes |
Quality control config | No | No | Yes |
E2E automation | No | No | Yes |
PWA | No | No | Yes, with Workbox |
VS Code Config | No | No | Yes, extensions recommendations and config |
So if you are not using GenesisX, you might have to use various other solutions like-
- create-react-app,
- create-next-app
- setup webpack config manually
- setup a node microservice manually
- setup and create the GraphQL services
- setup CI/CD and Virtualization
And then bring them together under one workspace and making sure the dependencies and versions are properly managed.