Skip to content

[init] optimize for libraries - #1

Merged
capcom6 merged 1 commit into
masterfrom
init/optimize-for-libraries
Jan 23, 2026
Merged

[init] optimize for libraries#1
capcom6 merged 1 commit into
masterfrom
init/optimize-for-libraries

Conversation

@capcom6

@capcom6 capcom6 commented Jan 23, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Chores
    • Removed example modules and associated infrastructure code
    • Disabled benchmark automation
    • Removed Docker build and deployment configuration
    • Removed release and pull request automation workflows
    • Removed Swagger documentation generation
    • Restructured and simplified module dependencies

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai

coderabbitai Bot commented Jan 23, 2026

Copy link
Copy Markdown

Walkthrough

The project undergoes major structural reorganization: removal of example code, demo modules, CI/CD workflows, containerization setup, and build tooling; refactoring of dependencies; module path rename from github.com/capcom6/go-project-template to github.com/go-core-fx/template; and introduction of a new root-level module.go with FX integration point.

Changes

Cohort / File(s) Summary
GitHub Actions Workflows
.github/workflows/go.yml, .github/workflows/pr-labels.yml, .github/workflows/pr.yml, .github/workflows/release.yml
Disabled benchmark job in go.yml; deleted pr-labels.yml (label stripping automation), pr.yml (PR CI/CD with GoReleaser, S3 upload, Docker publishing), and release.yml (tag-based release workflow). Removes all automated release and PR-comment artifact reporting.
Build & Release Configuration
.goreleaser.yaml, Dockerfile.goreleaser, docker.mk, swagger.mk
Removed entire GoReleaser config (builds, archives, Docker images, changelog); deleted multi-stage Alpine Dockerfile; deleted Docker Makefile targets (docker-build, docker-up, docker-down, docker-logs, docker-clean); deleted Swagger documentation generation target.
Development Configuration
.air.toml
Removed entire Air configuration including build commands, file filtering, polling, and UI preferences.
Dependency Management
go.mod
Renamed module from github.com/capcom6/go-project-template to github.com/go-core-fx/template; removed github.com/go-core-fx/config, github.com/go-core-fx/fiberfx, and direct go.uber.org/zap dependencies; reorganized and trimmed indirect dependencies.
Application Entry Point & Setup
main.go, internal/app.go
Deleted main entry point (main.gointernal.Run()) and app bootstrapping logic (internal/app.go → FX app construction with core/app/business modules and lifecycle hooks).
Configuration Module
internal/config/config.go, internal/config/module.go
Removed entire config package: deleted config loader (Config, Default(), New()), YAML-based environment loading, and FX module wiring; eliminates dependency on github.com/go-core-fx/config.
Example/Demo Module
internal/example/config.go, internal/example/doc.go, internal/example/domain.go, internal/example/errors.go, internal/example/metrics.go, internal/example/models.go, internal/example/module.go, internal/example/repository.go, internal/example/service.go
Deleted entire example module including documentation, domain model (Example), error definitions (ErrExample), Prometheus metrics (Metrics, NewMetrics(), IncTotal()), data models, FX wiring, repository pattern (Repository, Add()), and service layer.
Server Module
internal/server/module.go
Removed server FX module setup including named logger configuration and fiberfx.Options provision with JSON error handler and metrics enablement.
New Root Module
module.go
Added new root-level FX module with ModuleName constant ("template") and Module() function providing named logger integration; serves as placeholder with commented dependency provider.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title '[init] optimize for libraries' accurately describes the main objective of this PR, which comprehensively removes application-specific code (app.go, config, example module, Docker/release automation) and replaces it with a minimal template module suitable for library development.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@capcom6
capcom6 force-pushed the init/optimize-for-libraries branch from 79ec5ad to c6d26b7 Compare January 23, 2026 02:35
@capcom6
capcom6 merged commit abac855 into master Jan 23, 2026
5 checks passed
@capcom6
capcom6 deleted the init/optimize-for-libraries branch January 23, 2026 02:42
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