Merge Docusaurus site: all content under docs/, align with gregFramework split layout

- 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
This commit is contained in:
Marvin
2026-04-09 23:39:32 +02:00
parent 33636fde00
commit e2839584f4
320 changed files with 38803 additions and 97 deletions

View File

@@ -0,0 +1,99 @@
---
title: Contributors (Debug) EN
description: Framework contributor setup, hook workflow, conventions, CI behavior, and PR checklist.
sidebar_position: 140
tags:
- audience:contributor
---
## Contributors (Debug)
This page is for contributors working on FrikaMF itself.
For the complete and maintainable feature matrix with implementation use cases, see [`Framework Features & Use Cases`](/wiki/wiki-import/Framework-Features-Use-Cases).
## Dev setup
```powershell
dotnet build .\framework\framework/FrikaMF.csproj -c Debug -nologo
cargo build --release
```
Optional game path override:
```powershell
dotnet build .\framework\framework/FrikaMF.csproj /p:GameDir="C:\Path\To\Data Center"
```
## Add a new hook workflow
1. Find target in dnSpy/dotPeek.
2. Update `HOOKS.md`.
3. Add Harmony patch.
4. Add event id + dispatch wiring.
5. Add/update Rust ABI event handling if needed.
6. Test locally.
7. Open PR.
## Conventions
- Keep ABI structs blittable.
- Keep wrappers in framework, gameplay policy in mods.
- Use stable event names and explicit contracts.
## IL2CPP pitfalls
- `b###` compiler-generated members are unstable.
- Coroutine state-machine types (`d##`) are unstable.
- Prefer Postfix first unless behavior blocking is required.
## Lua/Python/Web FFI contributor notes
Current core status:
- Rust native FFI bridge: implemented.
- Built-in Lua runtime host: not implemented.
- Built-in Python runtime host: not implemented.
- Built-in generic HTTP/WebSocket FFI transport: not implemented.
Contribution guidance:
- Treat Lua/Python as sidecar integration work unless core runtime hosting is explicitly added.
- Keep Unity and IL2CPP access constrained to C#/Rust boundaries.
- If adding transport, define strict command schemas, authentication for non-local access, and rate limits.
## CI behavior
- CI runs without game installation.
- `$(CI)=true` skips local game reference validation.
- Local builds require MelonLoader-generated interop files.
## PR checklist
- [ ] `HOOKS.md` updated
- [ ] Build passes locally
- [ ] Docs updated
- [ ] Conventional Commits used
## Example pair
### 🦀 Rust
```rust
#[repr(C)]
pub struct MoneyChanged {
pub old_value: i32,
pub new_value: i32,
}
```
### 🔷 C\#
```csharp
[StructLayout(LayoutKind.Sequential)]
public struct MoneyChanged
{
public int OldValue;
public int NewValue;
}
```

View File

@@ -0,0 +1,9 @@
# Contribution Workflow EN
## Quick Flow
1. Create a branch.
2. Keep changes small and atomic.
3. Use Conventional Commits.
4. Update docs and links together.
5. Open a PR with a clear description.

View File

@@ -0,0 +1,3 @@
# Guides Index EN
- [Contribution Workflow EN](Contribution-Workflow)

View File

@@ -0,0 +1,3 @@
{
"key": "wiki-import-contributors-guides"
}

View File

@@ -0,0 +1,10 @@
# Contributors Index EN
Audience: contributors working on framework code and docs.
## Contents
- [Contribution Workflow EN](Guides/Contribution-Workflow)
- [Naming Convention EN](Reference/Naming-Convention)
- [Troubleshooting EN](Troubleshooting/overview)
- [AI Usage Policy](../AI-USAGE)

View File

@@ -0,0 +1,3 @@
# Reference Index EN
- [Naming Convention EN](Naming-Convention)

View File

@@ -0,0 +1,12 @@
# Naming Convention EN
## Unified Standard
- Folders: `PascalCase`
- Files: `Title-Case-Kebab.md`
- English mirror: `-en` suffix (`Page-Name-en.md`)
## Examples
- `EndUser/Guides/Framework-Dependency.md`
- `EndUser/Guides/Framework-Dependency-en.md`

View File

@@ -0,0 +1,3 @@
{
"key": "wiki-import-contributors-reference"
}

View File

@@ -0,0 +1,3 @@
# Troubleshooting Index EN
- [Troubleshooting EN](overview)

View File

@@ -0,0 +1,3 @@
{
"key": "wiki-import-contributors-troubleshooting"
}

View File

@@ -0,0 +1,12 @@
# Troubleshooting EN
## Common Contributor Issues
- Outdated links after restructuring
- Inconsistent file names
- Non-atomic commits
## Fix
- Always update sidebar and redirect pages together.
- Apply naming convention consistently.

View File

@@ -0,0 +1,5 @@
{
"label": "Contributors",
"position": 30,
"key": "wiki-import-root-contributors"
}