Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork4k
refactor: migrate from ERB to TurboRepo monorepo structure#3705
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:main
Are you sure you want to change the base?
Conversation
Remove legacy Electron React Boilerplate (ERB) configuration files,webpack configs, build scripts, and assets to prepare for monorepomigration to TurboRepo structure.- Remove .erb/ configuration directory and webpack configs- Remove old assets/ directory with icons and images- Remove legacy src/ directory structure- Remove package-lock.json files from old structure🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
Transform package.json from ERB single-app configuration toTurboRepo monorepo with pnpm workspace support.- Add TurboRepo and workspace configuration- Update scripts for monorepo development workflow- Configure build and development commands for multiple apps- Set up proper dependency management for workspace packages🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
Implement complete monorepo architecture with TurboRepo and pnpm workspaces:- Add apps/ directory with desktop, dashboard, and github-notes applications- Add services/ directory with api and github-service backend services- Add packages/ directory for shared libraries and components- Add gutenberg/ documentation site with Docusaurus- Configure pnpm workspace with workspace.yaml- Add TurboRepo configuration with turbo.json- Include proper dependency management with pnpm-lock.yaml🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
Update gitignore patterns to support TurboRepo monorepo with multipleapplications and services:- Add TurboRepo cache directory (.turbo/)- Add pnpm and workspace-specific patterns- Add Next.js and Node.js build artifacts- Add Electron build directories and output files- Add IDE and editor configuration patterns- Remove ERB-specific patterns🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
Add comprehensive development documentation and AI code editor configuration:- Add CLAUDE.md with project structure and development workflow- Add .claude/ directory with project-specific configurations- Add ai-code-editors-files/ with development rules and guidelines- Include TypeScript, Python, and architecture guidelines- Add command templates for common development tasks🤖 Generated with [Claude Code](https://claude.ai/code)Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Pull Request Overview
Complete migration from an Electron React Boilerplate to a TurboRepo-based monorepo with pnpm workspaces, reorganizing applications, services, and shared packages.
- Removed legacy ERB boilerplate and app entry point.
- Added
turbo.json
andpnpm-workspace.yaml
to orchestrate builds, dev, lint, test, and clean across workspaces. - Introduced new services (
api
,github-service
) and shared UI/utility packages underpackages/ui
, along with monorepo apps inapps/
.
Reviewed Changes
Copilot reviewed 166 out of 244 changed files in this pull request and generated 3 comments.
Show a summary per file
File | Description |
---|---|
turbo.json | Defines TurboRepo tasks for build, dev, lint, start |
pnpm-workspace.yaml | Lists workspace packages and onlyBuiltDependencies |
src/renderer/App.tsx | Removed legacy Electron React Boilerplate UI |
services/github-service/* | New Hono-based GitHub integration service |
services/api/* | API client package with shared-logic import |
packages/ui/* | Shared UI components, hooks, and utilities |
Files not reviewed (1)
- release/app/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)
services/github-service/package.json:4
- [nitpick] Only a
dev
script is defined here. For consistency and clarity in production workflows, consider addingbuild
andstart
scripts to document how to package and launch the service.
"dev": "bun run --hot src/index.ts"
@@ -0,0 +1,9 @@ | |||
import { Hono } from 'hono' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
The service defines a Hono app but never starts listening on any port. Add anapp.listen(PORT)
call or export a handler that your runtime can invoke for requests.
Copilot uses AI. Check for mistakes.
"dependsOn": ["^build"] | ||
}, | ||
"lint:fix": { | ||
"dependsOn": ["^build"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
[nitpick] Thelint
andlint:fix
tasks depend onbuild
, which forces a full build before linting. Consider removing that dependency so linting runs independently and faster.
"dependsOn": ["^build"] | |
}, | |
"lint:fix": { | |
"dependsOn": ["^build"] | |
}, | |
"lint:fix": { |
Copilot uses AI. Check for mistakes.
@@ -0,0 +1,726 @@ | |||
"use client" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
[nitpick] This Sidebar component file is over 700 lines long, making it difficult to navigate. Consider splitting it into smaller subcomponents or modules for improved readability and maintainability.
Copilot uses AI. Check for mistakes.
Summary
Complete architectural transformation from Electron React Boilerplate (ERB) to a modern TurboRepo monorepo structure with pnpm workspaces.
Architecture Changes
New Structure
Key Features
pnpm dev
Test Plan
pnpm install
pnpm dev
pnpm build
pnpm desktop:package
🤖 Generated withClaude Code