sof package index
66 packages. Anyone can install; publishing needs a GitHub sign-in (sof run package login).
- sovvie/async 1.0.0Token-based async helpers: run, await, expect, timeout, delay, fromEvent, without method chaining.
- sovvie/b226 1.0.0Lightweight Luau entity-component system (ECS). Provides entity and component creation, set/get/add/remove operations, typed queries, and OnAdd/OnChange/OnRemove hook registration per component.
- sovvie/base 1.0.0Base encoding helpers for compact string serialization.
- sovvie/base93 1.0.0High-performance binary-to-text codec using a 93-character printable ASCII alphabet. Encodes 4 bytes into 5 characters with pre-baked pair lookup tables and 16-byte unrolled loops; supports padding for non-multiple-of-4 input lengths.
- sovvie/bezier 1.0.0N-point Bezier curve library using Bernstein polynomials. Supports Vector3 and BasePart control points, arc-length reparameterization, position and derivative queries (by t or arc-length), and Tween creation helpers for both Vector3 and CFrame paths.
- sovvie/boattween 1.0.0Tweening library with extra easing styles and step callbacks (TweenService2).
- sovvie/boxquery 1.0.0Spatial hash grid for fast AABB overlap queries. Items are stored in a buffer-backed flat array with CFrame/size bounds and hashed into grid cells; QueryBox returns all payloads whose AABBs overlap the query box with minimal allocations.
- sovvie/buckets 1.0.0Property-bucketing system for fast multi-property queries over arbitrary Luau objects. Objects are indexed into sub-buckets by property value; QueryFromBuckets intersects the smallest candidate bucket against additional filters. Supports dirty-marking for deferred batch updates.
- sovvie/bufferfsm 1.1.0Compact buffer-backed finite state machine storing the current state ID and entry timestamp in 5 bytes. Supports optional transition tables, GetState/GetDuration, SetState, and string-based Serialize/Deserialize for network transport.
- sovvie/butler 2.0.0Cleanup manager for tasks, connections, threads, Instances, and any table or datatype with Destroy or Disconnect (such as a Collection). One small table per Butler, no allocation on Add.
- sovvie/camerafitviewport 1.0.0ViewportFrame camera controller that computes the minimum-fit CFrame to fully contain a Model's point cloud within the viewport FOV. Supports configurable damping, fixed orientation, camera offset, and HumanoidRootPart-anchored framing for large rigs.
- sovvie/collection 1.0.2Live queries over Instances on CollectionService:CreateCollection, with a fallback backend: members join and leave as their tags, attributes, names, properties and parents change, and onAdded / on(event) / onAttribute callbacks and effect files are wired up and torn down with them. Handles on the same query share one Collection.
- sovvie/colortools 1.0.0Color3 utility module with OkLab color-space conversion and perceptual lerp, plus Darken, Lighten, Invert (hue-shift), Compare (epsilon equality), Map (range-to-hue), and MapSin (sine-based hue) helpers.
-
Compression algorithms for strings and buffers.
- sovvie/controls 1.0.2Alternative inputs for a GuiButton: keys, gamepad buttons and other GuiButtons that share its press, hover and activation, reported as a per-button state that sovvie/effects merges into the effective GuiState. Client-only bindings.
- sovvie/csgbuilder 1.0.0Builds meshes with CSG operations.
- sovvie/datasyncer 1.0.0Bidirectional delta-based table sync between server and clients. Registers tables on the server, diffs them to produce TableChanges, applies incoming deltas with optional filter callbacks, and provides view/await interfaces for both contexts along with key-change subscriptions.
- sovvie/deepdelta 1.0.0Deep diffs and patches between nested tables.
- sovvie/downsampler 1.0.0Downsamples images/EditableImages.
-
Caches EditableImage/EditableMesh assets so they're created once and shared.
- sovvie/effects 1.0.2States and actions for GuiObjects: onHoverEnter / onHoverLeave / onPressed / onReleased over the effective GuiState (GuiState, Selected, sovvie/controls inputs, overrides), as effect files for sovvie/collection.
- sovvie/emit 1.0.0Named-channel event bus with per-channel subscribe, once, wait, emit, and async request/response (resolved via andThen). Channels are lazily created on first index access; requests are dispatched deferred via Heartbeat.
- sovvie/lerps 1.0.0Type-aware interpolation library returning lerp closures for all common Roblox data types. Color3 uses perceptual CIELUV blending; strings support progressive reveal or clock-format HH:MM:SS wrapping. Covers CFrame, UDim/UDim2, Vector2/3, NumberSequence, ColorSequence, PhysicalProperties, Ray, Rect, and Region3.
- sovvie/linkedlist 1.0.0Sentinel-node doubly-linked list with O(1) insertions and removals, supporting PushFront/Back, InsertAfter/Before, Remove, FindRemove, PopFront/Back, forward and reverse iteration, and size tracking.
- sovvie/lodsystem 1.0.0Buffer-based LOD system that tracks registered 3D objects' squared distances from the camera at 10 Hz and fires an onChange callback when the LOD level transitions. Distance thresholds scale with the user's graphics quality setting (1–10).
- sovvie/lowlevel 1.0.0Low-level buffer and bit-manipulation toolkit. Provides auto-growing buffer read/write for u8/u16/u32/i8/i16/i32/f32/f64, VLQ encode/decode, dispatch tables, range and VLQ codec factories, fixed-string codecs, arithmetic/memory/bits sub-modules (popcount, parity, sign-extend, bounds checks, power-of-two helpers), orderedHash, memoize, id allocator, metadata store, template cloner, and aliasStdlib.
- sovvie/matrixtabletools 1.0.0Weighted combination matrix for tracking named-element co-occurrence counts. Supports adding/removing combos by weight, weighted random sampling (GetRandomCombo), total-weight querying, and listing all active combos. Useful for loot tables and weighted group selection.
- sovvie/meshbuilder 1.0.0Builds EditableMeshes from code.
- sovvie/meshemitter 1.0.0Particle emitter that emits meshes.
- sovvie/meshvoxeliser 1.0.0Voxelises meshes into grids.
Use it
[[dependencies]] path = "src/ReplicatedStorage/Packages" Router = "sovvie/router@^1.0.0"
Registry: https://sof.sov.gg