mirror of
https://github.com/mleem97/gregWiki.git
synced 2026-04-11 03:29:19 +02:00
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