Files
gregWiki/docs/contributors/monorepo-target-layout.md
Marvin fcac837bd9 docs: update references from FrikaMF to gregCore throughout documentation
Revised multiple documentation files to replace instances of "FrikaMF" with "gregCore," reflecting the updated naming conventions and project structure. This change enhances consistency and clarity across the documentation, ensuring that users and contributors have accurate information regarding the framework and its components.
2026-04-10 18:28:55 +02:00

2.6 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
gregCore/framework/ Core MelonLoader framework (gregCore/framework/gregCore.csproj, Sdk/, ModLoader/, entry framework/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 — gregCore.sln points at framework\framework/gregCore.csproj; plugins reference ..\..\framework\framework/gregCore.csproj
4 CI matrix: docs + dotnet; plugin-client-redirects for old URLs PR checks match local workflow

Path updates checklist (Phase 2 applied)

  • gregCore.sln project paths (plugins\FFM.Plugin.*)
  • .github/workflows (CodeQL, release assets, Discord feed)
  • Contributor docs and mod/plugin wiki pages (Project Path lines)
  • wiki/docusaurus.config.js redirects (only if public URLs must map old paths)
  • Historical wiki-import pages may still mention StandaloneMods/ — update when editing those files