A modular Velocity feature runtime with a reload-safe, dependency-free integration API.
- Place
ProxyFeatures.jarin your Velocityplugins/directory. - Install dependencies:
dataregistryanddataprovider. - Start the proxy once to generate defaults.
- Enable the features you want in
config.yml. - Restart and go live.
- Java 25
- Velocity
4.1.0-SNAPSHOT - DataRegistry
1.13.4for DataRegistry-backed features - DataProvider
3.1.8for persistent features
Add GitHub Packages credentials for Maven server id github in ~/.m2/settings.xml:
<settings>
<servers>
<server>
<id>github</id>
<username>YOUR_GITHUB_USERNAME</username>
<password>YOUR_TOKEN</password>
</server>
</servers>
</settings>Use a token with read:packages (and repo if the package source repositories are private), then run:
./mvnw -B -ntp verifyOutput jar: proxyfeatures-platform-velocity/target/ProxyFeatures.jar
Run the real Velocity acceptance gate (Docker required) with:
./mvnw -B -ntp -Pplatform-acceptance verifyIt boots the packaged ProxyFeatures jar with the bundled DataProvider and DataRegistry releases, then checks their
public runtime integration and clean shutdown. Set PLATFORM_ACCEPTANCE_KEEP_WORK_DIRECTORY=true to retain logs.
proxyfeatures-api: dependency-free root API, capability contracts, immutable DTOs, feature catalog, and extensions.proxyfeatures-toolkit: shared runtime implementation support for config, cache, localization, HTTP, and text.proxyfeatures-contracts: seven cross-platform wire-message contracts shared with ServerFeatures.proxyfeatures: the installable Velocity plugin, packaged asProxyFeatures.jar.
The testkit is reactor-internal and is not part of the supported production API. Maven consumers should depend on the
smallest public artifact they need, with provided scope when the Velocity plugin supplies it at runtime.
<dependency>
<groupId>nl.hauntedmc.proxyfeatures</groupId>
<artifactId>proxyfeatures-api</artifactId>
<version>3.3.0</version>
<scope>provided</scope>
</dependency>proxyfeatures-api: public, reusable integration surface.proxyfeatures-toolkit: reusable implementation support used by the Velocity runtime.proxyfeatures-contracts: cross-platform wire messages only.proxyfeatures-testkit: common test infrastructure.proxyfeatures-platform-velocity: feature framework, feature implementations, and distributable jar.proxyfeatures-platform-acceptance: API-only consumer and real Velocity boot gate.