This project is a sample repo that is intended to demonstrate how a mono repo can be created with multiple packages while preserving a consistent developer experience across packages.
- Provide separation of concerns through distinct
npm
packages. - Allow for source maps debugging across all packages.
- Support TypeScript tooling across packages (e.g. Go to definition, refactor, etc.)
- Shared configurations and setup to consolidate setup.
- Yarn Workspaces
- Centralize & optimize dependencies
- TypeScript Project References
- Better experience for monorepo style projects
- TypeScript Path Mapping
- Type aliases to simulate importing of npm packages for local packages
- TypeScript Incremental Builds
- Speed up builds
- Lerna
- Manage scripts & publishing for multiple modules.