mirror of
https://github.com/mleem97/gregWiki.git
synced 2026-04-10 19:19:18 +02:00
- Move markdown and wiki-import tree into docs/; keep app shell at repo root - Point docusaurus docs path to docs/; edit links to mleem97/gregWiki - Sync and i18n scripts use gregWiki root and ../.wiki under gregFramework - Sidebars: workspace layout from root docs ids; plugins under mods/extensions - Fix redirects, module catalog URLs, release note paths, and wiki-import category keys - Update repo inventory for split repos; Dockerfile for single-repo context Made-with: Cursor
2.5 KiB
2.5 KiB
id, title, sidebar_label, description
| id | title | sidebar_label | description |
|---|---|---|---|
| monorepo-target-layout | Monorepo target layout and migration phases | Monorepo target layout | Planned top-level structure and phased migration without a single big-bang refactor. |
Monorepo target layout and migration phases
The repository stays one Git repo. The goal is clear boundaries between framework, mods, plugins, templates, docs, and tooling so users, modders, and contributors can navigate predictably.
Target topology (directional)
| Top-level | Purpose |
|---|---|
framework/ |
Core MelonLoader framework (framework/FrikaMF.csproj, framework/FrikaMF/, entry Main.cs) |
mods/ |
Gameplay mods (FMF.Mod.*, FMF.*.dll style) |
plugins/ |
FFM plugins (FFM.Plugin.*) |
Templates/ |
Scaffolds for new mods/plugins |
wiki/ |
Docusaurus site (product docs; route base /wiki) |
tools/ |
Repo maintenance: hook catalog generator, codegen stubs |
scripts/ |
Release automation (existing) |
Binaries: prefer GitHub Releases (and pre-releases for beta) over committing DLLs. See Release channels.
Phased migration (no big-bang)
flowchart LR
p1[Phase1_DocsAndTools]
p2[Phase2_MoveModsPlugins]
p3[Phase3_FrameworkExtract]
p4[Phase4_CIRedirects]
p1 --> p2 --> p3 --> p4
| Phase | Scope | Exit criteria |
|---|---|---|
| 1 | Docs, tools/, naming wiki, hook catalog script |
Docusaurus build green; script generates catalog |
| 2 | git mv former ModsAndPlugins/ → mods/ / plugins/ |
Done — .csproj relative paths unchanged (depth preserved); CI/docs updated |
| 3 | Framework sources under framework/ |
Done — FrikaMF.sln points at framework\framework/FrikaMF.csproj; plugins reference ..\..\framework\framework/FrikaMF.csproj |
| 4 | CI matrix: docs + dotnet; plugin-client-redirects for old URLs |
PR checks match local workflow |
Path updates checklist (Phase 2 applied)
FrikaMF.slnproject paths (plugins\FFM.Plugin.*).github/workflows(CodeQL, release assets, Discord feed)- Contributor docs and mod/plugin wiki pages (
Project Pathlines) wiki/docusaurus.config.jsredirects (only if public URLs must map old paths)- Historical wiki-import pages may still mention
StandaloneMods/— update when editing those files