Scaled Web Engineering. Where Libraries, Views & apps coexist together and tooling is a first-class citizen.
modular
is a collection of tools and guidance to enable UI development at
scale. It is derived from work at JP Morgan to enable development in a single
repository by many teams.
It provides a modular
CLI to scaffold and develop a new application from
scratch, as well as commands to add and manage further modules.
modular
believes the burden to learn a "Framework" with proprietary APIs in a
rapidly evolving landscape is an inhibitor to scaled web engineering.
There is already a very strong set of Language Constructs, Frameworks and
Tooling that the front end community is rallying around like TypeScript
,
ES6 Modules
, React
, Parcel
, Webpack
, GitHub Actions
, Jest
,
Workspaces
etc.
Scaled Engineering requires a few more Frameworks, Libraries and Tools that are not yet first class citizens in the world of Front End Engineering like Universal Data Fetching, Feature Flags, Analytics Capture, Security, Deployment etc.
modular
attempts to bring the best Language Constructs, Libraries, Frameworks
and Tooling together to establish a set of patterns and definitions to enable
Monorepo based engineering.
yarn create modular-react-app my-new-modular-project
Bootstraps a new project, configured to use Yarn workspaces.
This also creates a workspace named 'app' containing a fresh
create-react-app
application written in
TypeScript.
More documentation about modular commands is here.
Modular is based around the idea of minimal configuration - however documentation for the options available is here.