0.0.6 • Published 7 years ago
generator-mnml-component v0.0.6
mnml React Component Generator
When components obey the single responsibility principle, they're easier to develop, test, refactor, troubleshoot...
mnml is a Yeoman scaffolding generator for creating React components that align with this philosophy.
Principles of mnml components:
- A component should have a single responsibility (Ex: connect with Redux)
- Components should be grouped together by feature (Ex: ButtonContainer, ButtonWithState, ButtonPresenter)
- Component groups should have a wrapper component (Ex: Button)
- Each component should have a separate test file (except for the wrapper component)
Quickstart
Install Yeoman
npm install -g yoInstall the mnml Component Generator
npm install -g generator-mnml-componentGenerate a Component
yo mnml-componentTypes of Components
These are the possible Components that could be generated using mnml-component
Presenter
Folder Structure
- ComponentName
index.jsComponentNamePresenter.js__tests__ComponentNamePresenter.spec.js
Component Hierarchy
ComponentName
ComponentNamePresenterContainer Presenter
Folder Structure
- ComponentName
index.jsComponentNameContainer.jsComponentNamePresenter.js__tests__ComponentNameContainer.spec.jsComponentNamePresenter.spec.js
Component Hierarchy
ComponentName
ComponentNameContainer
ComponentNamePresenterContainer WithState Presenter
Folder Structure
- ComponentName
index.jsComponentNameContainer.jsComponentNameWithState.jsComponentNamePresenter.js__tests__ComponentNameContainer.spec.jsComponentNameWithState.spec.jsComponentNamePresenter.spec.js
Component Hierarchy
ComponentName
ComponentNameContainer
ComponentNameWithState
ComponentNamePresenterTodo
- add support for Apollo client
- add support for TypeScript