Repository navigation
Home
Allislet is a high-performance browser SDK for building shadow-isolated bookmarklets and injected applications on top of Preact, TypeScript, and Bun. It is designed for host-page-safe overlays, runtime execution control, DOM automation, and feature-rich tooling that can run inside arbitrary websites without polluting or destabilizing the host environment.
This project is intentionally built around a minimal bootstrap model: mount into a closed Shadow Root, isolate CSS and layout, expose a runtime context, and let the host page continue without layout or style conflicts.
Allislet is currently in alpha and follows semantic versioning with the release tag:
- v1.0.0-alpha
The SDK is designed for experimentation, tooling, injection workflows, and controlled automation while remaining intentionally isolated from the host page.
- Shadow isolation with closed Shadow DOM mounting
- Preact-powered app rendering and context-driven services
- Runtime execution controls for page scripts and socket activity
- Host-safe UI primitives for overlays, windows, modals, and docks
- Config-driven feature activation and system bootstrapping
- Safe data flows and external library injection through config and runtime loaders
- A framework entrypoint that mounts cleanly to the document body
- A global metadata layer for app identity and runtime configuration
- A singleton provider for services such as EventBus, GlobalStorage, and PageExecutor
- Dynamic library loading via config-driven dependency ingestion
- DOM automation, macro recording, and view management
- Network and socket interception features
- Windowed overlays, command palettes, chat, and admin tooling
Install dependencies:
bun installStart the development server:
bun run devBuild the project:
bun run buildimport { defineConfig } from "allislet";
export default defineConfig({
id: "my-sdk-app",
name: "Dev Tools Suite",
version: "v1.0.0",
theme: {
mode: "dark",
accentColor: "#6ea8fe",
defaultDockPosition: "right",
},
storage: {
namespace: "my_sdk_v1",
crossDomainHubUrl: "http://localhost:5173/public/storage.html",
encryptLocalStorage: false,
},
features: {
patchFetch: true,
patchXHR: true,
interceptSockets: true,
autoExtractBearer: true,
},
activeTabs: ["network-logger", "macro-studio", "settings"],
libraries: [
{ name: "socket.io-client", url: "https://cdn.example.com/socket.io-client.js" },
],
onMount({ eventBus, pageExec }) {
console.log("Allislet initialized");
},
});- src/main.tsx: host bootstrap entrypoint
- src/App.tsx: top-level app root
- src/context/AllisletContext.tsx: provider and singleton service context
- src/core: runtime services and execution helpers
- src/features: toggles and feature registries
- src/utils: DOM, automation, utility, and overlay behavior
- src/windows: floating window and view primitives
- src/views: bundled view-layer modules
- Architecture and Bootstrap: deep dive into lifecycle and mount behavior
- Feature Guide: runtime capabilities, network tools, DOM automation, and chat/admin features
- Configuration Reference: behavior exposed through allislet.config.ts
- Architecture and Bootstrap
- Feature Guide
- Configuration patterns and runtime behavior
Allislet is distributed with the repository license in this project. Review the repository license file before production use or redistribution.
This SDK is intended for controlled, experimental environments. It is designed to be flexible and tool-rich, but it should be treated as an alpha framework with evolving APIs, runtime behaviors, and compatibility assumptions.