riptide/core

A lightweight and professional framework for Roblox.

    ____  _       __  _     __   
   / __ \(_)___  / /_(_)___/ /__ 
  / /_/ / / __ \/ __/ / __  / _ \
 / _, _/ / /_/ / /_/ / /_/ /  __/
/_/ |_/_/ .___/\__/_/\__,_/\___/ 
       /_/                       

Luau Roblox Pesde License CI

A lightweight, strictly-typed, and modular framework for Roblox.

Read the Documentation ๐Ÿ“š โ€ข Releases

๐ŸŒŠ Why Riptide?

Riptide was built from the ground up for production Roblox games. It solves the most common architecture problems while remaining invisible, staying out of your way, and scaling elegantly.

  • Deterministic Lifecycle: Phased initialization (Init โ†’ Start) eliminates race conditions.
  • Dependency Injection: Ditch circular require() chains. Inject your dependencies safely using canonical paths.
  • Unified Networking: One single RemoteEvent and RemoteFunction handle your entire game's network traffic. Zero ReplicatedStorage clutter. Let Riptide multiplex everything.
  • Strictly Typed: 100% --!strict Luau. Enjoy flawless autocomplete and compile-time safety right out of the box.
  • Built-in Power: Comes fully loaded with a robust StateMachine, ComponentService, and StateReplication.

๐Ÿ“ฆ Installation

Riptide is distributed via Pesde. Install it directly into your project using the Pesde CLI:

pesde add riptide/core

๐Ÿ Quick Look

Write clean, modular code with predictable execution phases.

--!strict
local RiptidePkg = require(ReplicatedStorage.Packages.Riptide)
type Riptide = RiptidePkg.Riptide

local PlayerState = {}

function PlayerState:Init(Riptide: Riptide)
    self.DataService = Riptide.GetService("DataService")
    
    Riptide.Network.Register("PlayerJumped", function(player, height)
        print(player.Name .. " jumped " .. height .. " studs!")
    end)
end

function PlayerState:Start(Riptide: Riptide)
    self.DataService:GiveMoney(100)
end

return PlayerState

๐Ÿ“š Documentation

For complete setup guides, API reference, and examples, visit our official documentation site:

๐Ÿ‘‰ Go to Riptide Documentation

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.