{"id":"fordtoxic/dev-explorer","name":"dev-explorer","scope":"fordtoxic","platform":"roblox","description":"Runtime Explorer and Properties for Roblox experiences, by Triaal.","version":"1.0.1","latest":"1.0.1","versions":["1.0.0","1.0.1"],"license":"MIT","licenseRating":"safe","licenseCaveats":[],"licenseVerified":true,"dependencies":{},"integrity":"c42120efa6f00d2d5ecf7c9d47cbbffe8ef41b9c333f60f6145dbd85e83a4e9b","likes":0,"downloads":0,"install":"forest install fordtoxic/dev-explorer","url":"https://forest.dev/p/roblox/fordtoxic/dev-explorer","files":"https://api.forest.dev/ai/package/roblox/fordtoxic/dev-explorer/files","readme":"# DevExplorer\n\nRuntime Explorer and Properties for Roblox experiences, by Triaal.\nExtracted from the supplied `DevExplorer.rbxm`, version `1.0.0`.\n\n## Contents\n\n- `src/`: the extracted modules, with separate client and server APIs exported by the root.\n- `default.project.json`: builds the root ModuleScript and its children.\n- `wally.toml`: package metadata, using `fordtoxic/dev-explorer@1.0.1`.\n  The namespace follows the neighboring Wally project; change it if needed.\n- `SECURITY_REVIEW.md`: findings and limitations of the static review.\n- `audit/`: extraction inventory, source hashes, and upstream comparison evidence.\n- `tools/extract_model.py`: static extractor; does not execute model code.\n\nThe Roblox `PackageLink` is excluded. Its `AutoUpdate` setting was enabled in\nthe model; Wally should distribute the fixed extracted source. Empty attributes,\nempty tags, script GUIDs, source asset IDs, and Studio-only metadata are not\ncarried into the source package. The original client entry point now lives in\n`Client.luau`; `init.luau` returns a table with `server` and `client` modules.\n\n## Build and package\n\nFrom this folder, with the pinned tools available:\n\n```powershell\nNew-Item -ItemType Directory -Force build\nrojo build default.project.json --output build/DevExplorer.rbxm\nwally package --output build/dev-explorer-1.0.1.zip\n```\n\nThe package includes source, documentation, and license notices. Audit downloads,\nbuild products, and extraction tools are excluded. No external Wally dependencies\nare needed.\n\n## Use\n\nAdd this dependency to your game's `wally.toml`:\n\n```toml\n[dependencies]\nDevExplorer = \"fordtoxic/dev-explorer@1.0.1\"\n```\n\nThe package root returns `{ server = ServerModule, client = ClientModule }`:\n\nRunService checks load and expose only the module for the current side: `server`\non the server, `client` on the client.\n\n```lua\n-- LocalScript, with Packages synced under ReplicatedStorage\nlocal Packages = game:GetService(\"ReplicatedStorage\"):WaitForChild(\"Packages\")\nlocal DevExplorer = require(Packages.DevExplorer)\nDevExplorer.client:Start({ Permissions = \"Server\" })\n```\n\nStart the server API from a server Script using the same package require:\n\n```lua\nlocal Packages = game:GetService(\"ReplicatedStorage\"):WaitForChild(\"Packages\")\nlocal DevExplorer = require(Packages.DevExplorer)\n\nlocal TrustedUserIds = {\n    -- [YOUR_USER_ID] = true,\n}\n\nDevExplorer.server:Start({\n    Permissions = function(Player, Capability)\n        return TrustedUserIds[Player.UserId] == true and Capability ~= \"Execute\"\n    end,\n    CommandLine = false,\n})\n```\n\nThe standalone built model exposes the same `server` and `client` fields.\nF2 toggles the client UI by default.\n\nWithout a permission resolver, access defaults to Studio only. Keep `Edit`,\n`Admin`, and `Execute` limited to fully trusted developers. `CommandLine = true`\nplus an `Execute` grant enables arbitrary server code even when\n`LoadStringEnabled` is disabled, through the bundled compiler and interpreter.\n\n## Publish\n\nFor future releases, update the version in `wally.toml` and `src/Client.luau`,\nauthenticate with Wally, then run:\n\n```powershell\nwally publish\n```\n\nSee [Wally's documentation](https://github.com/UpliftGames/wally) for registry setup.\n","readmeTruncated":false}