Skip to content

team-fireworks/prvdmfireworks

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Roblox games have become increasingly complex, with sprawling mazes of dependencies, incomplete frameworks, and a challenging development experience.

No longer. Prvd 'M Wrong is a framework that leaves you with the fun stuff, delivering type-safe APIs and dependency resolution, along with comprehensive documentation, an ecosystem of packages, and unparalleled DX. Zero bloat, plugins, or lock-in required.

Get going in minutes with our on-rails tutorial.

Highlights

  • Type-safe APIs for both Luau and TypeScript
  • Featherlight (<6kb minified & gzipped), choose to mix in packages as you need
  • Uses dependency resolution for topological initialization
  • Made to be extendable through modding APIs
  • Non-intrusive first-class lifecycle events for flexibility
  • Pragmatic and sensible API that makes development fun

Code Sample

local prvd = require("pkg/prvdmwrong")
local CharacterProvider = require("./character-provider")

local CombatProvider = {}
type Self = typeof(CombatController)
CombatProvider.characterProvider = prvd.use(CharacterProvider)

function CombatProvider:onStart()
  print("Hello, Prvd 'M Wrong!")
end

function CombatProvider.performMove(self: Self, move: CombatMove)
  local character = self.characterProvider:awaitCharacter()
  -- do something with the character
end

return prvd(CombatProvider)
import { Provider, use } from "@prvdmwrong/core"
import { CharacterProvider } from "./character-provider"

@Provider()
export class CombatProvider {
  public characterProvider: use(CharacterProvider)

  public onStart() {
    print("Hello, Prvd 'M Wrong!")
  }

  public performMove(move: CombatMove) {
    const character = this.characterProvider.awaitCharacter()
    // do something with the character
  }
}

Releases

No releases published

Packages

No packages published

Languages

  • Luau 99.0%
  • JavaScript 1.0%