Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design & Document Monorepo Organization #624

Open
ygrishajev opened this issue Jan 9, 2025 · 0 comments
Open

Design & Document Monorepo Organization #624

ygrishajev opened this issue Jan 9, 2025 · 0 comments

Comments

@ygrishajev
Copy link
Contributor

Develop a standardized approach for structuring and maintaining a monorepo that hosts multiple packages or applications. This should include clear guidelines on project layout, build and deployment pipelines, shared dependencies, and internal tooling. The objective is to ensure seamless collaboration, improved maintainability, and efficient development workflows across all components in the monorepo.

Key Deliverables:

  1. Repo Structure & Naming Conventions
    • Define a high-level folder structure for each package or app within the monorepo.
    • Set naming guidelines for shared libraries, modules, and config files.
  2. Dependencies & Tooling
    • Recommend or mandate common tools (e.g., linters, testing libraries, build tools).
    • Outline strategies for versioning, using shared dependencies, and handling conflicts.
  3. Build & Deployment Pipelines
    • Document scripts or commands for building, testing, and deploying all projects in a unified manner.
    • Provide CI/CD guidelines that accommodate parallel or incremental builds.
  4. Testing & Quality Standards
    • Specify testing frameworks, coverage requirements, and QA processes for each package/app.
    • Enforce consistent linting, formatting, and code quality checks.
  5. Documentation & Contribution Guidelines
    • Offer instructions for onboarding and contributing to various parts of the monorepo.
    • Include a template README or standard docs structure for each package/app.

Acceptance Criteria:

  • A comprehensive document or wiki page with actionable guidelines for organizing and maintaining the monorepo.
  • Example workflows or scripts demonstrating best practices (e.g., yarn workspaces, Nx, Lerna, etc.).
  • Clear instructions on how to migrate existing projects to this structure with minimal disruption.
@ygrishajev ygrishajev added this to the Project Convergence milestone Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant