OneLiteFeatherNET / OneLiteFeatherNET/Voyager
feat(arch): extract shared/spline into its own Gradle module
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 0
- Forks
- 0
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 12
Description
Context
Spline math currently lives inside shared/common. ManisGame isolates domain-specific shared logic into dedicated submodules (e.g. shared/scare, shared/day). Spline calculation is a self-contained concern that does not belong in the general-purpose common module.
Goal
Move all spline-related classes (currently in net.elytrarace.spline.*) into a new :shared:spline Gradle module.
Acceptance Criteria
-
:shared:splinemodule exists insettings.gradle.kts -
shared/splinehas no Minestom or Paper imports - Only modules that need splines declare a dependency on
:shared:spline -
shared/commonno longer contains spline code - ADR written before any code moves
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with settings.gradle.kts and the existing shared modules, then locate net.elytrarace.spline.* under shared/common and inspect its imports and consumers. Write the required ADR before moving code. Done means :shared:spline exists, contains no Minestom or Paper imports, only required modules depend on it, and shared/common has no spline code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100