Skip to content

Conversation

@karrui
Copy link
Collaborator

@karrui karrui commented Nov 13, 2024

[RFC]
I am experimenting with moving Starter Kit to a monorepo; the thought process was that IaC can live in the same repository as the app code, and might as well move to monorepo to reap other monorepo benefits.

However, our IaC should realistically be kept private; so might not make sense for all all projects (especially the open-sourced ones). still, I’ve seen the DX improvements (shared config, proper dependency graphs) in my time in ActiveSG, DGS, and Isomer and might be good to have monorepos as a default moving forward.

still thinking about it, maybe if I make a CLI then users can choose between the two options. But prefer to have a singular option so maintenance is not a PITA.

What changed?

  1. Convert Starter Kit to a monorepo using turborepo, and move the app to apps/web.
  2. New tooling packages:
    • @starter-kit/eslint-config: Added configurations and plugins for ESLint, including rules for TypeScript, React, and Next.js.
    • @starter-kit/prettier-config: includes plugins for sorting imports and Tailwind CSS (if needed).
    • @starter-kit/tsconfig: shared typescript configs for consistency.

How to test?

  1. Clone the repository.
  2. Run npm install to install the new dependencies and set up the workspaces.

Why make this change?

To streamline the development process by providing a consistent tsconfig, linting and formatting experience across the codebase. This will help in maintaining code quality and reducing the overhead of manually configuring these tools for each package.

@vercel
Copy link

vercel bot commented Nov 13, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
starter-kit ❌ Failed (Inspect) Nov 13, 2024 7:41am

Copy link
Collaborator Author

karrui commented Nov 13, 2024

This stack of pull requests is managed by Graphite. Learn more about stacking.

@karrui karrui changed the title feat: init turbo, move starter kit into apps/web feat: convert to monorepo, move starter kit into apps/web Nov 13, 2024
@karrui karrui changed the title feat: convert to monorepo, move starter kit into apps/web [RFC] feat: convert to monorepo, move starter kit into apps/web Nov 13, 2024
@karrui karrui changed the title [RFC] feat: convert to monorepo, move starter kit into apps/web [RFC] feat: convert to monorepo, move starter kit into apps/web, add tooling packages Nov 13, 2024
@karrui karrui marked this pull request as ready for review November 13, 2024 07:49
@karrui
Copy link
Collaborator Author

karrui commented Dec 31, 2024

Closing; probably leave it to users themselves to convert their repo to a monorepo!

@karrui karrui closed this Dec 31, 2024
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

Successfully merging this pull request may close these issues.

1 participant