design-system-components
design-system-components copied to clipboard
Separate components by framework ( e.g React, Sass ) to scale better
To scale our component library in the future we need a way to handle future framework forks (e.g Angular, Vue, Web Components) that are maintainable but still stay in sync with each other.
One suggestion that seems to cover all of this is to create separate GitHub repos per framework e.g design-system-react, design-system-angular etc and then integrate it with the Git Modules feature.
The directory structure would look something like:
├── LICENSE
├── README.md
├── package.json
├── scripts/
└── packages
├── angular // Angular framework, separate repo
│  ├── buttons
│  │  └── package.json
│  ├── link-list
│  │  └── package.json
│  └── package.json
├── react // React framework, separate mono repo
│  ├── buttons
│  │  └── package.json
│  ├── link-list
│  │  └── package.json
│  └── package.json
└── static // Static SASS, shared between frameworks
├── animate
│  └── package.json
├── body
│  └── package.json
├── core
│  └── package.json
└── package.json
^ This is a directory structure example with Angular, React and Static ( SASS ). Each framework would be a separate mono repo that shares the static (sass) framework. We can still maintain separate release and publish versions per framework.