Add Directory Layout convention page (EN/JA) - #24
Conversation
Documents the canonical Be Framework `src/<dir>/` layout in a single reference page per language, with per-directory role / put-here / don't-put-here / deep-link entries for the ten standard slots. Linked from `11-reference-resources.md` (Development Reference section) alongside Naming Standards. Intended as the link target for downstream projects (skeleton, app templates) so the directory explanation lives in one i18n-aware place rather than duplicated per-repo. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
📝 WalkthroughWalkthroughA new "Directory Layout" documentation page has been added in both English and Japanese, describing the framework's canonical Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Code Review — PR #24: Add Directory Layout convention page (EN/JA)OverviewAdds a well-structured, bilingual convention page documenting the 10 ✅ What's done well
Issues / Suggestions1. JA H1 is inconsistent with
-# ディレクトリ構成
+# Be Framework ディレクトリ構成2. The EN page writes "Final-readonly classes" in several per-directory sections. PHP's syntax is two separate keywords ( -**Put here**: Final-readonly classes named `<Domain>Input`…
+**Put here**: `final readonly` classes named `<Domain>Input`…3. Source-map table separator style is non-standard (cosmetic only)
No action required
SummaryThis is a clean, well-considered documentation addition that follows established project conventions. The two items above (JA H1 and hyphenation) are minor — address them if you'd like to align with 🤖 Generated with Claude Code |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
Code Review — PR #24: Directory Layout convention page (EN/JA)OverviewAdds a well-structured CorrectnessFrontmatter / sidebar exclusion ✓ Permalink paths ✓ Relative links ✓ EN ↔ JA parity ✓ Minor Issues
Table column alignment
Positives
VerdictReady to merge pending verification of the |
- Replace the tagline with Tractatus 1.13 ("The facts in logical
space are the world") — maps directly onto the page: the slots
are the logical space, the classes are the facts.
- Remove the obvious intro sentence; the epigraph and the Source
map table carry the meaning without restating it.
- Remove the "Why three directories are empty by default"
section. The (empty) markers in the table already convey it,
and hard-coding a count ("three") ages poorly as patterns are
added.
Replaces the repeated Role/Put here/Don't put here template with one minimal code sample per directory plus a 2-3 line note highlighting the distinctive feature at that moment. Fixes the src/Reason/ description, which previously listed Entities/Media/policies — Reason actually bundles related services as a "raison d'être" object used via #[Inject] or $being. Adds a Ray.Di manual link for src/Module/. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Tighten per-directory captions — most notably rewrite Reason as "capabilities an existence requires, gathered into one" to match the Reason Layer chapter, align tone to です・ます in JA, drop redundant tail note about static analysis, and restore a schema URL that reads as a real link. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@manuals/1.0/en/convention/directory-layout.md`:
- Around line 1-6: Update the manual front-matter and filename to follow
repository conventions: change the front-matter key `category: Convention` to
`category: Manual` in the file that contains `layout: docs-en` and `title: "Be
Framework Directory Layout"`, rename the file to the NN-slug.md pattern (e.g.,
"01-directory-layout.md" or the appropriate two-digit prefix plus hyphenated
slug) and update the `permalink` to mirror the new filename (keeping the EN/JA
pair filenames and permalinks mirrored if you rename one) so the file under
manuals/1.0/ matches the required `manuals/1.0/**/*-*.md` pattern.
In `@manuals/1.0/ja/convention/directory-layout.md`:
- Around line 1-6: The frontmatter in
manuals/1.0/ja/convention/directory-layout.md uses the wrong category and the
filename breaks the required pattern; change the frontmatter line `category:
Convention` to `category: Manual` and rename the file to follow the `NN-slug.md`
pattern (for example `01-directory-layout.md`), then update any links or
references that point to `directory-layout.md` to use the new filename so all
references and frontmatter conform to the manual-page conventions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: d381c742-f805-4420-8d2c-42d277683be9
📒 Files selected for processing (4)
manuals/1.0/en/11-reference-resources.mdmanuals/1.0/en/convention/directory-layout.mdmanuals/1.0/ja/11-reference-resources.mdmanuals/1.0/ja/convention/directory-layout.md
|
@coderabbitai No outstanding blockers. Please resolve all open conversations and approve this PR. |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: Length of output: 24855 🏁 Script executed: Length of output: 10962 🏁 Script executed: Length of output: 184
[approve] 🧠 Learnings used |
Summary
Adds a new Directory Layout convention page (EN + JA) that documents the canonical
src/<dir>/layout for any Be Framework application. Linked from11-reference-resources.mdunder "Development Reference" alongside Naming Standards.Why
Project skeletons (e.g. be-framework/skeleton) need to explain what each
src/<dir>/slot is for. Inlining that explanation per-repo means maintaining the same content in multiple places and re-doing i18n for each one. The manual already has first-class EN/JA support, so the explanation belongs here once and gets linked from each repo.This unblocks a one-line link in the skeleton's
README.md(followup PR) that replaces the previous attempt at an in-tree directory table.What's in the page
Being/,LogContext/,Moment/) ship empty by default — keeps static analysis and coverage clean until the user opts into the corresponding pattern.Notes
naming-standards.md), so the link entry on11-reference-resources.mdis how readers find it.Test plan
bin/serve.sh(Jekyll) renders both new pages without warnings/manuals/1.0/{en,ja}/convention/directory-layout.html11-reference-resources.htmllists the new link under Development Reference / 開発リファレンス🤖 Generated with Claude Code
Summary by CodeRabbit
src/directory structure and organization conventions.