Spaces:
Running
Running
fix guided tour compatibility, monaco save conflict, routing and json repair
Browse files- .next/BUILD_ID +1 -1
- .next/app-build-manifest.json +10 -10
- .next/app-path-routes-manifest.json +1 -1
- .next/build-manifest.json +2 -2
- .next/prerender-manifest.json +3 -3
- .next/react-loadable-manifest.json +4 -0
- .next/server/app-paths-manifest.json +1 -1
- .next/server/app/_not-found.html +1 -1
- .next/server/app/_not-found.rsc +1 -1
- .next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- .next/server/app/api/generate/route_client-reference-manifest.js +1 -1
- .next/server/app/api/models/route_client-reference-manifest.js +1 -1
- .next/server/app/api/validate-key/route_client-reference-manifest.js +1 -1
- .next/server/app/index.html +1 -1
- .next/server/app/index.rsc +2 -2
- .next/server/app/page.js +0 -0
- .next/server/app/page.js.nft.json +1 -1
- .next/server/app/page_client-reference-manifest.js +1 -1
- .next/server/app/test-generation.html +2 -2
- .next/server/app/test-generation.rsc +2 -2
- .next/server/app/test-generation/page.js +2 -2
- .next/server/app/test-generation/page.js.nft.json +1 -1
- .next/server/app/test-generation/page_client-reference-manifest.js +1 -1
- .next/server/chunks/{735.js β 531.js} +0 -0
- .next/server/chunks/988.js +0 -0
- .next/server/middleware-react-loadable-manifest.js +1 -1
- .next/server/pages-manifest.json +1 -1
- .next/server/pages/404.html +1 -1
- .next/server/pages/500.html +1 -1
- .next/static/{dIkY_P_0xrp8eCwX8TgWC β Zg8wsN0O8R1SmKVNL7M2I}/_buildManifest.js +0 -0
- .next/static/{dIkY_P_0xrp8eCwX8TgWC β Zg8wsN0O8R1SmKVNL7M2I}/_ssgManifest.js +0 -0
- .next/static/chunks/361-98f47a14fdb76101.js +0 -0
- .next/static/chunks/856-f7e6d25ec70892ad.js +0 -0
- .next/static/chunks/app/page-33ed5a208c1db998.js +0 -0
- .next/static/chunks/app/page-a3b80d89e3b52b3d.js +0 -0
- .next/static/chunks/app/test-generation/{page-37b499a4e163fb58.js β page-808c27513077aad7.js} +1 -1
- package.json +1 -1
.next/BUILD_ID
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
|
|
|
|
| 1 |
+
Zg8wsN0O8R1SmKVNL7M2I
|
.next/app-build-manifest.json
CHANGED
|
@@ -17,26 +17,26 @@
|
|
| 17 |
"static/chunks/138-9f738090dc749a6c.js",
|
| 18 |
"static/chunks/app/layout-4145df182a98063f.js"
|
| 19 |
],
|
| 20 |
-
"/api/
|
| 21 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 22 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 23 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 24 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 25 |
-
"static/chunks/app/api/
|
| 26 |
],
|
| 27 |
-
"/api/
|
| 28 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 29 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 30 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 31 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 32 |
-
"static/chunks/app/api/
|
| 33 |
],
|
| 34 |
-
"/api/
|
| 35 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 36 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 37 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 38 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 39 |
-
"static/chunks/app/api/
|
| 40 |
],
|
| 41 |
"/page": [
|
| 42 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
|
@@ -48,8 +48,8 @@
|
|
| 48 |
"static/chunks/671-f7ad2a6bc6db0f05.js",
|
| 49 |
"static/chunks/223-e2ad216402a57c4d.js",
|
| 50 |
"static/chunks/881-a5079ad8eddecb86.js",
|
| 51 |
-
"static/chunks/
|
| 52 |
-
"static/chunks/app/page-
|
| 53 |
],
|
| 54 |
"/test-generation/page": [
|
| 55 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
|
@@ -59,8 +59,8 @@
|
|
| 59 |
"static/chunks/06bf0ff1-f728958255a9b8b2.js",
|
| 60 |
"static/chunks/671-f7ad2a6bc6db0f05.js",
|
| 61 |
"static/chunks/223-e2ad216402a57c4d.js",
|
| 62 |
-
"static/chunks/
|
| 63 |
-
"static/chunks/app/test-generation/page-
|
| 64 |
]
|
| 65 |
}
|
| 66 |
}
|
|
|
|
| 17 |
"static/chunks/138-9f738090dc749a6c.js",
|
| 18 |
"static/chunks/app/layout-4145df182a98063f.js"
|
| 19 |
],
|
| 20 |
+
"/api/validate-key/route": [
|
| 21 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 22 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 23 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 24 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 25 |
+
"static/chunks/app/api/validate-key/route-ed909a12c49a8b41.js"
|
| 26 |
],
|
| 27 |
+
"/api/generate/route": [
|
| 28 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 29 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 30 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 31 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 32 |
+
"static/chunks/app/api/generate/route-4ca54e3249fc55c9.js"
|
| 33 |
],
|
| 34 |
+
"/api/models/route": [
|
| 35 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
| 36 |
"static/chunks/4bd1b696-3c15e5f54330ea53.js",
|
| 37 |
"static/chunks/684-83d67de51b1d51a2.js",
|
| 38 |
"static/chunks/main-app-f3f767ad51e50725.js",
|
| 39 |
+
"static/chunks/app/api/models/route-6b7195d4ae75cf3b.js"
|
| 40 |
],
|
| 41 |
"/page": [
|
| 42 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
|
|
|
| 48 |
"static/chunks/671-f7ad2a6bc6db0f05.js",
|
| 49 |
"static/chunks/223-e2ad216402a57c4d.js",
|
| 50 |
"static/chunks/881-a5079ad8eddecb86.js",
|
| 51 |
+
"static/chunks/361-98f47a14fdb76101.js",
|
| 52 |
+
"static/chunks/app/page-a3b80d89e3b52b3d.js"
|
| 53 |
],
|
| 54 |
"/test-generation/page": [
|
| 55 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
|
|
|
| 59 |
"static/chunks/06bf0ff1-f728958255a9b8b2.js",
|
| 60 |
"static/chunks/671-f7ad2a6bc6db0f05.js",
|
| 61 |
"static/chunks/223-e2ad216402a57c4d.js",
|
| 62 |
+
"static/chunks/361-98f47a14fdb76101.js",
|
| 63 |
+
"static/chunks/app/test-generation/page-808c27513077aad7.js"
|
| 64 |
]
|
| 65 |
}
|
| 66 |
}
|
.next/app-path-routes-manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
| 1 |
{
|
| 2 |
"/_not-found/page": "/_not-found",
|
|
|
|
| 3 |
"/api/generate/route": "/api/generate",
|
| 4 |
"/api/models/route": "/api/models",
|
| 5 |
-
"/api/validate-key/route": "/api/validate-key",
|
| 6 |
"/page": "/",
|
| 7 |
"/test-generation/page": "/test-generation"
|
| 8 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"/_not-found/page": "/_not-found",
|
| 3 |
+
"/api/validate-key/route": "/api/validate-key",
|
| 4 |
"/api/generate/route": "/api/generate",
|
| 5 |
"/api/models/route": "/api/models",
|
|
|
|
| 6 |
"/page": "/",
|
| 7 |
"/test-generation/page": "/test-generation"
|
| 8 |
}
|
.next/build-manifest.json
CHANGED
|
@@ -5,8 +5,8 @@
|
|
| 5 |
"devFiles": [],
|
| 6 |
"ampDevFiles": [],
|
| 7 |
"lowPriorityFiles": [
|
| 8 |
-
"static/
|
| 9 |
-
"static/
|
| 10 |
],
|
| 11 |
"rootMainFiles": [
|
| 12 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
|
|
|
| 5 |
"devFiles": [],
|
| 6 |
"ampDevFiles": [],
|
| 7 |
"lowPriorityFiles": [
|
| 8 |
+
"static/Zg8wsN0O8R1SmKVNL7M2I/_buildManifest.js",
|
| 9 |
+
"static/Zg8wsN0O8R1SmKVNL7M2I/_ssgManifest.js"
|
| 10 |
],
|
| 11 |
"rootMainFiles": [
|
| 12 |
"static/chunks/webpack-5d4f0cacdd7dc40f.js",
|
.next/prerender-manifest.json
CHANGED
|
@@ -53,8 +53,8 @@
|
|
| 53 |
"dynamicRoutes": {},
|
| 54 |
"notFoundRoutes": [],
|
| 55 |
"preview": {
|
| 56 |
-
"previewModeId": "
|
| 57 |
-
"previewModeSigningKey": "
|
| 58 |
-
"previewModeEncryptionKey": "
|
| 59 |
}
|
| 60 |
}
|
|
|
|
| 53 |
"dynamicRoutes": {},
|
| 54 |
"notFoundRoutes": [],
|
| 55 |
"preview": {
|
| 56 |
+
"previewModeId": "6fe5944be27da11a2933dc66b5e9e0b6",
|
| 57 |
+
"previewModeSigningKey": "4625d544f270f00c4b41dd316705a77960300782e66e22fd89bdc4231129e9a5",
|
| 58 |
+
"previewModeEncryptionKey": "6721ab13bf1f25e69a63aed3731ebd4f8a14885c2a09f6b2f25025a73c90e76a"
|
| 59 |
}
|
| 60 |
}
|
.next/react-loadable-manifest.json
CHANGED
|
@@ -1,4 +1,8 @@
|
|
| 1 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2 |
"lib/llm/debug-events-state.ts -> @/lib/vfs": {
|
| 3 |
"id": 9396,
|
| 4 |
"files": []
|
|
|
|
| 1 |
{
|
| 2 |
+
"components/guided-tour/context.tsx -> @/lib/vfs": {
|
| 3 |
+
"id": 9396,
|
| 4 |
+
"files": []
|
| 5 |
+
},
|
| 6 |
"lib/llm/debug-events-state.ts -> @/lib/vfs": {
|
| 7 |
"id": 9396,
|
| 8 |
"files": []
|
.next/server/app-paths-manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
| 1 |
{
|
| 2 |
"/_not-found/page": "app/_not-found/page.js",
|
|
|
|
| 3 |
"/api/generate/route": "app/api/generate/route.js",
|
| 4 |
"/api/models/route": "app/api/models/route.js",
|
| 5 |
-
"/api/validate-key/route": "app/api/validate-key/route.js",
|
| 6 |
"/page": "app/page.js",
|
| 7 |
"/test-generation/page": "app/test-generation/page.js"
|
| 8 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"/_not-found/page": "app/_not-found/page.js",
|
| 3 |
+
"/api/validate-key/route": "app/api/validate-key/route.js",
|
| 4 |
"/api/generate/route": "app/api/generate/route.js",
|
| 5 |
"/api/models/route": "app/api/models/route.js",
|
|
|
|
| 6 |
"/page": "app/page.js",
|
| 7 |
"/test-generation/page": "app/test-generation/page.js"
|
| 8 |
}
|
.next/server/app/_not-found.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[9665,[],\"MetadataBoundary\"]\n9:I[9665,[],\"OutletBoundary\"]\nc:I[4911,[],\"AsyncMetadataOutlet\"]\ne:I[9665,[],\"ViewportBoundary\"]\n10:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"dIkY_P_0xrp8eCwX8TgWC\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",\"$Lb\",[\"$\",\"$Lc\",null,{\"promise\":\"$@d\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"7kE0FUuYHxKgwrRwthcDn\",{\"children\":[[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:\"$Sreact.suspense\"\n12:I[4911,[],\"AsyncMetadata\"]\n8:[\"$\",\"$11\",null,{\"fallback\":null,\"children\":[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]}]\n"])</script><script>self.__next_f.push([1,"b:null\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"13:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:{\"metadata\":\"$13:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[9665,[],\"MetadataBoundary\"]\n9:I[9665,[],\"OutletBoundary\"]\nc:I[4911,[],\"AsyncMetadataOutlet\"]\ne:I[9665,[],\"ViewportBoundary\"]\n10:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Zg8wsN0O8R1SmKVNL7M2I\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",\"$Lb\",[\"$\",\"$Lc\",null,{\"promise\":\"$@d\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"lmnrRQPH2jDhuHuHta7F7\",{\"children\":[[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:\"$Sreact.suspense\"\n12:I[4911,[],\"AsyncMetadata\"]\n8:[\"$\",\"$11\",null,{\"fallback\":null,\"children\":[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]}]\n"])</script><script>self.__next_f.push([1,"b:null\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"13:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:{\"metadata\":\"$13:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
.next/server/app/_not-found.rsc
CHANGED
|
@@ -13,7 +13,7 @@ e:I[9665,[],"ViewportBoundary"]
|
|
| 13 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 14 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 15 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 16 |
-
0:{"P":null,"b":"
|
| 17 |
11:"$Sreact.suspense"
|
| 18 |
12:I[4911,[],"AsyncMetadata"]
|
| 19 |
8:["$","$11",null,{"fallback":null,"children":["$","$L12",null,{"promise":"$@13"}]}]
|
|
|
|
| 13 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 14 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 15 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 16 |
+
0:{"P":null,"b":"Zg8wsN0O8R1SmKVNL7M2I","p":"","c":["","_not-found"],"i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/69356a77d73ae38f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden","suppressHydrationWarning":true,"children":["$","$L2",null,{"children":[["$","$L3",null,{"richColors":true,"position":"bottom-center"}],["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]}]}]]}],{"children":["/_not-found",["$","$1","c",{"children":[null,["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],["$","$L7",null,{"children":"$L8"}],null,["$","$L9",null,{"children":["$La","$Lb",["$","$Lc",null,{"promise":"$@d"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$1","lmnrRQPH2jDhuHuHta7F7",{"children":[["$","$Le",null,{"children":"$Lf"}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],null]}],false]],"m":"$undefined","G":["$10","$undefined"],"s":false,"S":true}
|
| 17 |
11:"$Sreact.suspense"
|
| 18 |
12:I[4911,[],"AsyncMetadata"]
|
| 19 |
8:["$","$11",null,{"fallback":null,"children":["$","$L12",null,{"promise":"$@13"}]}]
|
.next/server/app/_not-found/page_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/_not-found/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/_not-found/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/_not-found/page":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/app/api/generate/route_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/generate/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/generate/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/api/generate/route":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/app/api/models/route_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/models/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/models/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/api/models/route":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/app/api/validate-key/route_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/validate-key/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/validate-key/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/api/validate-key/route":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/app/index.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><script src="/_next/static/chunks/06bf0ff1-f728958255a9b8b2.js" async=""></script><script src="/_next/static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js" async=""></script><script src="/_next/static/chunks/223-e2ad216402a57c4d.js" async=""></script><script src="/_next/static/chunks/881-a5079ad8eddecb86.js" async=""></script><script src="/_next/static/chunks/856-f7e6d25ec70892ad.js" async=""></script><script src="/_next/static/chunks/app/page-33ed5a208c1db998.js" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div class="flex items-center justify-center h-screen"><div class="text-center"><div class="animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto"></div><p class="mt-4">Loading projects...</p></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[894,[],\"ClientPageRoot\"]\n8:I[771,[\"948\",\"static/chunks/06bf0ff1-f728958255a9b8b2.js\",\"316\",\"static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js\",\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"223\",\"static/chunks/223-e2ad216402a57c4d.js\",\"881\",\"static/chunks/881-a5079ad8eddecb86.js\",\"856\",\"static/chunks/856-f7e6d25ec70892ad.js\",\"974\",\"static/chunks/app/page-33ed5a208c1db998.js\"],\"default\"]\nb:I[9665,[],\"MetadataBoundary\"]\nd:I[9665,[],\"OutletBoundary\"]\n10:I[4911,[],\"AsyncMetadataOutlet\"]\n12:I[9665,[],\"ViewportBoundary\"]\n14:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"dIkY_P_0xrp8eCwX8TgWC\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L7\",null,{\"Component\":\"$8\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@9\",\"$@a\"]}],[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],null,[\"$\",\"$Ld\",null,{\"children\":[\"$Le\",\"$Lf\",[\"$\",\"$L10\",null,{\"promise\":\"$@11\"}]]}]]}],{},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"WtJjw9ntXA9fVVV_ZcEkG\",{\"children\":[[\"$\",\"$L12\",null,{\"children\":\"$L13\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"15:\"$Sreact.suspense\"\n16:I[4911,[],\"AsyncMetadata\"]\n9:{}\na:{}\nc:[\"$\",\"$15\",null,{\"fallback\":null,\"children\":[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]}]\n"])</script><script>self.__next_f.push([1,"f:null\n"])</script><script>self.__next_f.push([1,"13:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\ne:null\n"])</script><script>self.__next_f.push([1,"17:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:{\"metadata\":\"$17:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><script src="/_next/static/chunks/06bf0ff1-f728958255a9b8b2.js" async=""></script><script src="/_next/static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js" async=""></script><script src="/_next/static/chunks/223-e2ad216402a57c4d.js" async=""></script><script src="/_next/static/chunks/881-a5079ad8eddecb86.js" async=""></script><script src="/_next/static/chunks/361-98f47a14fdb76101.js" async=""></script><script src="/_next/static/chunks/app/page-a3b80d89e3b52b3d.js" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div class="flex items-center justify-center h-screen"><div class="text-center"><div class="animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto"></div><p class="mt-4">Loading projects...</p></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[894,[],\"ClientPageRoot\"]\n8:I[2454,[\"948\",\"static/chunks/06bf0ff1-f728958255a9b8b2.js\",\"316\",\"static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js\",\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"223\",\"static/chunks/223-e2ad216402a57c4d.js\",\"881\",\"static/chunks/881-a5079ad8eddecb86.js\",\"361\",\"static/chunks/361-98f47a14fdb76101.js\",\"974\",\"static/chunks/app/page-a3b80d89e3b52b3d.js\"],\"default\"]\nb:I[9665,[],\"MetadataBoundary\"]\nd:I[9665,[],\"OutletBoundary\"]\n10:I[4911,[],\"AsyncMetadataOutlet\"]\n12:I[9665,[],\"ViewportBoundary\"]\n14:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Zg8wsN0O8R1SmKVNL7M2I\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L7\",null,{\"Component\":\"$8\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@9\",\"$@a\"]}],[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],null,[\"$\",\"$Ld\",null,{\"children\":[\"$Le\",\"$Lf\",[\"$\",\"$L10\",null,{\"promise\":\"$@11\"}]]}]]}],{},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"bVb9aH1dmAdUbpZbVagFG\",{\"children\":[[\"$\",\"$L12\",null,{\"children\":\"$L13\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"15:\"$Sreact.suspense\"\n16:I[4911,[],\"AsyncMetadata\"]\n9:{}\na:{}\nc:[\"$\",\"$15\",null,{\"fallback\":null,\"children\":[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]}]\n"])</script><script>self.__next_f.push([1,"f:null\n"])</script><script>self.__next_f.push([1,"13:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\ne:null\n"])</script><script>self.__next_f.push([1,"17:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:{\"metadata\":\"$17:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
.next/server/app/index.rsc
CHANGED
|
@@ -5,7 +5,7 @@
|
|
| 5 |
5:I[7555,[],""]
|
| 6 |
6:I[1295,[],""]
|
| 7 |
7:I[894,[],"ClientPageRoot"]
|
| 8 |
-
8:I[
|
| 9 |
b:I[9665,[],"MetadataBoundary"]
|
| 10 |
d:I[9665,[],"OutletBoundary"]
|
| 11 |
10:I[4911,[],"AsyncMetadataOutlet"]
|
|
@@ -15,7 +15,7 @@ d:I[9665,[],"OutletBoundary"]
|
|
| 15 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 16 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 17 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 18 |
-
0:{"P":null,"b":"
|
| 19 |
15:"$Sreact.suspense"
|
| 20 |
16:I[4911,[],"AsyncMetadata"]
|
| 21 |
9:{}
|
|
|
|
| 5 |
5:I[7555,[],""]
|
| 6 |
6:I[1295,[],""]
|
| 7 |
7:I[894,[],"ClientPageRoot"]
|
| 8 |
+
8:I[2454,["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"default"]
|
| 9 |
b:I[9665,[],"MetadataBoundary"]
|
| 10 |
d:I[9665,[],"OutletBoundary"]
|
| 11 |
10:I[4911,[],"AsyncMetadataOutlet"]
|
|
|
|
| 15 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 16 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 17 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 18 |
+
0:{"P":null,"b":"Zg8wsN0O8R1SmKVNL7M2I","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/69356a77d73ae38f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden","suppressHydrationWarning":true,"children":["$","$L2",null,{"children":[["$","$L3",null,{"richColors":true,"position":"bottom-center"}],["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],["$","$Lb",null,{"children":"$Lc"}],null,["$","$Ld",null,{"children":["$Le","$Lf",["$","$L10",null,{"promise":"$@11"}]]}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","bVb9aH1dmAdUbpZbVagFG",{"children":[["$","$L12",null,{"children":"$L13"}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],null]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true}
|
| 19 |
15:"$Sreact.suspense"
|
| 20 |
16:I[4911,[],"AsyncMetadata"]
|
| 21 |
9:{}
|
.next/server/app/page.js
CHANGED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/server/app/page.js.nft.json
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"version":1,"files":["../../../node_modules/next/dist/client/components/app-router-headers.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../node_modules/next/package.json","../../package.json","../chunks/447.js","../chunks/
|
|
|
|
| 1 |
+
{"version":1,"files":["../../../node_modules/next/dist/client/components/app-router-headers.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../node_modules/next/package.json","../../package.json","../chunks/447.js","../chunks/531.js","../chunks/55.js","../chunks/988.js","../webpack-runtime.js","page_client-reference-manifest.js"]}
|
.next/server/app/page_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/app/test-generation.html
CHANGED
|
@@ -1,4 +1,4 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><script src="/_next/static/chunks/06bf0ff1-f728958255a9b8b2.js" async=""></script><script src="/_next/static/chunks/223-e2ad216402a57c4d.js" async=""></script><script src="/_next/static/chunks/
|
| 2 |
<rect x="0" y="0" width="256" height="256" rx="20" ry="20" fill="#000000"/>
|
| 3 |
<g transform="translate(0,256) scale(0.0476,-0.0476)" fill="#ffffff" stroke="none">
|
| 4 |
<path d="M725 4825 c-50 -18 -100 -71 -114 -122 -15 -54 -15 -1573 0 -1628 16
|
|
@@ -36,4 +36,4 @@
|
|
| 36 |
691 22 606 1 658 2 688 19 137 74 130 264 -12 328 -38 18 -85 19 -840 18 -652
|
| 37 |
0 -807 -2 -838 -14z"/>
|
| 38 |
</g>
|
| 39 |
-
</svg></div><span class="font-semibold text-lg hidden md:inline">Model Tester</span></button><div class="flex items-center gap-2 flex-1 justify-center md:justify-start md:ml-6"><h1 class="text-lg font-semibold md:hidden">Model Tester</h1></div><div class="flex items-center gap-2"><div class="hidden md:flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3 justify-start"><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-arrow-left h-4 w-4 mr-2" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Back to Projects</button></div><div class="md:hidden flex items-center gap-2"></div><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50 size-9 h-8 w-8 md:hidden"><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 h-4 w-4" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></div><div class="flex-1 overflow-auto bg-background p-6"><div class="max-w-6xl mx-auto"><div class="bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6"><div class="flex items-start gap-3"><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-circle-alert h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><line x1="12" x2="12" y1="8" y2="12"></line><line x1="12" x2="12.01" y1="16" y2="16"></line></svg><div class="flex-1"><h3 class="font-medium text-blue-900 dark:text-blue-100 mb-1">How to Interpret Test Results</h3><p class="text-sm text-blue-800 dark:text-blue-200">These tests validate basic code generation capabilities across different task types. A <strong>passing test</strong> means files were created/modified successfully. A <strong>failing test</strong> indicates the model couldn't complete the task or didn't produce expected outputs.</p><div class="mt-2 text-xs text-blue-700 dark:text-blue-300"><strong>Tip:</strong> Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution.</div></div></div></div><div class="bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6"><div class="flex items-start gap-3"><div class="text-amber-600 dark:text-amber-400 mt-0.5">π‘</div><div class="flex-1"><h3 class="font-medium text-amber-900 dark:text-amber-100 mb-1">Cost Warning</h3><p class="text-sm text-amber-800 dark:text-amber-200">Running these tests can be <strong>very expensive</strong> and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities.</p><p class="text-sm text-amber-800 dark:text-amber-200 mt-2">This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system.</p></div></div></div><div class="grid grid-cols-1 md:grid-cols-4 gap-4 mb-6"><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Total Tests</div><div class="text-2xl font-bold">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Passed</div><div class="text-2xl font-bold text-green-600">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Failed</div><div class="text-2xl font-bold text-red-600">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Success Rate</div><div class="text-2xl font-bold">0.0<!-- -->%</div></div></div><div class="flex gap-4 mb-6"><button data-slot="popover-trigger" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-9 px-4 py-2 has-[>svg]:px-3" type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-Β«Rp3rlbΒ»" data-state="closed"><span>Select Model</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-up h-4 w-4 ml-2" aria-hidden="true"><path d="m18 15-6-6-6 6"></path></svg></button><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive bg-primary text-primary-foreground shadow-xs hover:bg-primary/90 h-9 px-4 py-2 has-[>svg]:px-3"><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-play h-4 w-4 mr-2" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Run Quick Tests (5 tests)</button><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-9 px-4 py-2 has-[>svg]:px-3"><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-refresh-cw h-4 w-4 mr-2" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Reset</button></div><div class="grid gap-4"><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add hamburger menu to navbar<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create modal dialog<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a modal dialog that can be opened with a button click. The modal should have a close button a<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add contact form with validation<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a contact form with fields for name, email, and message. Include client-side validation for requ<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create dropdown menu<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with <!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create image carousel<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create an image carousel/slider with next and previous buttons. It should display one image at a tim<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Change background to gradient<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Change the body background to a linear gradient from #ff8c42 to #e65100<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add dark mode toggle<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a dark mode toggle button that switches the entire page between light and dark themes. Store the<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create responsive grid layout<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card <!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add API fetch functionality<span class="text-sm font-normal text-muted-foreground">(<!-- -->javascript<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create countdown timer<span class="text-sm font-normal text-muted-foreground">(<!-- -->javascript<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include s<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Build a todo list application<span class="text-sm font-normal text-muted-foreground">(<!-- -->complex<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, an<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div></div></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[894,[],\"ClientPageRoot\"]\n8:I[6910,[\"948\",\"static/chunks/06bf0ff1-f728958255a9b8b2.js\",\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"223\",\"static/chunks/223-e2ad216402a57c4d.js\",\"856\",\"static/chunks/856-f7e6d25ec70892ad.js\",\"932\",\"static/chunks/app/test-generation/page-37b499a4e163fb58.js\"],\"default\"]\nb:I[9665,[],\"MetadataBoundary\"]\nd:I[9665,[],\"OutletBoundary\"]\n10:I[4911,[],\"AsyncMetadataOutlet\"]\n12:I[9665,[],\"ViewportBoundary\"]\n14:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"dIkY_P_0xrp8eCwX8TgWC\",\"p\":\"\",\"c\":[\"\",\"test-generation\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"test-generation\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"test-generation\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L7\",null,{\"Component\":\"$8\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@9\",\"$@a\"]}],[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],null,[\"$\",\"$Ld\",null,{\"children\":[\"$Le\",\"$Lf\",[\"$\",\"$L10\",null,{\"promise\":\"$@11\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"7oqwFxMLOs4OEzVOCuKcq\",{\"children\":[[\"$\",\"$L12\",null,{\"children\":\"$L13\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"15:\"$Sreact.suspense\"\n16:I[4911,[],\"AsyncMetadata\"]\n9:{}\na:{}\nc:[\"$\",\"$15\",null,{\"fallback\":null,\"children\":[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]}]\n"])</script><script>self.__next_f.push([1,"f:null\n"])</script><script>self.__next_f.push([1,"13:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\ne:null\n"])</script><script>self.__next_f.push([1,"17:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:{\"metadata\":\"$17:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><script src="/_next/static/chunks/06bf0ff1-f728958255a9b8b2.js" async=""></script><script src="/_next/static/chunks/223-e2ad216402a57c4d.js" async=""></script><script src="/_next/static/chunks/361-98f47a14fdb76101.js" async=""></script><script src="/_next/static/chunks/app/test-generation/page-808c27513077aad7.js" async=""></script><meta name="next-size-adjust" content=""/><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div class="h-screen flex flex-col"><div class="border-b bg-card shadow-sm relative z-20 "><div class="px-3 py-2 flex items-center justify-between"><button class="flex items-center gap-2 p-1 pr-2 hover:ring-1 hover:ring-border rounded-sm transition-all"><div style="width:24px;height:24px"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 256 256" preserveAspectRatio="xMidYMid meet">
|
| 2 |
<rect x="0" y="0" width="256" height="256" rx="20" ry="20" fill="#000000"/>
|
| 3 |
<g transform="translate(0,256) scale(0.0476,-0.0476)" fill="#ffffff" stroke="none">
|
| 4 |
<path d="M725 4825 c-50 -18 -100 -71 -114 -122 -15 -54 -15 -1573 0 -1628 16
|
|
|
|
| 36 |
691 22 606 1 658 2 688 19 137 74 130 264 -12 328 -38 18 -85 19 -840 18 -652
|
| 37 |
0 -807 -2 -838 -14z"/>
|
| 38 |
</g>
|
| 39 |
+
</svg></div><span class="font-semibold text-lg hidden md:inline">Model Tester</span></button><div class="flex items-center gap-2 flex-1 justify-center md:justify-start md:ml-6"><h1 class="text-lg font-semibold md:hidden">Model Tester</h1></div><div class="flex items-center gap-2"><div class="hidden md:flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3 justify-start"><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-arrow-left h-4 w-4 mr-2" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Back to Projects</button></div><div class="md:hidden flex items-center gap-2"></div><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50 size-9 h-8 w-8 md:hidden"><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 h-4 w-4" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></div></div><div class="flex-1 overflow-auto bg-background p-6"><div class="max-w-6xl mx-auto"><div class="bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6"><div class="flex items-start gap-3"><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-circle-alert h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><line x1="12" x2="12" y1="8" y2="12"></line><line x1="12" x2="12.01" y1="16" y2="16"></line></svg><div class="flex-1"><h3 class="font-medium text-blue-900 dark:text-blue-100 mb-1">How to Interpret Test Results</h3><p class="text-sm text-blue-800 dark:text-blue-200">These tests validate basic code generation capabilities across different task types. A <strong>passing test</strong> means files were created/modified successfully. A <strong>failing test</strong> indicates the model couldn't complete the task or didn't produce expected outputs.</p><div class="mt-2 text-xs text-blue-700 dark:text-blue-300"><strong>Tip:</strong> Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution.</div></div></div></div><div class="bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6"><div class="flex items-start gap-3"><div class="text-amber-600 dark:text-amber-400 mt-0.5">π‘</div><div class="flex-1"><h3 class="font-medium text-amber-900 dark:text-amber-100 mb-1">Cost Warning</h3><p class="text-sm text-amber-800 dark:text-amber-200">Running these tests can be <strong>very expensive</strong> and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities.</p><p class="text-sm text-amber-800 dark:text-amber-200 mt-2">This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system.</p></div></div></div><div class="grid grid-cols-1 md:grid-cols-4 gap-4 mb-6"><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Total Tests</div><div class="text-2xl font-bold">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Passed</div><div class="text-2xl font-bold text-green-600">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Failed</div><div class="text-2xl font-bold text-red-600">0</div></div><div class="bg-card border rounded-lg p-4"><div class="text-sm font-medium text-muted-foreground mb-1">Success Rate</div><div class="text-2xl font-bold">0.0<!-- -->%</div></div></div><div class="flex gap-4 mb-6"><button data-slot="popover-trigger" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-9 px-4 py-2 has-[>svg]:px-3" type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-Β«Rp3rlbΒ»" data-state="closed"><span>Select Model</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-up h-4 w-4 ml-2" aria-hidden="true"><path d="m18 15-6-6-6 6"></path></svg></button><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive bg-primary text-primary-foreground shadow-xs hover:bg-primary/90 h-9 px-4 py-2 has-[>svg]:px-3"><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-play h-4 w-4 mr-2" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Run Quick Tests (5 tests)</button><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center gap-2 whitespace-nowrap rounded-full text-sm font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-9 px-4 py-2 has-[>svg]:px-3"><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-refresh-cw h-4 w-4 mr-2" aria-hidden="true"><path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"></path><path d="M8 16H3v5"></path></svg>Reset</button></div><div class="grid gap-4"><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add hamburger menu to navbar<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create modal dialog<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a modal dialog that can be opened with a button click. The modal should have a close button a<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add contact form with validation<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a contact form with fields for name, email, and message. Include client-side validation for requ<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create dropdown menu<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with <!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create image carousel<span class="text-sm font-normal text-muted-foreground">(<!-- -->ui<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create an image carousel/slider with next and previous buttons. It should display one image at a tim<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Change background to gradient<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Change the body background to a linear gradient from #ff8c42 to #e65100<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add dark mode toggle<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a dark mode toggle button that switches the entire page between light and dark themes. Store the<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create responsive grid layout<span class="text-sm font-normal text-muted-foreground">(<!-- -->style<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card <!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Add API fetch functionality<span class="text-sm font-normal text-muted-foreground">(<!-- -->javascript<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Create countdown timer<span class="text-sm font-normal text-muted-foreground">(<!-- -->javascript<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include s<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div><div class="bg-card border rounded-lg p-4"><div class="flex items-center justify-between mb-2"><div><div class="flex items-center gap-2 font-medium"><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-clock h-4 w-4 text-gray-400" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>Build a todo list application<span class="text-sm font-normal text-muted-foreground">(<!-- -->complex<!-- -->)</span></div><div class="text-sm text-muted-foreground mt-1">Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, an<!-- -->...</div></div><div class="flex items-center gap-2"><button data-slot="button" class="inline-flex items-center cursor-pointer justify-center whitespace-nowrap font-sans font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 h-8 rounded-full text-[13px] gap-1.5 px-3"><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-play h-3 w-3 mr-1" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg>Test</button></div></div></div></div></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[894,[],\"ClientPageRoot\"]\n8:I[6910,[\"948\",\"static/chunks/06bf0ff1-f728958255a9b8b2.js\",\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"223\",\"static/chunks/223-e2ad216402a57c4d.js\",\"361\",\"static/chunks/361-98f47a14fdb76101.js\",\"932\",\"static/chunks/app/test-generation/page-808c27513077aad7.js\"],\"default\"]\nb:I[9665,[],\"MetadataBoundary\"]\nd:I[9665,[],\"OutletBoundary\"]\n10:I[4911,[],\"AsyncMetadataOutlet\"]\n12:I[9665,[],\"ViewportBoundary\"]\n14:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Zg8wsN0O8R1SmKVNL7M2I\",\"p\":\"\",\"c\":[\"\",\"test-generation\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"test-generation\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"test-generation\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L7\",null,{\"Component\":\"$8\",\"searchParams\":{},\"params\":{},\"promises\":[\"$@9\",\"$@a\"]}],[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],null,[\"$\",\"$Ld\",null,{\"children\":[\"$Le\",\"$Lf\",[\"$\",\"$L10\",null,{\"promise\":\"$@11\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$1\",\"qloa6nwIXR8bV5vAVh61h\",{\"children\":[[\"$\",\"$L12\",null,{\"children\":\"$L13\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$14\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"15:\"$Sreact.suspense\"\n16:I[4911,[],\"AsyncMetadata\"]\n9:{}\na:{}\nc:[\"$\",\"$15\",null,{\"fallback\":null,\"children\":[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]}]\n"])</script><script>self.__next_f.push([1,"f:null\n"])</script><script>self.__next_f.push([1,"13:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\ne:null\n"])</script><script>self.__next_f.push([1,"17:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"11:{\"metadata\":\"$17:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
.next/server/app/test-generation.rsc
CHANGED
|
@@ -5,7 +5,7 @@
|
|
| 5 |
5:I[7555,[],""]
|
| 6 |
6:I[1295,[],""]
|
| 7 |
7:I[894,[],"ClientPageRoot"]
|
| 8 |
-
8:I[6910,["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","
|
| 9 |
b:I[9665,[],"MetadataBoundary"]
|
| 10 |
d:I[9665,[],"OutletBoundary"]
|
| 11 |
10:I[4911,[],"AsyncMetadataOutlet"]
|
|
@@ -15,7 +15,7 @@ d:I[9665,[],"OutletBoundary"]
|
|
| 15 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 16 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 17 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 18 |
-
0:{"P":null,"b":"
|
| 19 |
15:"$Sreact.suspense"
|
| 20 |
16:I[4911,[],"AsyncMetadata"]
|
| 21 |
9:{}
|
|
|
|
| 5 |
5:I[7555,[],""]
|
| 6 |
6:I[1295,[],""]
|
| 7 |
7:I[894,[],"ClientPageRoot"]
|
| 8 |
+
8:I[6910,["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","361","static/chunks/361-98f47a14fdb76101.js","932","static/chunks/app/test-generation/page-808c27513077aad7.js"],"default"]
|
| 9 |
b:I[9665,[],"MetadataBoundary"]
|
| 10 |
d:I[9665,[],"OutletBoundary"]
|
| 11 |
10:I[4911,[],"AsyncMetadataOutlet"]
|
|
|
|
| 15 |
:HL["/_next/static/media/c3f6eb667c0186c5-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 16 |
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
| 17 |
:HL["/_next/static/css/69356a77d73ae38f.css","style"]
|
| 18 |
+
0:{"P":null,"b":"Zg8wsN0O8R1SmKVNL7M2I","p":"","c":["","test-generation"],"i":false,"f":[[["",{"children":["test-generation",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/69356a77d73ae38f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden","suppressHydrationWarning":true,"children":["$","$L2",null,{"children":[["$","$L3",null,{"richColors":true,"position":"bottom-center"}],["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]]}]}]}]]}],{"children":["test-generation",["$","$1","c",{"children":[null,["$","$L5",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],["$","$Lb",null,{"children":"$Lc"}],null,["$","$Ld",null,{"children":["$Le","$Lf",["$","$L10",null,{"promise":"$@11"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","qloa6nwIXR8bV5vAVh61h",{"children":[["$","$L12",null,{"children":"$L13"}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],null]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true}
|
| 19 |
15:"$Sreact.suspense"
|
| 20 |
16:I[4911,[],"AsyncMetadata"]
|
| 21 |
9:{}
|
.next/server/app/test-generation/page.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
| 1 |
-
(()=>{var e={};e.id=932,e.ids=[932],e.modules={846:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},3033:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3295:e=>{"use strict";e.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3633:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>n.a,__next_app__:()=>m,pages:()=>c,routeModule:()=>u,tree:()=>l});var a=s(5239),i=s(8088),r=s(8170),n=s.n(r),o=s(893),d={};for(let e in o)0>["default","tree","pages","GlobalError","__next_app__","routeModule"].indexOf(e)&&(d[e]=()=>o[e]);s.d(t,d);let l={children:["",{children:["test-generation",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,5004)),"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(s.bind(s,8014)),"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,7398,23)),"next/dist/client/components/not-found-error"],forbidden:[()=>Promise.resolve().then(s.t.bind(s,9999,23)),"next/dist/client/components/forbidden-error"],unauthorized:[()=>Promise.resolve().then(s.t.bind(s,5284,23)),"next/dist/client/components/unauthorized-error"]}]}.children,c=["/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx"],m={require:s,loadChunk:()=>Promise.resolve()},u=new a.AppPageRouteModule({definition:{kind:i.RouteKind.APP_PAGE,page:"/test-generation/page",pathname:"/test-generation",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:l}})},3873:e=>{"use strict";e.exports=require("path")},4063:(e,t,s)=>{Promise.resolve().then(s.bind(s,5004))},4628:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>T});var a=s(687),i=s(3210),r=s(4934),n=s(
|
| 2 |
<html lang="en">
|
| 3 |
<head>
|
| 4 |
<meta charset="UTF-8">
|
|
@@ -78,4 +78,4 @@ document.addEventListener('DOMContentLoaded', function() {
|
|
| 78 |
e.preventDefault();
|
| 79 |
});
|
| 80 |
});
|
| 81 |
-
});`,c=[{id:"ui-hamburger-menu",name:"Add hamburger menu to navbar",category:"ui",prompt:"Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px and toggle the navigation menu visibility when clicked.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".hamburger"],expectedPatterns:[/hamburger|menu-toggle|mobile-menu/i,/@media.*max-width.*768px/,/addEventListener.*click/]},{id:"ui-modal-dialog",name:"Create modal dialog",category:"ui",prompt:"Create a modal dialog that can be opened with a button click. The modal should have a close button and clicking outside the modal should also close it.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".modal",".modal-content"],expectedPatterns:[/modal/i,/display:\s*(none|block|flex)/,/addEventListener.*click/,/close|dismiss/i]},{id:"ui-contact-form",name:"Add contact form with validation",category:"ui",prompt:"Add a contact form with fields for name, email, and message. Include client-side validation for required fields and email format.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:["form",'input[type="text"]','input[type="email"]',"textarea",'button[type="submit"]'],expectedPatterns:[/<form/i,/input.*type="email"/i,/textarea/i,/required/i,/validation|validate/i]},{id:"ui-dropdown-menu",name:"Create dropdown menu",category:"ui",prompt:'Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with options: Web Design, Development, and Consulting.',setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".dropdown"],expectedPatterns:[/dropdown/i,/hover|mouseenter|mouseover/i,/Web Design[\s\S]*Development[\s\S]*Consulting/i]},{id:"ui-image-carousel",name:"Create image carousel",category:"ui",prompt:"Create an image carousel/slider with next and previous buttons. It should display one image at a time and cycle through 3 placeholder images.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".carousel"],expectedPatterns:[/carousel|slider/i,/prev|previous/i,/next/i,/addEventListener.*click/]},{id:"style-background-gradient",name:"Change background to gradient",category:"style",prompt:"Change the body background to a linear gradient from #ff8c42 to #e65100",setupFiles:{"/index.html":o,"/styles.css":d},expectedPatterns:[/linear-gradient/i,/#ff8c42/i,/#e65100/i]},{id:"style-dark-mode",name:"Add dark mode toggle",category:"style",prompt:"Add a dark mode toggle button that switches the entire page between light and dark themes. Store the preference in localStorage.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".dark-mode-toggle","#theme-toggle",".theme-switch"],expectedPatterns:[/dark-mode|dark-theme/i,/localStorage/,/toggle|switch/i]},{id:"style-responsive-grid",name:"Create responsive grid layout",category:"style",prompt:"Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card items to demonstrate the layout.",setupFiles:{"/index.html":o,"/styles.css":d},expectedPatterns:[/grid|flex/i,/@media/,/card/i,/column/i]},{id:"js-fetch-api",name:"Add API fetch functionality",category:"javascript",prompt:"Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user names in a list.",setupFiles:{"/index.html":o,"/script.js":l},expectedPatterns:[/fetch/i,/jsonplaceholder/i,/async|then/i,/addEventListener.*click/]},{id:"js-countdown-timer",name:"Create countdown timer",category:"javascript",prompt:"Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include start, stop, and reset buttons.",setupFiles:{"/index.html":o,"/script.js":l},expectedElements:["#timer",".timer-display",".countdown"],expectedPatterns:[/setInterval|setTimeout/i,/clearInterval|clearTimeout/i,/start|stop|reset/i,/countdown|timer/i]},{id:"complex-todo-list",name:"Build a todo list application",category:"complex",prompt:"Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, and filter by all/active/completed. Store tasks in localStorage.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:["input","button",".todo-item",".todo-list"],expectedPatterns:[/todo/i,/localStorage/,/add|delete|remove/i,/complete|done|finished/i,/filter/i],timeout:6e4}];var m=s(5336),u=s(5071),p=s(2688);let x=(0,p.A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var h=s(8122);let g=(0,p.A)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);var f=s(8559),b=s(5891),v=s(3589);let j=(0,p.A)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);var w=s(6189),y=s(2581),k=s(3613),N=s(9929);s(4950);var C=s(1567),A=s(5516);function T(){let e=(0,w.useRouter)(),[t,s]=(0,i.useState)(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),[o,d]=(0,i.useState)(null),[l,p]=(0,i.useState)(new Map),[T,P]=(0,i.useState)(new Map),[S,E]=(0,i.useState)(new Set),M=(0,i.useRef)(new Map),[D,R]=(0,i.useState)({total:0,passed:0,failed:0,successRate:0}),[q,F]=(0,i.useState)(!1),[_,O]=(0,i.useState)(""),$=async e=>{let t=c.find(t=>t.id===e);if(!t)return;let a=Date.now();d(e),E(t=>new Set([...t,e])),s(t=>t.map(t=>t.id===e?{...t,status:"running",generationOutput:""}:t));try{let i=`test-${Date.now()}`,r=new n.t(i,"orchestrator",(t,a)=>{if("assistant_delta"===t&&(a?.text||a?.snapshot)){let t=a.text,i=a.snapshot;P(s=>{let a=new Map(s);if(void 0!==i)a.set(e,i);else if(t){let s=a.get(e)||"";a.set(e,s+t)}return a}),s(s=>s.map(s=>s.id===e?{...s,generationOutput:i||(s.generationOutput||"")+(t||"")}:s)),setTimeout(()=>{let t=M.current.get(e);t&&(t.scrollTop=t.scrollHeight)},0)}},{chatMode:!1});p(t=>{let s=new Map(t);return s.set(e,r),s});let o=await r.execute(t.prompt);s(t=>t.map(t=>t.id===e?{...t,status:o.success?"success":"failed",executionTime:Date.now()-a,errors:o.success?void 0:[o.summary],details:o.summary,filesModified:[],toolCalls:o.conversation?.length||0}:t)),o.success?y.oR.success(`Test passed: ${t.name}`):y.oR.error(`Test failed: ${t.name} - ${o.summary}`)}catch(r){let i=r instanceof Error?r.message:String(r);s(t=>t.map(t=>t.id===e?{...t,status:"failed",executionTime:Date.now()-a,errors:[i],details:`Error: ${i}`}:t)),y.oR.error(`Test error: ${t.name}`)}p(t=>{let s=new Map(t);return s.delete(e),s}),d(null),U()},I=e=>{let t=l.get(e);t&&(t.stop(),y.oR.info(`Stopping test: ${c.find(t=>t.id===e)?.name}`))},L=async()=>{for(let e of["style-background-gradient","ui-hamburger-menu","js-countdown-timer"]){if(null===o)break;await $(e),await new Promise(e=>setTimeout(e,3e3))}},U=()=>{let e=t.filter(e=>"pending"!==e.status&&"running"!==e.status),s=t.filter(e=>"success"===e.status),a=t.filter(e=>"failed"===e.status||"stopped"===e.status);R({total:e.length,passed:s.length,failed:a.length,successRate:e.length>0?s.length/e.length*100:0})},W=e=>{switch(e){case"success":return(0,a.jsx)(m.A,{className:"h-4 w-4 text-green-500"});case"failed":return(0,a.jsx)(u.A,{className:"h-4 w-4 text-red-500"});case"stopped":return(0,a.jsx)(x,{className:"h-4 w-4 text-orange-500"});case"running":return(0,a.jsx)(h.A,{className:"h-4 w-4 text-blue-500 animate-spin"});default:return(0,a.jsx)(g,{className:"h-4 w-4 text-gray-400"})}},z=[{id:"back",label:"Back to Projects",icon:f.A,onClick:()=>e.push("/"),variant:"outline"}];return(0,a.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,a.jsx)(C.j,{leftText:"Model Tester",onLogoClick:()=>e.push("/"),actions:z}),(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-6",children:(0,a.jsxs)("div",{className:"max-w-6xl mx-auto",children:[(0,a.jsx)("div",{className:"bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)(k.A,{className:"h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-blue-900 dark:text-blue-100 mb-1",children:"How to Interpret Test Results"}),(0,a.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-200",children:["These tests validate basic code generation capabilities across different task types. A ",(0,a.jsx)("strong",{children:"passing test"})," means files were created/modified successfully. A ",(0,a.jsx)("strong",{children:"failing test"})," indicates the model couldn't complete the task or didn't produce expected outputs."]}),(0,a.jsxs)("div",{className:"mt-2 text-xs text-blue-700 dark:text-blue-300",children:[(0,a.jsx)("strong",{children:"Tip:"})," Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution."]})]})]})}),(0,a.jsx)("div",{className:"bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("div",{className:"text-amber-600 dark:text-amber-400 mt-0.5",children:"\uD83D\uDCA1"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-100 mb-1",children:"Cost Warning"}),(0,a.jsxs)("p",{className:"text-sm text-amber-800 dark:text-amber-200",children:["Running these tests can be ",(0,a.jsx)("strong",{children:"very expensive"})," and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities."]}),(0,a.jsx)("p",{className:"text-sm text-amber-800 dark:text-amber-200 mt-2",children:"This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system."})]})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4 mb-6",children:[(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Total Tests"}),(0,a.jsx)("div",{className:"text-2xl font-bold",children:D.total})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Passed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-green-600",children:D.passed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Failed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-red-600",children:D.failed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Success Rate"}),(0,a.jsxs)("div",{className:"text-2xl font-bold",children:[D.successRate.toFixed(1),"%"]})]})]}),(0,a.jsxs)("div",{className:"flex gap-4 mb-6",children:[(0,a.jsxs)(A.AM,{open:q,onOpenChange:F,children:[(0,a.jsx)(A.Wv,{asChild:!0,children:(0,a.jsxs)(r.$,{variant:"outline",children:[(0,a.jsx)("span",{children:(e=>{if(!e)return"Select Model";let t=e.split("/");return t[t.length-1].split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")})(_)}),q?(0,a.jsx)(b.A,{className:"h-4 w-4 ml-2"}):(0,a.jsx)(v.A,{className:"h-4 w-4 ml-2"})]})}),(0,a.jsx)(A.hl,{className:"w-96",align:"start",side:"bottom",sideOffset:4,avoidCollisions:!1,children:(0,a.jsx)(N.t,{onClose:()=>F(!1),onModelChange:e=>O(e)})})]}),(0,a.jsxs)(r.$,{onClick:L,disabled:null!==o,children:[(0,a.jsx)(j,{className:"h-4 w-4 mr-2"}),"Run Quick Tests (5 tests)"]}),(0,a.jsxs)(r.$,{variant:"outline",onClick:()=>{l.forEach((e,t)=>{e.stop()}),s(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),R({total:0,passed:0,failed:0,successRate:0}),d(null),p(new Map),P(new Map),E(new Set)},disabled:null!==o,children:[(0,a.jsx)(h.A,{className:"h-4 w-4 mr-2"}),"Reset"]})]}),(0,a.jsx)("div",{className:"grid gap-4",children:t.map(e=>{let t=c.find(t=>t.id===e.id);return(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 font-medium",children:[W(e.status),e.name,(0,a.jsxs)("span",{className:"text-sm font-normal text-muted-foreground",children:["(",t?.category,")"]})]}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground mt-1",children:[t?.prompt.substring(0,100),"..."]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[e.executionTime&&(0,a.jsxs)("span",{className:"text-sm text-muted-foreground",children:[(e.executionTime/1e3).toFixed(1),"s"]}),"running"===e.status&&o===e.id?(0,a.jsxs)(r.$,{size:"sm",variant:"destructive",onClick:()=>I(e.id),children:[(0,a.jsx)(x,{className:"h-3 w-3 mr-1"}),"Stop"]}):(0,a.jsxs)(r.$,{size:"sm",variant:"outline",onClick:()=>$(e.id),disabled:null!==o,children:[(0,a.jsx)(j,{className:"h-3 w-3 mr-1"}),"Test"]}),("running"===e.status||e.generationOutput||S.has(e.id))&&(0,a.jsx)(r.$,{size:"sm",variant:"ghost",onClick:()=>{E(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s})},children:S.has(e.id)?(0,a.jsx)(v.A,{className:"h-3 w-3"}):(0,a.jsx)(b.A,{className:"h-3 w-3"})})]})]}),("running"===e.status||S.has(e.id))&&(e.generationOutput||T.get(e.id))&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground",children:"Generation Output"}),"running"===e.status&&(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(h.A,{className:"h-3 w-3 animate-spin"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:"Generating..."})]})]}),(0,a.jsx)("div",{className:"bg-muted/50 rounded-md p-3 max-h-64 overflow-y-auto",ref:t=>{t&&M.current.set(e.id,t)},children:(0,a.jsx)("pre",{className:"text-xs font-mono whitespace-pre-wrap text-foreground/80",children:e.generationOutput||T.get(e.id)||""})})]}),("success"===e.status||"failed"===e.status||"stopped"===e.status)&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t space-y-2",children:[e.details&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Result:"})," ",e.details]}),void 0!==e.toolCalls&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Tool Calls:"})," ",e.toolCalls]}),e.filesModified&&e.filesModified.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Files:"})," ",e.filesModified.join(", ")]}),e.errors&&e.errors.length>0&&(0,a.jsxs)("div",{className:"text-red-600",children:[(0,a.jsx)("strong",{children:"Errors:"})," ",e.errors.join(", ")]})]})]},e.id)})})]})})]})}},4735:e=>{"use strict";e.exports=require("events")},5004:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>a});let a=(0,s(2907).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx","default")},5511:e=>{"use strict";e.exports=require("crypto")},7910:e=>{"use strict";e.exports=require("stream")},8354:e=>{"use strict";e.exports=require("util")},8487:(e,t,s)=>{Promise.resolve().then(s.bind(s,4628))},9021:e=>{"use strict";e.exports=require("fs")},9121:e=>{"use strict";e.exports=require("next/dist/server/app-render/action-async-storage.external.js")},9294:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9428:e=>{"use strict";e.exports=require("buffer")}};var t=require("../../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),a=t.X(0,[447,55,988,735],()=>s(3633));module.exports=a})();
|
|
|
|
| 1 |
+
(()=>{var e={};e.id=932,e.ids=[932],e.modules={846:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},3033:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},3295:e=>{"use strict";e.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3633:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>n.a,__next_app__:()=>m,pages:()=>c,routeModule:()=>u,tree:()=>l});var a=s(5239),i=s(8088),r=s(8170),n=s.n(r),o=s(893),d={};for(let e in o)0>["default","tree","pages","GlobalError","__next_app__","routeModule"].indexOf(e)&&(d[e]=()=>o[e]);s.d(t,d);let l={children:["",{children:["test-generation",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,5004)),"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(s.bind(s,8014)),"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,7398,23)),"next/dist/client/components/not-found-error"],forbidden:[()=>Promise.resolve().then(s.t.bind(s,9999,23)),"next/dist/client/components/forbidden-error"],unauthorized:[()=>Promise.resolve().then(s.t.bind(s,5284,23)),"next/dist/client/components/unauthorized-error"]}]}.children,c=["/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx"],m={require:s,loadChunk:()=>Promise.resolve()},u=new a.AppPageRouteModule({definition:{kind:i.RouteKind.APP_PAGE,page:"/test-generation/page",pathname:"/test-generation",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:l}})},3873:e=>{"use strict";e.exports=require("path")},4063:(e,t,s)=>{Promise.resolve().then(s.bind(s,5004))},4628:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>T});var a=s(687),i=s(3210),r=s(4934),n=s(356);let o=`<!DOCTYPE html>
|
| 2 |
<html lang="en">
|
| 3 |
<head>
|
| 4 |
<meta charset="UTF-8">
|
|
|
|
| 78 |
e.preventDefault();
|
| 79 |
});
|
| 80 |
});
|
| 81 |
+
});`,c=[{id:"ui-hamburger-menu",name:"Add hamburger menu to navbar",category:"ui",prompt:"Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px and toggle the navigation menu visibility when clicked.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".hamburger"],expectedPatterns:[/hamburger|menu-toggle|mobile-menu/i,/@media.*max-width.*768px/,/addEventListener.*click/]},{id:"ui-modal-dialog",name:"Create modal dialog",category:"ui",prompt:"Create a modal dialog that can be opened with a button click. The modal should have a close button and clicking outside the modal should also close it.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".modal",".modal-content"],expectedPatterns:[/modal/i,/display:\s*(none|block|flex)/,/addEventListener.*click/,/close|dismiss/i]},{id:"ui-contact-form",name:"Add contact form with validation",category:"ui",prompt:"Add a contact form with fields for name, email, and message. Include client-side validation for required fields and email format.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:["form",'input[type="text"]','input[type="email"]',"textarea",'button[type="submit"]'],expectedPatterns:[/<form/i,/input.*type="email"/i,/textarea/i,/required/i,/validation|validate/i]},{id:"ui-dropdown-menu",name:"Create dropdown menu",category:"ui",prompt:'Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with options: Web Design, Development, and Consulting.',setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".dropdown"],expectedPatterns:[/dropdown/i,/hover|mouseenter|mouseover/i,/Web Design[\s\S]*Development[\s\S]*Consulting/i]},{id:"ui-image-carousel",name:"Create image carousel",category:"ui",prompt:"Create an image carousel/slider with next and previous buttons. It should display one image at a time and cycle through 3 placeholder images.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".carousel"],expectedPatterns:[/carousel|slider/i,/prev|previous/i,/next/i,/addEventListener.*click/]},{id:"style-background-gradient",name:"Change background to gradient",category:"style",prompt:"Change the body background to a linear gradient from #ff8c42 to #e65100",setupFiles:{"/index.html":o,"/styles.css":d},expectedPatterns:[/linear-gradient/i,/#ff8c42/i,/#e65100/i]},{id:"style-dark-mode",name:"Add dark mode toggle",category:"style",prompt:"Add a dark mode toggle button that switches the entire page between light and dark themes. Store the preference in localStorage.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:[".dark-mode-toggle","#theme-toggle",".theme-switch"],expectedPatterns:[/dark-mode|dark-theme/i,/localStorage/,/toggle|switch/i]},{id:"style-responsive-grid",name:"Create responsive grid layout",category:"style",prompt:"Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card items to demonstrate the layout.",setupFiles:{"/index.html":o,"/styles.css":d},expectedPatterns:[/grid|flex/i,/@media/,/card/i,/column/i]},{id:"js-fetch-api",name:"Add API fetch functionality",category:"javascript",prompt:"Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user names in a list.",setupFiles:{"/index.html":o,"/script.js":l},expectedPatterns:[/fetch/i,/jsonplaceholder/i,/async|then/i,/addEventListener.*click/]},{id:"js-countdown-timer",name:"Create countdown timer",category:"javascript",prompt:"Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include start, stop, and reset buttons.",setupFiles:{"/index.html":o,"/script.js":l},expectedElements:["#timer",".timer-display",".countdown"],expectedPatterns:[/setInterval|setTimeout/i,/clearInterval|clearTimeout/i,/start|stop|reset/i,/countdown|timer/i]},{id:"complex-todo-list",name:"Build a todo list application",category:"complex",prompt:"Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, and filter by all/active/completed. Store tasks in localStorage.",setupFiles:{"/index.html":o,"/styles.css":d,"/script.js":l},expectedElements:["input","button",".todo-item",".todo-list"],expectedPatterns:[/todo/i,/localStorage/,/add|delete|remove/i,/complete|done|finished/i,/filter/i],timeout:6e4}];var m=s(5336),u=s(5071),p=s(2688);let x=(0,p.A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var h=s(8122);let g=(0,p.A)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);var f=s(8559),b=s(5891),v=s(3589);let j=(0,p.A)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);var w=s(6189),y=s(2581),k=s(3613),N=s(9929);s(4950);var C=s(1567),A=s(5516);function T(){let e=(0,w.useRouter)(),[t,s]=(0,i.useState)(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),[o,d]=(0,i.useState)(null),[l,p]=(0,i.useState)(new Map),[T,P]=(0,i.useState)(new Map),[S,E]=(0,i.useState)(new Set),M=(0,i.useRef)(new Map),[D,R]=(0,i.useState)({total:0,passed:0,failed:0,successRate:0}),[q,F]=(0,i.useState)(!1),[_,O]=(0,i.useState)(""),$=async e=>{let t=c.find(t=>t.id===e);if(!t)return;let a=Date.now();d(e),E(t=>new Set([...t,e])),s(t=>t.map(t=>t.id===e?{...t,status:"running",generationOutput:""}:t));try{let i=`test-${Date.now()}`,r=new n.t(i,"orchestrator",(t,a)=>{if("assistant_delta"===t&&(a?.text||a?.snapshot)){let t=a.text,i=a.snapshot;P(s=>{let a=new Map(s);if(void 0!==i)a.set(e,i);else if(t){let s=a.get(e)||"";a.set(e,s+t)}return a}),s(s=>s.map(s=>s.id===e?{...s,generationOutput:i||(s.generationOutput||"")+(t||"")}:s)),setTimeout(()=>{let t=M.current.get(e);t&&(t.scrollTop=t.scrollHeight)},0)}},{chatMode:!1});p(t=>{let s=new Map(t);return s.set(e,r),s});let o=await r.execute(t.prompt);s(t=>t.map(t=>t.id===e?{...t,status:o.success?"success":"failed",executionTime:Date.now()-a,errors:o.success?void 0:[o.summary],details:o.summary,filesModified:[],toolCalls:o.conversation?.length||0}:t)),o.success?y.oR.success(`Test passed: ${t.name}`):y.oR.error(`Test failed: ${t.name} - ${o.summary}`)}catch(r){let i=r instanceof Error?r.message:String(r);s(t=>t.map(t=>t.id===e?{...t,status:"failed",executionTime:Date.now()-a,errors:[i],details:`Error: ${i}`}:t)),y.oR.error(`Test error: ${t.name}`)}p(t=>{let s=new Map(t);return s.delete(e),s}),d(null),U()},I=e=>{let t=l.get(e);t&&(t.stop(),y.oR.info(`Stopping test: ${c.find(t=>t.id===e)?.name}`))},L=async()=>{for(let e of["style-background-gradient","ui-hamburger-menu","js-countdown-timer"]){if(null===o)break;await $(e),await new Promise(e=>setTimeout(e,3e3))}},U=()=>{let e=t.filter(e=>"pending"!==e.status&&"running"!==e.status),s=t.filter(e=>"success"===e.status),a=t.filter(e=>"failed"===e.status||"stopped"===e.status);R({total:e.length,passed:s.length,failed:a.length,successRate:e.length>0?s.length/e.length*100:0})},W=e=>{switch(e){case"success":return(0,a.jsx)(m.A,{className:"h-4 w-4 text-green-500"});case"failed":return(0,a.jsx)(u.A,{className:"h-4 w-4 text-red-500"});case"stopped":return(0,a.jsx)(x,{className:"h-4 w-4 text-orange-500"});case"running":return(0,a.jsx)(h.A,{className:"h-4 w-4 text-blue-500 animate-spin"});default:return(0,a.jsx)(g,{className:"h-4 w-4 text-gray-400"})}},z=[{id:"back",label:"Back to Projects",icon:f.A,onClick:()=>e.push("/"),variant:"outline"}];return(0,a.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,a.jsx)(C.j,{leftText:"Model Tester",onLogoClick:()=>e.push("/"),actions:z}),(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-6",children:(0,a.jsxs)("div",{className:"max-w-6xl mx-auto",children:[(0,a.jsx)("div",{className:"bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)(k.A,{className:"h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-blue-900 dark:text-blue-100 mb-1",children:"How to Interpret Test Results"}),(0,a.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-200",children:["These tests validate basic code generation capabilities across different task types. A ",(0,a.jsx)("strong",{children:"passing test"})," means files were created/modified successfully. A ",(0,a.jsx)("strong",{children:"failing test"})," indicates the model couldn't complete the task or didn't produce expected outputs."]}),(0,a.jsxs)("div",{className:"mt-2 text-xs text-blue-700 dark:text-blue-300",children:[(0,a.jsx)("strong",{children:"Tip:"})," Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution."]})]})]})}),(0,a.jsx)("div",{className:"bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("div",{className:"text-amber-600 dark:text-amber-400 mt-0.5",children:"\uD83D\uDCA1"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-100 mb-1",children:"Cost Warning"}),(0,a.jsxs)("p",{className:"text-sm text-amber-800 dark:text-amber-200",children:["Running these tests can be ",(0,a.jsx)("strong",{children:"very expensive"})," and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities."]}),(0,a.jsx)("p",{className:"text-sm text-amber-800 dark:text-amber-200 mt-2",children:"This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system."})]})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4 mb-6",children:[(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Total Tests"}),(0,a.jsx)("div",{className:"text-2xl font-bold",children:D.total})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Passed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-green-600",children:D.passed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Failed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-red-600",children:D.failed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Success Rate"}),(0,a.jsxs)("div",{className:"text-2xl font-bold",children:[D.successRate.toFixed(1),"%"]})]})]}),(0,a.jsxs)("div",{className:"flex gap-4 mb-6",children:[(0,a.jsxs)(A.AM,{open:q,onOpenChange:F,children:[(0,a.jsx)(A.Wv,{asChild:!0,children:(0,a.jsxs)(r.$,{variant:"outline",children:[(0,a.jsx)("span",{children:(e=>{if(!e)return"Select Model";let t=e.split("/");return t[t.length-1].split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")})(_)}),q?(0,a.jsx)(b.A,{className:"h-4 w-4 ml-2"}):(0,a.jsx)(v.A,{className:"h-4 w-4 ml-2"})]})}),(0,a.jsx)(A.hl,{className:"w-96",align:"start",side:"bottom",sideOffset:4,avoidCollisions:!1,children:(0,a.jsx)(N.t,{onClose:()=>F(!1),onModelChange:e=>O(e)})})]}),(0,a.jsxs)(r.$,{onClick:L,disabled:null!==o,children:[(0,a.jsx)(j,{className:"h-4 w-4 mr-2"}),"Run Quick Tests (5 tests)"]}),(0,a.jsxs)(r.$,{variant:"outline",onClick:()=>{l.forEach((e,t)=>{e.stop()}),s(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),R({total:0,passed:0,failed:0,successRate:0}),d(null),p(new Map),P(new Map),E(new Set)},disabled:null!==o,children:[(0,a.jsx)(h.A,{className:"h-4 w-4 mr-2"}),"Reset"]})]}),(0,a.jsx)("div",{className:"grid gap-4",children:t.map(e=>{let t=c.find(t=>t.id===e.id);return(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 font-medium",children:[W(e.status),e.name,(0,a.jsxs)("span",{className:"text-sm font-normal text-muted-foreground",children:["(",t?.category,")"]})]}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground mt-1",children:[t?.prompt.substring(0,100),"..."]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[e.executionTime&&(0,a.jsxs)("span",{className:"text-sm text-muted-foreground",children:[(e.executionTime/1e3).toFixed(1),"s"]}),"running"===e.status&&o===e.id?(0,a.jsxs)(r.$,{size:"sm",variant:"destructive",onClick:()=>I(e.id),children:[(0,a.jsx)(x,{className:"h-3 w-3 mr-1"}),"Stop"]}):(0,a.jsxs)(r.$,{size:"sm",variant:"outline",onClick:()=>$(e.id),disabled:null!==o,children:[(0,a.jsx)(j,{className:"h-3 w-3 mr-1"}),"Test"]}),("running"===e.status||e.generationOutput||S.has(e.id))&&(0,a.jsx)(r.$,{size:"sm",variant:"ghost",onClick:()=>{E(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s})},children:S.has(e.id)?(0,a.jsx)(v.A,{className:"h-3 w-3"}):(0,a.jsx)(b.A,{className:"h-3 w-3"})})]})]}),("running"===e.status||S.has(e.id))&&(e.generationOutput||T.get(e.id))&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground",children:"Generation Output"}),"running"===e.status&&(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(h.A,{className:"h-3 w-3 animate-spin"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:"Generating..."})]})]}),(0,a.jsx)("div",{className:"bg-muted/50 rounded-md p-3 max-h-64 overflow-y-auto",ref:t=>{t&&M.current.set(e.id,t)},children:(0,a.jsx)("pre",{className:"text-xs font-mono whitespace-pre-wrap text-foreground/80",children:e.generationOutput||T.get(e.id)||""})})]}),("success"===e.status||"failed"===e.status||"stopped"===e.status)&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t space-y-2",children:[e.details&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Result:"})," ",e.details]}),void 0!==e.toolCalls&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Tool Calls:"})," ",e.toolCalls]}),e.filesModified&&e.filesModified.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Files:"})," ",e.filesModified.join(", ")]}),e.errors&&e.errors.length>0&&(0,a.jsxs)("div",{className:"text-red-600",children:[(0,a.jsx)("strong",{children:"Errors:"})," ",e.errors.join(", ")]})]})]},e.id)})})]})})]})}},4735:e=>{"use strict";e.exports=require("events")},5004:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>a});let a=(0,s(2907).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx","default")},5511:e=>{"use strict";e.exports=require("crypto")},7910:e=>{"use strict";e.exports=require("stream")},8354:e=>{"use strict";e.exports=require("util")},8487:(e,t,s)=>{Promise.resolve().then(s.bind(s,4628))},9021:e=>{"use strict";e.exports=require("fs")},9121:e=>{"use strict";e.exports=require("next/dist/server/app-render/action-async-storage.external.js")},9294:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-async-storage.external.js")},9428:e=>{"use strict";e.exports=require("buffer")}};var t=require("../../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),a=t.X(0,[447,55,988,531],()=>s(3633));module.exports=a})();
|
.next/server/app/test-generation/page.js.nft.json
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../../node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/package.json","../../../package.json","../../chunks/447.js","../../chunks/
|
|
|
|
| 1 |
+
{"version":1,"files":["../../../../node_modules/next/dist/client/components/app-router-headers.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../../node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../node_modules/next/package.json","../../../package.json","../../chunks/447.js","../../chunks/531.js","../../chunks/55.js","../../chunks/988.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
.next/server/app/test-generation/page_client-reference-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/test-generation/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"
|
|
|
|
| 1 |
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/test-generation/page"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{"894":{"*":{"id":"6346","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"7173","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9197","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"7198","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"8827","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"7924","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"3014","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"4593","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"5656","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"4628","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"99","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"8243","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"2763","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-page.js":{"id":894,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/client-segment.js":{"id":4970,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":6614,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":6975,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/layout-router.js":{"id":7555,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/async-metadata.js":{"id":4911,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/metadata/metadata-boundary.js":{"id":9665,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":1295,"name":"*","chunks":[],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/tanstack-query-provider.tsx":{"id":5388,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/providers/theme-provider.tsx":{"id":1321,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/components/ui/sonner.tsx":{"id":5851,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"variable\":\"--font-inter-sans\",\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"}":{"id":9755,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/node_modules/next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"PT_Sans\",\"arguments\":[{\"variable\":\"--font-ptSans-mono\",\"subsets\":[\"latin\"],\"weight\":[\"400\",\"700\"]}],\"variableName\":\"ptSans\"}":{"id":6382,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/assets/globals.css":{"id":5410,"name":"*","chunks":["671","static/chunks/671-f7ad2a6bc6db0f05.js","138","static/chunks/138-9f738090dc749a6c.js","177","static/chunks/app/layout-4145df182a98063f.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page.tsx":{"id":2454,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","316","static/chunks/ad2866b8-eb5f2e8eab9b0b0c.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","881","static/chunks/881-a5079ad8eddecb86.js","361","static/chunks/361-98f47a14fdb76101.js","974","static/chunks/app/page-a3b80d89e3b52b3d.js"],"async":false},"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page.tsx":{"id":6910,"name":"*","chunks":["948","static/chunks/06bf0ff1-f728958255a9b8b2.js","671","static/chunks/671-f7ad2a6bc6db0f05.js","223","static/chunks/223-e2ad216402a57c4d.js","361","static/chunks/361-98f47a14fdb76101.js","932","static/chunks/app/test-generation/page-808c27513077aad7.js"],"async":false}},"entryCSSFiles":{"/Users/otto/Desktop/deepstudio/osw-studio-git/":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/layout":[{"inlined":false,"path":"static/css/69356a77d73ae38f.css"}],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/page":[],"/Users/otto/Desktop/deepstudio/osw-studio-git/app/test-generation/page":[]},"rscModuleMapping":{"894":{"*":{"id":"6444","name":"*","chunks":[],"async":false}},"1295":{"*":{"id":"1307","name":"*","chunks":[],"async":false}},"1321":{"*":{"id":"9035","name":"*","chunks":[],"async":false}},"2454":{"*":{"id":"597","name":"*","chunks":[],"async":false}},"4911":{"*":{"id":"2089","name":"*","chunks":[],"async":false}},"4970":{"*":{"id":"6042","name":"*","chunks":[],"async":false}},"5388":{"*":{"id":"1900","name":"*","chunks":[],"async":false}},"5410":{"*":{"id":"4348","name":"*","chunks":[],"async":false}},"5851":{"*":{"id":"363","name":"*","chunks":[],"async":false}},"6614":{"*":{"id":"8170","name":"*","chunks":[],"async":false}},"6910":{"*":{"id":"5004","name":"*","chunks":[],"async":false}},"6975":{"*":{"id":"9477","name":"*","chunks":[],"async":false}},"7555":{"*":{"id":"9345","name":"*","chunks":[],"async":false}},"9665":{"*":{"id":"6577","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{}}
|
.next/server/chunks/{735.js β 531.js}
RENAMED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/server/chunks/988.js
CHANGED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/server/middleware-react-loadable-manifest.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
self.__REACT_LOADABLE_MANIFEST='{"lib/llm/debug-events-state.ts -> @/lib/vfs":{"id":9396,"files":[]},"lib/vfs/backup-service.ts -> @/lib/vfs":{"id":9396,"files":[]}}';
|
|
|
|
| 1 |
+
self.__REACT_LOADABLE_MANIFEST='{"components/guided-tour/context.tsx -> @/lib/vfs":{"id":9396,"files":[]},"lib/llm/debug-events-state.ts -> @/lib/vfs":{"id":9396,"files":[]},"lib/vfs/backup-service.ts -> @/lib/vfs":{"id":9396,"files":[]}}';
|
.next/server/pages-manifest.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
-
"/_app": "pages/_app.js",
|
| 3 |
"/_error": "pages/_error.js",
|
|
|
|
| 4 |
"/_document": "pages/_document.js",
|
| 5 |
"/404": "pages/404.html"
|
| 6 |
}
|
|
|
|
| 1 |
{
|
|
|
|
| 2 |
"/_error": "pages/_error.js",
|
| 3 |
+
"/_app": "pages/_app.js",
|
| 4 |
"/_document": "pages/_document.js",
|
| 5 |
"/404": "pages/404.html"
|
| 6 |
}
|
.next/server/pages/404.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[9665,[],\"MetadataBoundary\"]\n9:I[9665,[],\"OutletBoundary\"]\nc:I[4911,[],\"AsyncMetadataOutlet\"]\ne:I[9665,[],\"ViewportBoundary\"]\n10:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"dIkY_P_0xrp8eCwX8TgWC\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",\"$Lb\",[\"$\",\"$Lc\",null,{\"promise\":\"$@d\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"7kE0FUuYHxKgwrRwthcDn\",{\"children\":[[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:\"$Sreact.suspense\"\n12:I[4911,[],\"AsyncMetadata\"]\n8:[\"$\",\"$11\",null,{\"fallback\":null,\"children\":[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]}]\n"])</script><script>self.__next_f.push([1,"b:null\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"13:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:{\"metadata\":\"$13:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
|
|
|
| 1 |
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/><link rel="preload" href="/_next/static/media/58f662ed5ba12a72-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c3f6eb667c0186c5-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e4af272ccee01ff0-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/69356a77d73ae38f.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js"/><script src="/_next/static/chunks/4bd1b696-3c15e5f54330ea53.js" async=""></script><script src="/_next/static/chunks/684-83d67de51b1d51a2.js" async=""></script><script src="/_next/static/chunks/main-app-f3f767ad51e50725.js" async=""></script><script src="/_next/static/chunks/671-f7ad2a6bc6db0f05.js" async=""></script><script src="/_next/static/chunks/138-9f738090dc749a6c.js" async=""></script><script src="/_next/static/chunks/app/layout-4145df182a98063f.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><meta name="theme-color" content="#000000"/><title>Open Source Web Studio | Agentic AI Development π¨</title><meta name="description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-title" content="OSW-Studio"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta property="og:title" content="Open Source Web Studio | Agentic AI Development π¨"/><meta property="og:description" content="Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta property="og:url" content="https://huggingface.co/spaces/otst/osw-studio"/><meta property="og:site_name" content="Open Source Web Studio"/><meta property="og:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Open Source Web Studio - Agentic AI Development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="OSW-Studio | Agentic AI Development π¨"/><meta name="twitter:description" content="OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language."/><meta name="twitter:image" content="https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png"/><link rel="shortcut icon" href="/osw-studio-logo.svg"/><link rel="icon" href="/osw-studio-logo.svg"/><link rel="apple-touch-icon" href="/osw-studio-logo.svg"/><script>document.querySelectorAll('body link[rel="icon"], body link[rel="apple-touch-icon"]').forEach(el => document.head.appendChild(el))</script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden"><script>((e,t,r,n,a,o,i,s)=>{let u=document.documentElement,l=["light","dark"];function c(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,n=r&&o?a.map(e=>o[e]||e):a;r?(u.classList.remove(...n),u.classList.add(o&&o[t]?o[t]:t)):u.setAttribute(e,t)}),r=t,s&&l.includes(r)&&(u.style.colorScheme=r)}if(n)c(n);else try{let e=localStorage.getItem(t)||r,n=i&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;c(n)}catch(e){}})("class","osw-studio-theme","dark",null,["light","dark"],null,true,true)</script><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><!--$--><!--/$--><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[1321,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"ThemeProvider\"]\n3:I[5851,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"Toaster\"]\n4:I[5388,[\"671\",\"static/chunks/671-f7ad2a6bc6db0f05.js\",\"138\",\"static/chunks/138-9f738090dc749a6c.js\",\"177\",\"static/chunks/app/layout-4145df182a98063f.js\"],\"default\"]\n5:I[7555,[],\"\"]\n6:I[1295,[],\"\"]\n7:I[9665,[],\"MetadataBoundary\"]\n9:I[9665,[],\"OutletBoundary\"]\nc:I[4911,[],\"AsyncMetadataOutlet\"]\ne:I[9665,[],\"ViewportBoundary\"]\n10:I[6614,[],\"\"]\n:HL[\"/_next/static/media/58f662ed5ba12a72-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/c3f6eb667c0186c5-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/69356a77d73ae38f.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"Zg8wsN0O8R1SmKVNL7M2I\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/69356a77d73ae38f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"__variable_f367f3 __variable_438d47 antialiased bg-background h-[100dvh] overflow-hidden\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{\"richColors\":true,\"position\":\"bottom-center\"}],[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:1:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[\"$\",\"$L7\",null,{\"children\":\"$L8\"}],null,[\"$\",\"$L9\",null,{\"children\":[\"$La\",\"$Lb\",[\"$\",\"$Lc\",null,{\"promise\":\"$@d\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$1\",\"lmnrRQPH2jDhuHuHta7F7\",{\"children\":[[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$10\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:\"$Sreact.suspense\"\n12:I[4911,[],\"AsyncMetadata\"]\n8:[\"$\",\"$11\",null,{\"fallback\":null,\"children\":[\"$\",\"$L12\",null,{\"promise\":\"$@13\"}]}]\n"])</script><script>self.__next_f.push([1,"b:null\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, maximum-scale=1\"}],[\"$\",\"meta\",\"2\",{\"name\":\"theme-color\",\"content\":\"#000000\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"13:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"mobile-web-app-capable\",\"content\":\"yes\"}],[\"$\",\"meta\",\"3\",{\"name\":\"apple-mobile-web-app-title\",\"content\":\"OSW-Studio\"}],[\"$\",\"meta\",\"4\",{\"name\":\"apple-mobile-web-app-status-bar-style\",\"content\":\"black-translucent\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Open Source Web Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Open Source Web Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Open Source Web Studio\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"Open Source Web Studio - Agentic AI Development\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"OSW-Studio | Agentic AI Development π¨\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"OSW-Studio is an AI-powered development environment that enables autonomous multi-file development through intelligent tool usage. Build complete applications with natural language.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://huggingface.co/spaces/otst/osw-studio/resolve/main/banner.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"shortcut icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"18\",{\"rel\":\"icon\",\"href\":\"/osw-studio-logo.svg\"}],[\"$\",\"link\",\"19\",{\"rel\":\"apple-touch-icon\",\"href\":\"/osw-studio-logo.svg\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:{\"metadata\":\"$13:metadata\",\"error\":null,\"digest\":\"$undefined\"}\n"])</script></body></html>
|
.next/server/pages/500.html
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" defer=""></script><script src="/_next/static/chunks/framework-2d12aff0ba6f0c95.js" defer=""></script><script src="/_next/static/chunks/main-cd66bd6da89f9c26.js" defer=""></script><script src="/_next/static/chunks/pages/_app-da15c11dea942c36.js" defer=""></script><script src="/_next/static/chunks/pages/_error-cc3f077a18ea1793.js" defer=""></script><script src="/_next/static/
|
|
|
|
| 1 |
+
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-5d4f0cacdd7dc40f.js" defer=""></script><script src="/_next/static/chunks/framework-2d12aff0ba6f0c95.js" defer=""></script><script src="/_next/static/chunks/main-cd66bd6da89f9c26.js" defer=""></script><script src="/_next/static/chunks/pages/_app-da15c11dea942c36.js" defer=""></script><script src="/_next/static/chunks/pages/_error-cc3f077a18ea1793.js" defer=""></script><script src="/_next/static/Zg8wsN0O8R1SmKVNL7M2I/_buildManifest.js" defer=""></script><script src="/_next/static/Zg8wsN0O8R1SmKVNL7M2I/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"Zg8wsN0O8R1SmKVNL7M2I","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
|
.next/static/{dIkY_P_0xrp8eCwX8TgWC β Zg8wsN0O8R1SmKVNL7M2I}/_buildManifest.js
RENAMED
|
File without changes
|
.next/static/{dIkY_P_0xrp8eCwX8TgWC β Zg8wsN0O8R1SmKVNL7M2I}/_ssgManifest.js
RENAMED
|
File without changes
|
.next/static/chunks/361-98f47a14fdb76101.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/static/chunks/856-f7e6d25ec70892ad.js
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/static/chunks/app/page-33ed5a208c1db998.js
DELETED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/static/chunks/app/page-a3b80d89e3b52b3d.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
.next/static/chunks/app/test-generation/{page-37b499a4e163fb58.js β page-808c27513077aad7.js}
RENAMED
|
@@ -1 +1 @@
|
|
| 1 |
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[932],{1905:(e,t,s)=>{Promise.resolve().then(s.bind(s,6910))},6910:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>T});var a=s(5155),n=s(2115),i=s(7168),r=s(7793);let l='<!DOCTYPE html>\n<html lang="en">\n<head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <title>Test App</title>\n <style>\n * {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n body {\n font-family: Arial, sans-serif;\n line-height: 1.6;\n }\n nav {\n background: #333;\n color: white;\n padding: 1rem;\n }\n nav ul {\n list-style: none;\n display: flex;\n gap: 2rem;\n }\n nav a {\n color: white;\n text-decoration: none;\n }\n main {\n padding: 2rem;\n }\n </style>\n</head>\n<body>\n <nav>\n <ul>\n <li><a href="#home">Home</a></li>\n <li><a href="#about">About</a></li>\n <li><a href="#services">Services</a></li>\n <li><a href="#contact">Contact</a></li>\n </ul>\n </nav>\n <main>\n <h1>Welcome to Test App</h1>\n <p>This is a test application for validating code generation.</p>\n </main>\n <script>\n <\/script>\n</body>\n</html>',d="/* Additional styles */\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.btn {\n display: inline-block;\n padding: 10px 20px;\n background: #007bff;\n color: white;\n text-decoration: none;\n border-radius: 5px;\n border: none;\n cursor: pointer;\n}\n\n.btn:hover {\n background: #0056b3;\n}",o="\ndocument.addEventListener('DOMContentLoaded', function() {\n \n const navLinks = document.querySelectorAll('nav a');\n navLinks.forEach(link => {\n link.addEventListener('click', function(e) {\n e.preventDefault();\n });\n });\n});",c=[{id:"ui-hamburger-menu",name:"Add hamburger menu to navbar",category:"ui",prompt:"Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px and toggle the navigation menu visibility when clicked.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".hamburger"],expectedPatterns:[/hamburger|menu-toggle|mobile-menu/i,/@media.*max-width.*768px/,/addEventListener.*click/]},{id:"ui-modal-dialog",name:"Create modal dialog",category:"ui",prompt:"Create a modal dialog that can be opened with a button click. The modal should have a close button and clicking outside the modal should also close it.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".modal",".modal-content"],expectedPatterns:[/modal/i,/display:\s*(none|block|flex)/,/addEventListener.*click/,/close|dismiss/i]},{id:"ui-contact-form",name:"Add contact form with validation",category:"ui",prompt:"Add a contact form with fields for name, email, and message. Include client-side validation for required fields and email format.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:["form",'input[type="text"]','input[type="email"]',"textarea",'button[type="submit"]'],expectedPatterns:[/<form/i,/input.*type="email"/i,/textarea/i,/required/i,/validation|validate/i]},{id:"ui-dropdown-menu",name:"Create dropdown menu",category:"ui",prompt:'Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with options: Web Design, Development, and Consulting.',setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".dropdown"],expectedPatterns:[/dropdown/i,/hover|mouseenter|mouseover/i,/Web Design[\s\S]*Development[\s\S]*Consulting/i]},{id:"ui-image-carousel",name:"Create image carousel",category:"ui",prompt:"Create an image carousel/slider with next and previous buttons. It should display one image at a time and cycle through 3 placeholder images.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".carousel"],expectedPatterns:[/carousel|slider/i,/prev|previous/i,/next/i,/addEventListener.*click/]},{id:"style-background-gradient",name:"Change background to gradient",category:"style",prompt:"Change the body background to a linear gradient from #ff8c42 to #e65100",setupFiles:{"/index.html":l,"/styles.css":d},expectedPatterns:[/linear-gradient/i,/#ff8c42/i,/#e65100/i]},{id:"style-dark-mode",name:"Add dark mode toggle",category:"style",prompt:"Add a dark mode toggle button that switches the entire page between light and dark themes. Store the preference in localStorage.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".dark-mode-toggle","#theme-toggle",".theme-switch"],expectedPatterns:[/dark-mode|dark-theme/i,/localStorage/,/toggle|switch/i]},{id:"style-responsive-grid",name:"Create responsive grid layout",category:"style",prompt:"Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card items to demonstrate the layout.",setupFiles:{"/index.html":l,"/styles.css":d},expectedPatterns:[/grid|flex/i,/@media/,/card/i,/column/i]},{id:"js-fetch-api",name:"Add API fetch functionality",category:"javascript",prompt:"Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user names in a list.",setupFiles:{"/index.html":l,"/script.js":o},expectedPatterns:[/fetch/i,/jsonplaceholder/i,/async|then/i,/addEventListener.*click/]},{id:"js-countdown-timer",name:"Create countdown timer",category:"javascript",prompt:"Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include start, stop, and reset buttons.",setupFiles:{"/index.html":l,"/script.js":o},expectedElements:["#timer",".timer-display",".countdown"],expectedPatterns:[/setInterval|setTimeout/i,/clearInterval|clearTimeout/i,/start|stop|reset/i,/countdown|timer/i]},{id:"complex-todo-list",name:"Build a todo list application",category:"complex",prompt:"Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, and filter by all/active/completed. Store tasks in localStorage.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:["input","button",".todo-item",".todo-list"],expectedPatterns:[/todo/i,/localStorage/,/add|delete|remove/i,/complete|done|finished/i,/filter/i],timeout:6e4}];var m=s(646),u=s(4861),p=s(9946);let h=(0,p.A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var x=s(3904);let g=(0,p.A)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);var f=s(7550),b=s(6474),v=s(7863);let j=(0,p.A)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);var w=s(5695),y=s(6671),k=s(5339),N=s(9052),C=s(8202),A=s(9945),S=s(823);function T(){let e=(0,w.useRouter)(),[t,s]=(0,n.useState)(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),[l,d]=(0,n.useState)(null),[o,p]=(0,n.useState)(new Map),[T,E]=(0,n.useState)(new Map),[M,P]=(0,n.useState)(new Set),F=(0,n.useRef)(new Map),[R,D]=(0,n.useState)({total:0,passed:0,failed:0,successRate:0}),[O,L]=(0,n.useState)(!1),[I,W]=(0,n.useState)("");(0,n.useEffect)(()=>{W(C.s.getDefaultModel())},[]);let _=async e=>{let t=c.find(t=>t.id===e);if(!t)return;let a=Date.now();d(e),P(t=>new Set([...t,e])),s(t=>t.map(t=>t.id===e?{...t,status:"running",generationOutput:""}:t));try{let n="test-".concat(Date.now()),i=new r.t(n,"orchestrator",(t,a)=>{if("assistant_delta"===t&&((null==a?void 0:a.text)||(null==a?void 0:a.snapshot))){let t=a.text,n=a.snapshot;E(s=>{let a=new Map(s);if(void 0!==n)a.set(e,n);else if(t){let s=a.get(e)||"";a.set(e,s+t)}return a}),s(s=>s.map(s=>s.id===e?{...s,generationOutput:n||(s.generationOutput||"")+(t||"")}:s)),setTimeout(()=>{let t=F.current.get(e);t&&(t.scrollTop=t.scrollHeight)},0)}},{chatMode:!1});p(t=>{let s=new Map(t);return s.set(e,i),s});let l=await i.execute(t.prompt);s(t=>t.map(t=>{var s;return t.id===e?{...t,status:l.success?"success":"failed",executionTime:Date.now()-a,errors:l.success?void 0:[l.summary],details:l.summary,filesModified:[],toolCalls:(null==(s=l.conversation)?void 0:s.length)||0}:t})),l.success?y.oR.success("Test passed: ".concat(t.name)):y.oR.error("Test failed: ".concat(t.name," - ").concat(l.summary))}catch(i){let n=i instanceof Error?i.message:String(i);s(t=>t.map(t=>t.id===e?{...t,status:"failed",executionTime:Date.now()-a,errors:[n],details:"Error: ".concat(n)}:t)),y.oR.error("Test error: ".concat(t.name))}p(t=>{let s=new Map(t);return s.delete(e),s}),d(null),z()},$=e=>{let t=o.get(e);if(t){var s;t.stop(),y.oR.info("Stopping test: ".concat(null==(s=c.find(t=>t.id===e))?void 0:s.name))}},q=async()=>{for(let e of["style-background-gradient","ui-hamburger-menu","js-countdown-timer"]){if(null===l)break;await _(e),await new Promise(e=>setTimeout(e,3e3))}},z=()=>{let e=t.filter(e=>"pending"!==e.status&&"running"!==e.status),s=t.filter(e=>"success"===e.status),a=t.filter(e=>"failed"===e.status||"stopped"===e.status);D({total:e.length,passed:s.length,failed:a.length,successRate:e.length>0?s.length/e.length*100:0})},B=e=>{switch(e){case"success":return(0,a.jsx)(m.A,{className:"h-4 w-4 text-green-500"});case"failed":return(0,a.jsx)(u.A,{className:"h-4 w-4 text-red-500"});case"stopped":return(0,a.jsx)(h,{className:"h-4 w-4 text-orange-500"});case"running":return(0,a.jsx)(x.A,{className:"h-4 w-4 text-blue-500 animate-spin"});default:return(0,a.jsx)(g,{className:"h-4 w-4 text-gray-400"})}},H=[{id:"back",label:"Back to Projects",icon:f.A,onClick:()=>e.push("/"),variant:"outline"}];return(0,a.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,a.jsx)(A.j,{leftText:"Model Tester",onLogoClick:()=>e.push("/"),actions:H}),(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-6",children:(0,a.jsxs)("div",{className:"max-w-6xl mx-auto",children:[(0,a.jsx)("div",{className:"bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)(k.A,{className:"h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-blue-900 dark:text-blue-100 mb-1",children:"How to Interpret Test Results"}),(0,a.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-200",children:["These tests validate basic code generation capabilities across different task types. A ",(0,a.jsx)("strong",{children:"passing test"})," means files were created/modified successfully. A ",(0,a.jsx)("strong",{children:"failing test"})," indicates the model couldn't complete the task or didn't produce expected outputs."]}),(0,a.jsxs)("div",{className:"mt-2 text-xs text-blue-700 dark:text-blue-300",children:[(0,a.jsx)("strong",{children:"Tip:"})," Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution."]})]})]})}),(0,a.jsx)("div",{className:"bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("div",{className:"text-amber-600 dark:text-amber-400 mt-0.5",children:"\uD83D\uDCA1"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-100 mb-1",children:"Cost Warning"}),(0,a.jsxs)("p",{className:"text-sm text-amber-800 dark:text-amber-200",children:["Running these tests can be ",(0,a.jsx)("strong",{children:"very expensive"})," and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities."]}),(0,a.jsx)("p",{className:"text-sm text-amber-800 dark:text-amber-200 mt-2",children:"This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system."})]})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4 mb-6",children:[(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Total Tests"}),(0,a.jsx)("div",{className:"text-2xl font-bold",children:R.total})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Passed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-green-600",children:R.passed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Failed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-red-600",children:R.failed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Success Rate"}),(0,a.jsxs)("div",{className:"text-2xl font-bold",children:[R.successRate.toFixed(1),"%"]})]})]}),(0,a.jsxs)("div",{className:"flex gap-4 mb-6",children:[(0,a.jsxs)(S.AM,{open:O,onOpenChange:L,children:[(0,a.jsx)(S.Wv,{asChild:!0,children:(0,a.jsxs)(i.$,{variant:"outline",children:[(0,a.jsx)("span",{children:(e=>{if(!e)return"Select Model";let t=e.split("/");return t[t.length-1].split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")})(I)}),O?(0,a.jsx)(b.A,{className:"h-4 w-4 ml-2"}):(0,a.jsx)(v.A,{className:"h-4 w-4 ml-2"})]})}),(0,a.jsx)(S.hl,{className:"w-96",align:"start",side:"bottom",sideOffset:4,avoidCollisions:!1,children:(0,a.jsx)(N.t,{onClose:()=>L(!1),onModelChange:e=>W(e)})})]}),(0,a.jsxs)(i.$,{onClick:q,disabled:null!==l,children:[(0,a.jsx)(j,{className:"h-4 w-4 mr-2"}),"Run Quick Tests (5 tests)"]}),(0,a.jsxs)(i.$,{variant:"outline",onClick:()=>{o.forEach((e,t)=>{e.stop()}),s(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),D({total:0,passed:0,failed:0,successRate:0}),d(null),p(new Map),E(new Map),P(new Set)},disabled:null!==l,children:[(0,a.jsx)(x.A,{className:"h-4 w-4 mr-2"}),"Reset"]})]}),(0,a.jsx)("div",{className:"grid gap-4",children:t.map(e=>{let t=c.find(t=>t.id===e.id);return(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 font-medium",children:[B(e.status),e.name,(0,a.jsxs)("span",{className:"text-sm font-normal text-muted-foreground",children:["(",null==t?void 0:t.category,")"]})]}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground mt-1",children:[null==t?void 0:t.prompt.substring(0,100),"..."]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[e.executionTime&&(0,a.jsxs)("span",{className:"text-sm text-muted-foreground",children:[(e.executionTime/1e3).toFixed(1),"s"]}),"running"===e.status&&l===e.id?(0,a.jsxs)(i.$,{size:"sm",variant:"destructive",onClick:()=>$(e.id),children:[(0,a.jsx)(h,{className:"h-3 w-3 mr-1"}),"Stop"]}):(0,a.jsxs)(i.$,{size:"sm",variant:"outline",onClick:()=>_(e.id),disabled:null!==l,children:[(0,a.jsx)(j,{className:"h-3 w-3 mr-1"}),"Test"]}),("running"===e.status||e.generationOutput||M.has(e.id))&&(0,a.jsx)(i.$,{size:"sm",variant:"ghost",onClick:()=>{P(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s})},children:M.has(e.id)?(0,a.jsx)(v.A,{className:"h-3 w-3"}):(0,a.jsx)(b.A,{className:"h-3 w-3"})})]})]}),("running"===e.status||M.has(e.id))&&(e.generationOutput||T.get(e.id))&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground",children:"Generation Output"}),"running"===e.status&&(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:"Generating..."})]})]}),(0,a.jsx)("div",{className:"bg-muted/50 rounded-md p-3 max-h-64 overflow-y-auto",ref:t=>{t&&F.current.set(e.id,t)},children:(0,a.jsx)("pre",{className:"text-xs font-mono whitespace-pre-wrap text-foreground/80",children:e.generationOutput||T.get(e.id)||""})})]}),("success"===e.status||"failed"===e.status||"stopped"===e.status)&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t space-y-2",children:[e.details&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Result:"})," ",e.details]}),void 0!==e.toolCalls&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Tool Calls:"})," ",e.toolCalls]}),e.filesModified&&e.filesModified.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Files:"})," ",e.filesModified.join(", ")]}),e.errors&&e.errors.length>0&&(0,a.jsxs)("div",{className:"text-red-600",children:[(0,a.jsx)("strong",{children:"Errors:"})," ",e.errors.join(", ")]})]})]},e.id)})})]})})]})}}},e=>{var t=t=>e(e.s=t);e.O(0,[948,671,223,856,441,684,358],()=>t(1905)),_N_E=e.O()}]);
|
|
|
|
| 1 |
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[932],{1905:(e,t,s)=>{Promise.resolve().then(s.bind(s,6910))},6910:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>T});var a=s(5155),n=s(2115),i=s(7168),r=s(4440);let l='<!DOCTYPE html>\n<html lang="en">\n<head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <title>Test App</title>\n <style>\n * {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n }\n body {\n font-family: Arial, sans-serif;\n line-height: 1.6;\n }\n nav {\n background: #333;\n color: white;\n padding: 1rem;\n }\n nav ul {\n list-style: none;\n display: flex;\n gap: 2rem;\n }\n nav a {\n color: white;\n text-decoration: none;\n }\n main {\n padding: 2rem;\n }\n </style>\n</head>\n<body>\n <nav>\n <ul>\n <li><a href="#home">Home</a></li>\n <li><a href="#about">About</a></li>\n <li><a href="#services">Services</a></li>\n <li><a href="#contact">Contact</a></li>\n </ul>\n </nav>\n <main>\n <h1>Welcome to Test App</h1>\n <p>This is a test application for validating code generation.</p>\n </main>\n <script>\n <\/script>\n</body>\n</html>',d="/* Additional styles */\n.container {\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.btn {\n display: inline-block;\n padding: 10px 20px;\n background: #007bff;\n color: white;\n text-decoration: none;\n border-radius: 5px;\n border: none;\n cursor: pointer;\n}\n\n.btn:hover {\n background: #0056b3;\n}",o="\ndocument.addEventListener('DOMContentLoaded', function() {\n \n const navLinks = document.querySelectorAll('nav a');\n navLinks.forEach(link => {\n link.addEventListener('click', function(e) {\n e.preventDefault();\n });\n });\n});",c=[{id:"ui-hamburger-menu",name:"Add hamburger menu to navbar",category:"ui",prompt:"Add a mobile hamburger menu to the navbar. The hamburger should appear on screens smaller than 768px and toggle the navigation menu visibility when clicked.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".hamburger"],expectedPatterns:[/hamburger|menu-toggle|mobile-menu/i,/@media.*max-width.*768px/,/addEventListener.*click/]},{id:"ui-modal-dialog",name:"Create modal dialog",category:"ui",prompt:"Create a modal dialog that can be opened with a button click. The modal should have a close button and clicking outside the modal should also close it.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".modal",".modal-content"],expectedPatterns:[/modal/i,/display:\s*(none|block|flex)/,/addEventListener.*click/,/close|dismiss/i]},{id:"ui-contact-form",name:"Add contact form with validation",category:"ui",prompt:"Add a contact form with fields for name, email, and message. Include client-side validation for required fields and email format.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:["form",'input[type="text"]','input[type="email"]',"textarea",'button[type="submit"]'],expectedPatterns:[/<form/i,/input.*type="email"/i,/textarea/i,/required/i,/validation|validate/i]},{id:"ui-dropdown-menu",name:"Create dropdown menu",category:"ui",prompt:'Create a dropdown menu for the navigation. When hovering over "Services" link, show a dropdown with options: Web Design, Development, and Consulting.',setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".dropdown"],expectedPatterns:[/dropdown/i,/hover|mouseenter|mouseover/i,/Web Design[\s\S]*Development[\s\S]*Consulting/i]},{id:"ui-image-carousel",name:"Create image carousel",category:"ui",prompt:"Create an image carousel/slider with next and previous buttons. It should display one image at a time and cycle through 3 placeholder images.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".carousel"],expectedPatterns:[/carousel|slider/i,/prev|previous/i,/next/i,/addEventListener.*click/]},{id:"style-background-gradient",name:"Change background to gradient",category:"style",prompt:"Change the body background to a linear gradient from #ff8c42 to #e65100",setupFiles:{"/index.html":l,"/styles.css":d},expectedPatterns:[/linear-gradient/i,/#ff8c42/i,/#e65100/i]},{id:"style-dark-mode",name:"Add dark mode toggle",category:"style",prompt:"Add a dark mode toggle button that switches the entire page between light and dark themes. Store the preference in localStorage.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:[".dark-mode-toggle","#theme-toggle",".theme-switch"],expectedPatterns:[/dark-mode|dark-theme/i,/localStorage/,/toggle|switch/i]},{id:"style-responsive-grid",name:"Create responsive grid layout",category:"style",prompt:"Create a responsive grid layout with 3 columns on desktop, 2 on tablet, and 1 on mobile. Add 6 card items to demonstrate the layout.",setupFiles:{"/index.html":l,"/styles.css":d},expectedPatterns:[/grid|flex/i,/@media/,/card/i,/column/i]},{id:"js-fetch-api",name:"Add API fetch functionality",category:"javascript",prompt:"Add a button that fetches data from https://jsonplaceholder.typicode.com/users and displays the user names in a list.",setupFiles:{"/index.html":l,"/script.js":o},expectedPatterns:[/fetch/i,/jsonplaceholder/i,/async|then/i,/addEventListener.*click/]},{id:"js-countdown-timer",name:"Create countdown timer",category:"javascript",prompt:"Create a countdown timer that counts down from 60 seconds and displays the remaining time. Include start, stop, and reset buttons.",setupFiles:{"/index.html":l,"/script.js":o},expectedElements:["#timer",".timer-display",".countdown"],expectedPatterns:[/setInterval|setTimeout/i,/clearInterval|clearTimeout/i,/start|stop|reset/i,/countdown|timer/i]},{id:"complex-todo-list",name:"Build a todo list application",category:"complex",prompt:"Build a todo list application with the ability to add tasks, mark them as complete, delete tasks, and filter by all/active/completed. Store tasks in localStorage.",setupFiles:{"/index.html":l,"/styles.css":d,"/script.js":o},expectedElements:["input","button",".todo-item",".todo-list"],expectedPatterns:[/todo/i,/localStorage/,/add|delete|remove/i,/complete|done|finished/i,/filter/i],timeout:6e4}];var m=s(646),u=s(4861),p=s(9946);let h=(0,p.A)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);var x=s(3904);let g=(0,p.A)("clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);var f=s(7550),b=s(6474),v=s(7863);let j=(0,p.A)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);var w=s(5695),y=s(6671),k=s(5339),N=s(9052),C=s(8202),A=s(9945),S=s(823);function T(){let e=(0,w.useRouter)(),[t,s]=(0,n.useState)(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),[l,d]=(0,n.useState)(null),[o,p]=(0,n.useState)(new Map),[T,E]=(0,n.useState)(new Map),[M,P]=(0,n.useState)(new Set),F=(0,n.useRef)(new Map),[R,D]=(0,n.useState)({total:0,passed:0,failed:0,successRate:0}),[O,L]=(0,n.useState)(!1),[I,W]=(0,n.useState)("");(0,n.useEffect)(()=>{W(C.s.getDefaultModel())},[]);let _=async e=>{let t=c.find(t=>t.id===e);if(!t)return;let a=Date.now();d(e),P(t=>new Set([...t,e])),s(t=>t.map(t=>t.id===e?{...t,status:"running",generationOutput:""}:t));try{let n="test-".concat(Date.now()),i=new r.t(n,"orchestrator",(t,a)=>{if("assistant_delta"===t&&((null==a?void 0:a.text)||(null==a?void 0:a.snapshot))){let t=a.text,n=a.snapshot;E(s=>{let a=new Map(s);if(void 0!==n)a.set(e,n);else if(t){let s=a.get(e)||"";a.set(e,s+t)}return a}),s(s=>s.map(s=>s.id===e?{...s,generationOutput:n||(s.generationOutput||"")+(t||"")}:s)),setTimeout(()=>{let t=F.current.get(e);t&&(t.scrollTop=t.scrollHeight)},0)}},{chatMode:!1});p(t=>{let s=new Map(t);return s.set(e,i),s});let l=await i.execute(t.prompt);s(t=>t.map(t=>{var s;return t.id===e?{...t,status:l.success?"success":"failed",executionTime:Date.now()-a,errors:l.success?void 0:[l.summary],details:l.summary,filesModified:[],toolCalls:(null==(s=l.conversation)?void 0:s.length)||0}:t})),l.success?y.oR.success("Test passed: ".concat(t.name)):y.oR.error("Test failed: ".concat(t.name," - ").concat(l.summary))}catch(i){let n=i instanceof Error?i.message:String(i);s(t=>t.map(t=>t.id===e?{...t,status:"failed",executionTime:Date.now()-a,errors:[n],details:"Error: ".concat(n)}:t)),y.oR.error("Test error: ".concat(t.name))}p(t=>{let s=new Map(t);return s.delete(e),s}),d(null),z()},$=e=>{let t=o.get(e);if(t){var s;t.stop(),y.oR.info("Stopping test: ".concat(null==(s=c.find(t=>t.id===e))?void 0:s.name))}},q=async()=>{for(let e of["style-background-gradient","ui-hamburger-menu","js-countdown-timer"]){if(null===l)break;await _(e),await new Promise(e=>setTimeout(e,3e3))}},z=()=>{let e=t.filter(e=>"pending"!==e.status&&"running"!==e.status),s=t.filter(e=>"success"===e.status),a=t.filter(e=>"failed"===e.status||"stopped"===e.status);D({total:e.length,passed:s.length,failed:a.length,successRate:e.length>0?s.length/e.length*100:0})},B=e=>{switch(e){case"success":return(0,a.jsx)(m.A,{className:"h-4 w-4 text-green-500"});case"failed":return(0,a.jsx)(u.A,{className:"h-4 w-4 text-red-500"});case"stopped":return(0,a.jsx)(h,{className:"h-4 w-4 text-orange-500"});case"running":return(0,a.jsx)(x.A,{className:"h-4 w-4 text-blue-500 animate-spin"});default:return(0,a.jsx)(g,{className:"h-4 w-4 text-gray-400"})}},H=[{id:"back",label:"Back to Projects",icon:f.A,onClick:()=>e.push("/"),variant:"outline"}];return(0,a.jsxs)("div",{className:"h-screen flex flex-col",children:[(0,a.jsx)(A.j,{leftText:"Model Tester",onLogoClick:()=>e.push("/"),actions:H}),(0,a.jsx)("div",{className:"flex-1 overflow-auto bg-background p-6",children:(0,a.jsxs)("div",{className:"max-w-6xl mx-auto",children:[(0,a.jsx)("div",{className:"bg-blue-50 dark:bg-blue-950/30 border border-blue-200 dark:border-blue-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)(k.A,{className:"h-5 w-5 text-blue-600 dark:text-blue-400 mt-0.5"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-blue-900 dark:text-blue-100 mb-1",children:"How to Interpret Test Results"}),(0,a.jsxs)("p",{className:"text-sm text-blue-800 dark:text-blue-200",children:["These tests validate basic code generation capabilities across different task types. A ",(0,a.jsx)("strong",{children:"passing test"})," means files were created/modified successfully. A ",(0,a.jsx)("strong",{children:"failing test"})," indicates the model couldn't complete the task or didn't produce expected outputs."]}),(0,a.jsxs)("div",{className:"mt-2 text-xs text-blue-700 dark:text-blue-300",children:[(0,a.jsx)("strong",{children:"Tip:"})," Select your preferred provider and model below to test specific configurations. The generation output will show you what the AI is thinking during execution."]})]})]})}),(0,a.jsx)("div",{className:"bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-4 mb-6",children:(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("div",{className:"text-amber-600 dark:text-amber-400 mt-0.5",children:"\uD83D\uDCA1"}),(0,a.jsxs)("div",{className:"flex-1",children:[(0,a.jsx)("h3",{className:"font-medium text-amber-900 dark:text-amber-100 mb-1",children:"Cost Warning"}),(0,a.jsxs)("p",{className:"text-sm text-amber-800 dark:text-amber-200",children:["Running these tests can be ",(0,a.jsx)("strong",{children:"very expensive"})," and likely isn't necessary. It's cheaper and easier to just use good models and research community feedback about agentic capabilities."]}),(0,a.jsx)("p",{className:"text-sm text-amber-800 dark:text-amber-200 mt-2",children:"This tester is largely for evaluating how models perform with OSW Studio's implementation and using those results to improve the agentic system."})]})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4 mb-6",children:[(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Total Tests"}),(0,a.jsx)("div",{className:"text-2xl font-bold",children:R.total})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Passed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-green-600",children:R.passed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Failed"}),(0,a.jsx)("div",{className:"text-2xl font-bold text-red-600",children:R.failed})]}),(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground mb-1",children:"Success Rate"}),(0,a.jsxs)("div",{className:"text-2xl font-bold",children:[R.successRate.toFixed(1),"%"]})]})]}),(0,a.jsxs)("div",{className:"flex gap-4 mb-6",children:[(0,a.jsxs)(S.AM,{open:O,onOpenChange:L,children:[(0,a.jsx)(S.Wv,{asChild:!0,children:(0,a.jsxs)(i.$,{variant:"outline",children:[(0,a.jsx)("span",{children:(e=>{if(!e)return"Select Model";let t=e.split("/");return t[t.length-1].split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")})(I)}),O?(0,a.jsx)(b.A,{className:"h-4 w-4 ml-2"}):(0,a.jsx)(v.A,{className:"h-4 w-4 ml-2"})]})}),(0,a.jsx)(S.hl,{className:"w-96",align:"start",side:"bottom",sideOffset:4,avoidCollisions:!1,children:(0,a.jsx)(N.t,{onClose:()=>L(!1),onModelChange:e=>W(e)})})]}),(0,a.jsxs)(i.$,{onClick:q,disabled:null!==l,children:[(0,a.jsx)(j,{className:"h-4 w-4 mr-2"}),"Run Quick Tests (5 tests)"]}),(0,a.jsxs)(i.$,{variant:"outline",onClick:()=>{o.forEach((e,t)=>{e.stop()}),s(c.map(e=>({id:e.id,name:e.name,status:"pending"}))),D({total:0,passed:0,failed:0,successRate:0}),d(null),p(new Map),E(new Map),P(new Set)},disabled:null!==l,children:[(0,a.jsx)(x.A,{className:"h-4 w-4 mr-2"}),"Reset"]})]}),(0,a.jsx)("div",{className:"grid gap-4",children:t.map(e=>{let t=c.find(t=>t.id===e.id);return(0,a.jsxs)("div",{className:"bg-card border rounded-lg p-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 font-medium",children:[B(e.status),e.name,(0,a.jsxs)("span",{className:"text-sm font-normal text-muted-foreground",children:["(",null==t?void 0:t.category,")"]})]}),(0,a.jsxs)("div",{className:"text-sm text-muted-foreground mt-1",children:[null==t?void 0:t.prompt.substring(0,100),"..."]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[e.executionTime&&(0,a.jsxs)("span",{className:"text-sm text-muted-foreground",children:[(e.executionTime/1e3).toFixed(1),"s"]}),"running"===e.status&&l===e.id?(0,a.jsxs)(i.$,{size:"sm",variant:"destructive",onClick:()=>$(e.id),children:[(0,a.jsx)(h,{className:"h-3 w-3 mr-1"}),"Stop"]}):(0,a.jsxs)(i.$,{size:"sm",variant:"outline",onClick:()=>_(e.id),disabled:null!==l,children:[(0,a.jsx)(j,{className:"h-3 w-3 mr-1"}),"Test"]}),("running"===e.status||e.generationOutput||M.has(e.id))&&(0,a.jsx)(i.$,{size:"sm",variant:"ghost",onClick:()=>{P(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s})},children:M.has(e.id)?(0,a.jsx)(v.A,{className:"h-3 w-3"}):(0,a.jsx)(b.A,{className:"h-3 w-3"})})]})]}),("running"===e.status||M.has(e.id))&&(e.generationOutput||T.get(e.id))&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-muted-foreground",children:"Generation Output"}),"running"===e.status&&(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)(x.A,{className:"h-3 w-3 animate-spin"}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground",children:"Generating..."})]})]}),(0,a.jsx)("div",{className:"bg-muted/50 rounded-md p-3 max-h-64 overflow-y-auto",ref:t=>{t&&F.current.set(e.id,t)},children:(0,a.jsx)("pre",{className:"text-xs font-mono whitespace-pre-wrap text-foreground/80",children:e.generationOutput||T.get(e.id)||""})})]}),("success"===e.status||"failed"===e.status||"stopped"===e.status)&&(0,a.jsxs)("div",{className:"mt-3 pt-3 border-t space-y-2",children:[e.details&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Result:"})," ",e.details]}),void 0!==e.toolCalls&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Tool Calls:"})," ",e.toolCalls]}),e.filesModified&&e.filesModified.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("strong",{children:"Files:"})," ",e.filesModified.join(", ")]}),e.errors&&e.errors.length>0&&(0,a.jsxs)("div",{className:"text-red-600",children:[(0,a.jsx)("strong",{children:"Errors:"})," ",e.errors.join(", ")]})]})]},e.id)})})]})})]})}}},e=>{var t=t=>e(e.s=t);e.O(0,[948,671,223,361,441,684,358],()=>t(1905)),_N_E=e.O()}]);
|
package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "osw-studio-v1",
|
| 3 |
-
"version": "1.14.
|
| 4 |
"private": true,
|
| 5 |
"license": "MIT",
|
| 6 |
"scripts": {
|
|
|
|
| 1 |
{
|
| 2 |
"name": "osw-studio-v1",
|
| 3 |
+
"version": "1.14.1",
|
| 4 |
"private": true,
|
| 5 |
"license": "MIT",
|
| 6 |
"scripts": {
|