@dezignerdrugz/ade 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.output/public/_shell.html +1 -1
- package/README.md +0 -11
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/styles-DafH6Tpe.css" data-precedence="default"/><link rel="stylesheet" href="/assets/index-apqJzkVr.css" data-precedence="default"/><title>ADE — Project home</title><meta name="author" content="ADE"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="See your preview, active agent sessions, and recent changes for the current project in one calm workspace."/><meta property="og:title" content="ADE — Project home"/><meta property="og:description" content="A free, local-first workspace for building software with AI coding agents."/><link rel="modulepreload" href="/assets/index-3HxL6IhA.js"/><link rel="modulepreload" href="/assets/jsx-runtime-B-hcVAMW.js"/><link rel="modulepreload" href="/assets/react-dom-8HkkFvw6.js"/><link rel="modulepreload" href="/assets/link-B2U3BMsN.js"/><link rel="modulepreload" href="/assets/not-found-i5RsCZif.js"/><link rel="modulepreload" href="/assets/useSearch-CfA5YnfP.js"/><link rel="modulepreload" href="/assets/useRouter-BGpAXxmD.js"/><link rel="modulepreload" href="/assets/routes-an4DkwdD.js"/><link rel="modulepreload" href="/assets/navigation-BciIj42D.js"/><link rel="icon" href="/favicon.ico" type="image/x-icon"/><script>(function(){try{var t=localStorage.getItem("ade-theme");if(t!=="light"&&t!=="dark")t=matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.dataset.theme=t}catch(e){}})()</script></head><body><div class="flex h-screen flex-col overflow-hidden bg-paper text-ink"><header class="flex h-10 shrink-0 items-center gap-2 border-b border-line bg-panel px-3 sm:px-4"><a aria-label="ADE home" class="heading-display shrink-0 text-xl text-ink hover:text-ink active" href="/" data-status="active" aria-current="page">ADE</a><div class="flex min-w-0 flex-1 items-center gap-1 overflow-x-auto"><button type="button" aria-label="Add project" class="grid size-7 shrink-0 place-items-center rounded-md text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus size-4" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div><div class="ml-auto flex shrink-0 items-center gap-1 sm:gap-2"><button type="button" id="radix-_R_75aq_" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="inline-flex h-7 max-w-[14rem] items-center gap-1.5 rounded-md px-2 text-[13px] text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber" aria-label="Projects menu"><span class="min-w-0 truncate">Projects</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><button type="button" aria-label="Agents settings" class="grid size-7 place-items-center rounded-md text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings size-3.5" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg></button><button tabindex="0" class="G30ocW_button G30ocW_secondary G30ocW_sm weiLkW_themeSwitch weiLkW_rise weiLkW_iconOnly " type="button" data-theme="light" aria-label="Switch to dark mode" aria-pressed="false"><span class="G30ocW_labelSlot" style="width:auto"><span class="G30ocW_labelContent"><span class="G30ocW_labelPhase" style="opacity:1;filter:blur(0px);transform:none"><span class="weiLkW_iconWrap"><span class="weiLkW_icon" aria-hidden="true" style="opacity:1;filter:blur(0px);transform:none"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg></span></span></span></span></span></button></div></header><div class="flex min-h-0 flex-1"><div class="min-h-0 min-w-0 flex-1" data-group="true" data-testid="ade-shell-layout-v2" id="ade-shell-layout-v2" style="height:100%;width:100%;overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:row;flex-wrap:nowrap;touch-action:pan-y"><div data-panel="true" data-testid="shell-main" id="shell-main" style="min-height:0;max-height:100%;height:auto;min-width:0;max-width:100%;width:auto;border:none;border-width:0;padding:0;margin:0;display:flex;flex-basis:0;flex-shrink:1;overflow:visible;flex-grow:56"><div class="min-w-0 overflow-hidden" style="max-height:100%;max-width:100%;flex-grow:1;overflow:hidden;min-width:0;touch-action:pan-y"><div class="flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden"><!--$--><!--$--><!--/$--><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--></div></div></div><div data-orientation="vertical" aria-orientation="vertical" class="panel-seam" data-separator="inactive" data-testid="seam-shell-right" id="seam-shell-right" role="separator" style="flex-basis:auto;flex-grow:0;flex-shrink:0;touch-action:none" tabindex="0"><button type="button" aria-label="Hide right pane" title="Hide right pane" aria-expanded="true" aria-controls="shell-right" class="panel-collapse-handle"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right-close size-3.5" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path><path d="m8 9 3 3-3 3"></path></svg></button></div><div data-panel="true" data-testid="shell-right" id="shell-right" style="min-height:0;max-height:100%;height:auto;min-width:0;max-width:100%;width:auto;border:none;border-width:0;padding:0;margin:0;display:flex;flex-basis:0;flex-shrink:1;overflow:visible;flex-grow:44"><div class="min-w-0 overflow-hidden" style="max-height:100%;max-width:100%;flex-grow:1;overflow:hidden;min-width:0;touch-action:pan-y"><div class="relative flex h-full min-h-0 min-w-0 flex-col overflow-hidden"><div class="flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden"></div></div></div></div></div></div></div><script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-3HxL6IhA.js","/assets/jsx-runtime-B-hcVAMW.js","/assets/react-dom-8HkkFvw6.js","/assets/link-B2U3BMsN.js","/assets/not-found-i5RsCZif.js","/assets/useSearch-CfA5YnfP.js","/assets/useRouter-BGpAXxmD.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-3HxL6IhA.js"}}],css:$R[8]=["/assets/index-apqJzkVr.css"]}}},matches:$R[9]=[$R[10]={i:"__root__",u:
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/styles-DafH6Tpe.css" data-precedence="default"/><link rel="stylesheet" href="/assets/index-apqJzkVr.css" data-precedence="default"/><title>ADE — Project home</title><meta name="author" content="ADE"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="description" content="See your preview, active agent sessions, and recent changes for the current project in one calm workspace."/><meta property="og:title" content="ADE — Project home"/><meta property="og:description" content="A free, local-first workspace for building software with AI coding agents."/><link rel="modulepreload" href="/assets/index-3HxL6IhA.js"/><link rel="modulepreload" href="/assets/jsx-runtime-B-hcVAMW.js"/><link rel="modulepreload" href="/assets/react-dom-8HkkFvw6.js"/><link rel="modulepreload" href="/assets/link-B2U3BMsN.js"/><link rel="modulepreload" href="/assets/not-found-i5RsCZif.js"/><link rel="modulepreload" href="/assets/useSearch-CfA5YnfP.js"/><link rel="modulepreload" href="/assets/useRouter-BGpAXxmD.js"/><link rel="modulepreload" href="/assets/routes-an4DkwdD.js"/><link rel="modulepreload" href="/assets/navigation-BciIj42D.js"/><link rel="icon" href="/favicon.ico" type="image/x-icon"/><script>(function(){try{var t=localStorage.getItem("ade-theme");if(t!=="light"&&t!=="dark")t=matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.dataset.theme=t}catch(e){}})()</script></head><body><div class="flex h-screen flex-col overflow-hidden bg-paper text-ink"><header class="flex h-10 shrink-0 items-center gap-2 border-b border-line bg-panel px-3 sm:px-4"><a aria-label="ADE home" class="heading-display shrink-0 text-xl text-ink hover:text-ink active" href="/" data-status="active" aria-current="page">ADE</a><div class="flex min-w-0 flex-1 items-center gap-1 overflow-x-auto"><button type="button" aria-label="Add project" class="grid size-7 shrink-0 place-items-center rounded-md text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus size-4" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg></button></div><div class="ml-auto flex shrink-0 items-center gap-1 sm:gap-2"><button type="button" id="radix-_R_75aq_" aria-haspopup="menu" aria-expanded="false" data-state="closed" class="inline-flex h-7 max-w-[14rem] items-center gap-1.5 rounded-md px-2 text-[13px] text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber" aria-label="Projects menu"><span class="min-w-0 truncate">Projects</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down size-3.5 shrink-0" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button><button type="button" aria-label="Agents settings" class="grid size-7 place-items-center rounded-md text-dim hover:bg-ink/[0.04] hover:text-ink focus-visible:outline-2 focus-visible:outline-amber"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings size-3.5" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg></button><button tabindex="0" class="G30ocW_button G30ocW_secondary G30ocW_sm weiLkW_themeSwitch weiLkW_rise weiLkW_iconOnly " type="button" data-theme="light" aria-label="Switch to dark mode" aria-pressed="false"><span class="G30ocW_labelSlot" style="width:auto"><span class="G30ocW_labelContent"><span class="G30ocW_labelPhase" style="opacity:1;filter:blur(0px);transform:none"><span class="weiLkW_iconWrap"><span class="weiLkW_icon" aria-hidden="true" style="opacity:1;filter:blur(0px);transform:none"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg></span></span></span></span></span></button></div></header><div class="flex min-h-0 flex-1"><div class="min-h-0 min-w-0 flex-1" data-group="true" data-testid="ade-shell-layout-v2" id="ade-shell-layout-v2" style="height:100%;width:100%;overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:row;flex-wrap:nowrap;touch-action:pan-y"><div data-panel="true" data-testid="shell-main" id="shell-main" style="min-height:0;max-height:100%;height:auto;min-width:0;max-width:100%;width:auto;border:none;border-width:0;padding:0;margin:0;display:flex;flex-basis:0;flex-shrink:1;overflow:visible;flex-grow:56"><div class="min-w-0 overflow-hidden" style="max-height:100%;max-width:100%;flex-grow:1;overflow:hidden;min-width:0;touch-action:pan-y"><div class="flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden"><!--$--><!--$--><!--/$--><script>(function(a,f){let l;try{l=JSON.parse(sessionStorage.getItem(a)||"{}")}catch{return}const n=l?.[f||history.state?.__TSR_key];let c=!1;for(const t in n){const e=n[t],o=e?.scrollX,s=e?.scrollY;if(Number.isFinite(o)&&Number.isFinite(s)){if(t==="window")scrollTo(o,s),c=!0;else if(t)try{const r=document.querySelector(t);r&&(r.scrollLeft=o,r.scrollTop=s)}catch{}}}if(c)return;const i=location.hash.slice(1);if(i){const t=history.state?.__hashScrollIntoViewOptions??!0;if(t){const e=document.getElementById(i);e&&e.scrollIntoView(t)}return}scrollTo(0,0)})("tsr-scroll-restoration-v1_3");document.currentScript.remove()</script><!--/$--></div></div></div><div data-orientation="vertical" aria-orientation="vertical" class="panel-seam" data-separator="inactive" data-testid="seam-shell-right" id="seam-shell-right" role="separator" style="flex-basis:auto;flex-grow:0;flex-shrink:0;touch-action:none" tabindex="0"><button type="button" aria-label="Hide right pane" title="Hide right pane" aria-expanded="true" aria-controls="shell-right" class="panel-collapse-handle"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-panel-right-close size-3.5" aria-hidden="true"><rect width="18" height="18" x="3" y="3" rx="2"></rect><path d="M15 3v18"></path><path d="m8 9 3 3-3 3"></path></svg></button></div><div data-panel="true" data-testid="shell-right" id="shell-right" style="min-height:0;max-height:100%;height:auto;min-width:0;max-width:100%;width:auto;border:none;border-width:0;padding:0;margin:0;display:flex;flex-basis:0;flex-shrink:1;overflow:visible;flex-grow:44"><div class="min-w-0 overflow-hidden" style="max-height:100%;max-width:100%;flex-grow:1;overflow:hidden;min-width:0;touch-action:pan-y"><div class="relative flex h-full min-h-0 min-w-0 flex-col overflow-hidden"><div class="flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden"></div></div></div></div></div></div></div><script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-3HxL6IhA.js","/assets/jsx-runtime-B-hcVAMW.js","/assets/react-dom-8HkkFvw6.js","/assets/link-B2U3BMsN.js","/assets/not-found-i5RsCZif.js","/assets/useSearch-CfA5YnfP.js","/assets/useRouter-BGpAXxmD.js"],scripts:$R[5]=[$R[6]={attrs:$R[7]={type:"module",async:!0,src:"/assets/index-3HxL6IhA.js"}}],css:$R[8]=["/assets/index-apqJzkVr.css"]}}},matches:$R[9]=[$R[10]={i:"__root__",u:1793567691319,s:"success",ssr:!0}],lastMatchId:"__root__"})($R["tsr"]);$_TSR.e();document.currentScript.remove()</script><script type="module" async="" src="/assets/index-3HxL6IhA.js"></script></body></html>
|
package/README.md
CHANGED
|
@@ -120,17 +120,6 @@ Each project's right pane has a **Browser** tab: a headless Chrome on your machi
|
|
|
120
120
|
|
|
121
121
|
The existing TanStack Start/React app and warm workbench visual direction are retained. A small Node local-service module is mounted into Vite dev/preview and the self-hosted Node server: `src/local/ade-local.mjs` holds the request guard and the shared state, each area's API routes live in `src/local/routes/`, and larger services have their own modules (`dev-server.mjs`, `agent-status.mjs`, `remote.mjs` and others). Agent adapters are isolated in `src/local/adapters/` so additional CLIs can be added without changing UI state. The service owns project registration, Git inspection/diffs, task persistence, child-process lifecycle, CLI streaming, checks, and development servers. The browser receives scoped invalidations over Server-Sent Events and loads session details and logs on demand; browser storage is no longer the source of truth.
|
|
122
122
|
|
|
123
|
-
## Releasing
|
|
124
|
-
|
|
125
|
-
The npm package `@dezignerdrugz/ade` is built from this repository, not from its development manifest:
|
|
126
|
-
|
|
127
|
-
```sh
|
|
128
|
-
npm run package # builds the app, stages and packs it in .pack/
|
|
129
|
-
npm publish .pack/dezignerdrugz-ade-<version>.tgz
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
Publishing needs `npm login` as an account that owns the `@dezignerdrugz` scope. Bump `version` in the root `package.json` before packaging a new release; npm never accepts the same version twice.
|
|
133
|
-
|
|
134
123
|
## License
|
|
135
124
|
|
|
136
125
|
ADE is released under the [MIT License](LICENSE). Third-party components and bundled fonts keep their own licenses; see `THIRD_PARTY_NOTICES.md` and `public/licenses/`.
|
package/package.json
CHANGED