JSDex Developer Portal v1.0 — WideWeb Systems

Build for JSDex.
Ship to Everyone.

The official developer platform for JSDex OS. Build apps with the JSDex SDK, publish via jsdxpkg, and reach every JSDex user on wideweb.pages.dev.

JShkShell v3.0 — JSDex Developer Mode
user@jsdex:~$
5
SDK MODULES
jsdxpkg
PACKAGE MANAGER
APPS YOU CAN BUILD
Go! + Min
EDITIONS SUPPORTED

// 01 — QUICKSTART

Build your first
JSDex app in minutes.

Every JSDex app is a self-contained HTML file with a jsdex.manifest.json sidecar. No build tools required.

// STEP 01
Create your app file
Build your app as a standard HTML file. Use the JSDex SDK by including the CDN script tag.
<script src="jsdex://sdk/v1"></script>
// STEP 02
Write a manifest
Create jsdex.manifest.json next to your app file to register it with JSDex.
jsdxpkg init
// STEP 03
Test in JSDex
Open JSDex, launch the Terminal and run your app directly to test it before publishing.
jsdxpkg run ./myapp.html
// STEP 04
Publish to Store.js
Submit your app to the JSDex Store. All apps are reviewed by WideWeb before going live.
jsdxpkg publish

// 02 — APP MANIFEST

jsdex.manifest.json

Every JSDex app needs a manifest. This is how JSDex knows your app's name, icon, permissions, and which editions it supports.

// jsdex.manifest.json { "id": "com.yourname.myapp", "name": "MyApp", "version": "1.0.0", "icon": "🚀", "author": "Your Name", "description": "A short description", "entry": "index.html", "category": "utility", "editions": ["go", "minimal"], "permissions": [ "filesystem.read", "notifications" ], "minJSDex": "4.0.0", "price": "free", "store": true }
id
Unique reverse-domain identifier for your app. Must be globally unique.
● REQUIRED
editions
Which JSDex editions support this app. go has all apps, minimal has limited set.
● REQUIRED
permissions
Declare what SDK APIs your app uses. Users see these on install. Undeclared permissions are blocked.
● REQUIRED if using SDK
category
Store category: utility, media, productivity, games, developer
○ OPTIONAL
price
Pricing: free or a dollar amount like "2.99". Paid apps require a WideWeb developer account.
○ OPTIONAL — default: free

// 03 — SDK REFERENCE

JSDex SDK v1.0

The JSDex SDK gives your app access to OS-level features — filesystem, notifications, window management, and more. All calls go through the JSDex global object.

🗂️
JSDex.fs
Read and write to the JSDext virtual filesystem. Requires filesystem.read or filesystem.write permission.
JSDex.fs.read(path) → string
JSDex.fs.write(path, data)
JSDex.fs.list(path) → array
JSDex.fs.exists(path) → bool
🔔
JSDex.notify
Push toast notifications to the JSDex notification center. Requires notifications permission.
JSDex.notify(msg, type?)
JSDex.notify.push(title, body)
JSDex.notify.badge(count)
🪟
JSDex.window
Control your app's window — resize, minimize, focus, get dimensions. No extra permissions needed.
JSDex.window.resize(w, h)
JSDex.window.minimize()
JSDex.window.maximize()
JSDex.window.getSize() → {w,h}
👤
JSDex.user
Access current user info and WideWeb ID. Requires user.read permission.
JSDex.user.getName() → string
JSDex.user.getAvatar() → emoji
JSDex.user.isRoot() → bool
⚙️
JSDex.store
Persist app data across sessions. Each app gets its own isolated namespace. No permissions needed.
JSDex.store.get(key) → any
JSDex.store.set(key, value)
JSDex.store.clear()
🚀
JSDex.launch
Open other JSDex apps from your app. Useful for inter-app workflows. Requires launch permission.
JSDex.launch.open(appId)
JSDex.launch.installed() → array
JSDex.launch.isInstalled(id) → bool

// 04 — CODE PLAYGROUND

Try the SDK live.

Write a mini JSDex app right here. The preview shows exactly how it would look running inside a JSDex window.

index.html
manifest.json
EDITOR
PREVIEW — JSDex Window ● LIVE

// 05 — SUBMIT TO STORE.JS

Ship your app
to every JSDex user.

Submit your app for review. All apps are reviewed by WideWeb Systems before appearing in Store.js. Review takes 1–3 business days.

APP NAME
APP ID (reverse domain)
VERSION
CATEGORY
EDITIONS SUPPORTED
DESCRIPTION
DEVELOPER EMAIL
APP SOURCE URL
📋 Requirements
  • Must include a valid jsdex.manifest.json
  • All declared permissions must be necessary
  • App must work on the declared editions
  • No malicious code or data collection without consent
  • Must not impersonate WideWeb or JSDex system apps
  • Source code must be publicly accessible
⚡ Review Process
  • Automated manifest validation (instant)
  • WideWeb team code review (1–3 days)
  • Security scan for malicious patterns
  • Approval email sent to developer
  • App goes live in Store.js immediately
🏷️ App Categories
  • utility — tools, converters, calculators
  • productivity — notes, tasks, calendars
  • media — players, editors, viewers
  • games — any playable game
  • developer — code tools, debuggers

// 06 — jsdxpkg CLI

Package manager
& developer CLI.

jsdxpkg is the JSDex package manager. Run it from the JShkShell terminal inside any JSDex session.

// PACKAGE MANAGEMENT
jsdxpkg install <package> # install from Store.js
jsdxpkg remove <package> # uninstall a package
jsdxpkg list # list installed packages
jsdxpkg search <query> # search Store.js
jsdxpkg update <package> # update to latest version
// DEVELOPER TOOLS
jsdxpkg init # create jsdex.manifest.json
jsdxpkg validate # validate your manifest
jsdxpkg run <file.html> # run app in JSDex window
jsdxpkg publish # submit app to Store.js
jsdxpkg unpublish <app-id> # remove from Store.js
// SUPERUSER (sudo required)
sudo jsdxpkg install <pkg> # install system-wide
sudo jsdxpkg remove <pkg> # remove system package
// EXAMPLE SESSION
user@jsdex:~$ jsdxpkg search weather
🌤️ WeatherJS — Beautiful weather widget
user@jsdex:~$ jsdxpkg install WeatherJS
Fetching WeatherJS...
Installing WeatherJS...
✓ WeatherJS installed successfully.
user@jsdex:~$