chore(workspace): flat gregFramework layout (gregFramework/{repo}/) and path/doc updates

Made-with: Cursor
This commit is contained in:
Marvin
2026-04-10 01:52:35 +02:00
parent 0bad959708
commit 28a75eeb1c
23 changed files with 233 additions and 166 deletions

View File

@@ -3,6 +3,8 @@ export type ModuleType = 'plugin' | 'mod';
export type ModuleEntry = {
id: string;
name: string;
/** Folder under gregFramework/ (split repo), e.g. gregExt.AssetExporter */
repoFolder: string | null;
type: ModuleType;
description: string;
version: string;
@@ -19,6 +21,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'ffm-plugin-asset-exporter',
name: 'FFM.Plugin.AssetExporter',
repoFolder: 'gregExt.AssetExporter',
type: 'plugin',
description: 'Export-focused asset tooling for Data Center workflows.',
version: 'NotReleasedYet',
@@ -33,6 +36,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'ffm-plugin-multiplayer',
name: 'FFM.Plugin.Multiplayer',
repoFolder: 'gregExt.Multiplayer',
type: 'plugin',
description: 'Multiplayer-oriented plugin surface for gregFramework ecosystems.',
version: 'NotReleasedYet',
@@ -47,6 +51,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'ffm-plugin-player-models',
name: 'FFM.Plugin.PlayerModels',
repoFolder: 'gregExt.PlayerModels',
type: 'plugin',
description: 'Player model extension plugin for runtime and presentation logic.',
version: 'NotReleasedYet',
@@ -75,6 +80,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'ffm-plugin-web-ui-bridge',
name: 'FFM.Plugin.WebUIBridge',
repoFolder: 'gregExt.WebUIBridge',
type: 'plugin',
description: 'Bridge plugin between game runtime data and web UI overlays.',
version: 'NotReleasedYet',
@@ -89,6 +95,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-modpathredirector',
name: 'FMF.ModPathRedirector',
repoFolder: 'gregMod.PathRedirector',
type: 'plugin',
description: 'MelonLoader plugin: waits for each subscribed Workshop item (Steam + StreamingAssets/Mods/workshop_*) before MelonMods load.',
version: '1.5.0',
@@ -103,6 +110,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-console-input-guard',
name: 'FMF.ConsoleInputGuard',
repoFolder: 'gregMod.ConsoleInputGuard',
type: 'mod',
description: 'Console interaction guardrails for safer gameplay input handling.',
version: 'NotReleasedYet',
@@ -117,6 +125,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-gregify-employees',
name: 'FMF.GregifyEmployees',
repoFolder: 'gregMod.GregifyEmployees',
type: 'mod',
description: 'Gameplay mod for employee theming and behavior customization.',
version: 'NotReleasedYet',
@@ -131,6 +140,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-hex-label-mod',
name: 'FMF.HexLabelMod',
repoFolder: 'gregMod.HexLabelMod',
type: 'mod',
description: 'In-world hex color labels for cable spinners and racks.',
version: 'NotReleasedYet',
@@ -145,6 +155,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-lang-compat-bridge',
name: 'FMF.LangCompatBridge',
repoFolder: 'gregMod.LangCompatBridge',
type: 'mod',
description: 'Localization compatibility bridge for mixed mod stacks.',
version: 'NotReleasedYet',
@@ -159,6 +170,7 @@ export const moduleCatalog: ModuleEntry[] = [
{
id: 'fmf-ui-replacement-mod',
name: 'FMF.UIReplacementMod',
repoFolder: null,
type: 'mod',
description: 'Replaces and modernizes selected in-game UI layers.',
version: 'NotReleasedYet',

View File

@@ -9,6 +9,8 @@ export type ModsPageStrings = {
release: string;
download: string;
notReleased: string;
repoFolder: string;
legacyNoSplitRepo: string;
};
const byLocale: Record<LocaleKey, ModsPageStrings> = {
@@ -22,6 +24,8 @@ const byLocale: Record<LocaleKey, ModsPageStrings> = {
release: 'Release',
download: 'Download DLL',
notReleased: 'Not released yet',
repoFolder: 'gregFramework folder',
legacyNoSplitRepo: 'Legacy — no split repo in workspace',
},
de: {
title: 'Mods- & Plugin-Katalog',
@@ -33,6 +37,8 @@ const byLocale: Record<LocaleKey, ModsPageStrings> = {
release: 'Release',
download: 'DLL laden',
notReleased: 'Noch nicht veröffentlicht',
repoFolder: 'Ordner unter gregFramework',
legacyNoSplitRepo: 'Legacy — kein Split-Repo im Workspace',
},
};

View File

@@ -52,6 +52,12 @@ export default function ModsCatalogPage(): JSX.Element {
</h3>
<p className="mb-4 text-sm text-on-surface-variant">{entry.description}</p>
<p className="mb-1 text-xs text-on-surface-variant">Version: {entry.version}</p>
<p className="mb-1 text-xs text-on-surface-variant">
{m.repoFolder}:{' '}
<span className="font-mono text-on-surface">
{entry.repoFolder ?? m.legacyNoSplitRepo}
</span>
</p>
<p className="mb-4 text-xs text-on-surface-variant">
Languages: {entry.languages.join(', ')}
</p>
@@ -98,6 +104,12 @@ export default function ModsCatalogPage(): JSX.Element {
</h3>
<p className="mb-4 text-sm text-on-surface-variant">{entry.description}</p>
<p className="mb-1 text-xs text-on-surface-variant">Version: {entry.version}</p>
<p className="mb-1 text-xs text-on-surface-variant">
{m.repoFolder}:{' '}
<span className="font-mono text-on-surface">
{entry.repoFolder ?? m.legacyNoSplitRepo}
</span>
</p>
<p className="mb-4 text-xs text-on-surface-variant">
Dependencies: {entry.dependencies.join(', ')}
</p>