gitextract__i6wh6to/ ├── .gitattributes ├── .github/ │ ├── CODE_OF_CONDUCT.md │ ├── CONTRIBUTING.md │ ├── dependabot.yml │ └── workflows/ │ ├── ci.yml │ ├── deploy.yml │ ├── post_publish.yml │ └── publish.yml ├── .gitignore ├── .vscode/ │ ├── extensions.json │ ├── settings.json │ └── tailwind.json ├── LICENSE ├── README.md ├── _typos.toml ├── deno.json ├── docs/ │ ├── 1.x/ │ │ ├── concepts/ │ │ │ ├── ahead-of-time-builds.md │ │ │ ├── app-wrapper.md │ │ │ ├── architecture.md │ │ │ ├── data-fetching.md │ │ │ ├── deployment.md │ │ │ ├── error-pages.md │ │ │ ├── forms.md │ │ │ ├── index.md │ │ │ ├── islands.md │ │ │ ├── layouts.md │ │ │ ├── middleware.md │ │ │ ├── partials.md │ │ │ ├── plugins.md │ │ │ ├── routes.md │ │ │ ├── routing.md │ │ │ ├── server-components.md │ │ │ ├── server-configuration.md │ │ │ ├── static-files.md │ │ │ └── updating.md │ │ ├── examples/ │ │ │ ├── active-links.md │ │ │ ├── authentication-with-supabase.md │ │ │ ├── changing-the-src-dir.md │ │ │ ├── client-side-components-and-libraries.md │ │ │ ├── creating-a-crud-api.md │ │ │ ├── dealing-with-cors.md │ │ │ ├── handling-complex-routes.md │ │ │ ├── index.md │ │ │ ├── init-the-server.md │ │ │ ├── migrating-to-tailwind.md │ │ │ ├── modifying-the-head.md │ │ │ ├── rendering-markdown.md │ │ │ ├── rendering-raw-html.md │ │ │ ├── setting-the-language.md │ │ │ ├── sharing-state-between-islands.md │ │ │ ├── using-csp.md │ │ │ ├── using-fresh-canary-version.md │ │ │ ├── using-twind-v1.md │ │ │ └── writing-tests.md │ │ ├── getting-started/ │ │ │ ├── adding-interactivity.md │ │ │ ├── create-a-project.md │ │ │ ├── create-a-route.md │ │ │ ├── custom-handlers.md │ │ │ ├── deploy-to-production.md │ │ │ ├── dynamic-routes.md │ │ │ ├── form-submissions.md │ │ │ ├── index.md │ │ │ └── running-locally.md │ │ ├── integrations/ │ │ │ └── index.md │ │ └── introduction/ │ │ └── index.md │ ├── canary/ │ │ └── the-canary-version/ │ │ └── index.md │ ├── latest/ │ │ ├── advanced/ │ │ │ ├── app-wrapper.md │ │ │ ├── builder.md │ │ │ ├── define.md │ │ │ ├── environment-variables.md │ │ │ ├── error-handling.md │ │ │ ├── forms.md │ │ │ ├── head.md │ │ │ ├── index.md │ │ │ ├── layouts.md │ │ │ ├── partials.md │ │ │ ├── troubleshooting.md │ │ │ └── vite.md │ │ ├── concepts/ │ │ │ ├── app.md │ │ │ ├── context.md │ │ │ ├── file-routing.md │ │ │ ├── index.md │ │ │ ├── islands.md │ │ │ ├── layouts.md │ │ │ ├── middleware.md │ │ │ ├── routing.md │ │ │ └── static-files.md │ │ ├── deployment/ │ │ │ ├── cloudflare-workers.md │ │ │ ├── deno-compile.md │ │ │ ├── deno-deploy.md │ │ │ ├── docker.md │ │ │ └── index.md │ │ ├── examples/ │ │ │ ├── active-links.md │ │ │ ├── daisyui.md │ │ │ ├── markdown.md │ │ │ ├── migration-guide.md │ │ │ ├── rendering-raw-html.md │ │ │ └── sharing-state-between-islands.md │ │ ├── getting-started/ │ │ │ └── index.md │ │ ├── introduction/ │ │ │ └── index.md │ │ ├── plugins/ │ │ │ ├── cors.md │ │ │ ├── csp.md │ │ │ ├── csrf.md │ │ │ ├── index.md │ │ │ └── trailing-slashes.md │ │ └── testing/ │ │ └── index.md │ └── toc.ts ├── packages/ │ ├── build-id/ │ │ ├── README.md │ │ ├── deno.json │ │ └── mod.ts │ ├── examples/ │ │ ├── LICENSE │ │ ├── README.md │ │ ├── deno.json │ │ └── src/ │ │ ├── app1.tsx │ │ ├── app2.tsx │ │ ├── island.tsx │ │ └── shared.tsx │ ├── fresh/ │ │ ├── README.md │ │ ├── deno.json │ │ ├── src/ │ │ │ ├── app.ts │ │ │ ├── app_test.tsx │ │ │ ├── build_cache.ts │ │ │ ├── commands.ts │ │ │ ├── compat.ts │ │ │ ├── compat_test.tsx │ │ │ ├── config.ts │ │ │ ├── config_test.ts │ │ │ ├── constants.ts │ │ │ ├── context.ts │ │ │ ├── context_test.tsx │ │ │ ├── define.ts │ │ │ ├── define_test.ts │ │ │ ├── dev/ │ │ │ │ ├── builder.ts │ │ │ │ ├── builder_test.ts │ │ │ │ ├── check.ts │ │ │ │ ├── dev_build_cache.ts │ │ │ │ ├── dev_build_cache_test.ts │ │ │ │ ├── esbuild.ts │ │ │ │ ├── file_transformer.ts │ │ │ │ ├── file_transformer_test.ts │ │ │ │ ├── fs_crawl.ts │ │ │ │ ├── fs_crawl_test.ts │ │ │ │ ├── middlewares/ │ │ │ │ │ ├── automatic_workspace_folders.ts │ │ │ │ │ ├── error_overlay/ │ │ │ │ │ │ ├── code_frame.ts │ │ │ │ │ │ ├── middleware.tsx │ │ │ │ │ │ ├── middleware_test.tsx │ │ │ │ │ │ └── overlay.tsx │ │ │ │ │ └── live_reload.ts │ │ │ │ ├── mod.ts │ │ │ │ ├── update_check.ts │ │ │ │ └── update_check_test.ts │ │ │ ├── error.ts │ │ │ ├── error_test.ts │ │ │ ├── file_url.ts │ │ │ ├── file_url_test.ts │ │ │ ├── fs.ts │ │ │ ├── fs_routes.ts │ │ │ ├── fs_routes_test.tsx │ │ │ ├── handlers.ts │ │ │ ├── internals.ts │ │ │ ├── internals_dev.ts │ │ │ ├── jsonify/ │ │ │ │ ├── __snapshots__/ │ │ │ │ │ └── round_trip_test.ts.snap │ │ │ │ ├── constants.ts │ │ │ │ ├── custom_test.ts │ │ │ │ ├── parse.ts │ │ │ │ ├── round_trip_test.ts │ │ │ │ ├── stringify.ts │ │ │ │ └── stringify_test.ts │ │ │ ├── middlewares/ │ │ │ │ ├── cors.ts │ │ │ │ ├── cors_test.ts │ │ │ │ ├── csp.ts │ │ │ │ ├── csp_test.ts │ │ │ │ ├── csrf.ts │ │ │ │ ├── csrf_test.ts │ │ │ │ ├── mod.ts │ │ │ │ ├── mod_test.ts │ │ │ │ ├── static_files.ts │ │ │ │ ├── static_files_test.ts │ │ │ │ ├── trailing_slashes.ts │ │ │ │ └── trailing_slashes_test.ts │ │ │ ├── mod.ts │ │ │ ├── otel.ts │ │ │ ├── render.ts │ │ │ ├── router.ts │ │ │ ├── router_test.ts │ │ │ ├── runtime/ │ │ │ │ ├── client/ │ │ │ │ │ ├── dev.ts │ │ │ │ │ ├── mod.ts │ │ │ │ │ ├── partials.ts │ │ │ │ │ ├── polyfills.ts │ │ │ │ │ ├── preact_hooks_client.ts │ │ │ │ │ └── reviver.ts │ │ │ │ ├── head.ts │ │ │ │ ├── server/ │ │ │ │ │ └── preact_hooks.ts │ │ │ │ ├── shared.ts │ │ │ │ └── shared_internal.ts │ │ │ ├── segments.ts │ │ │ ├── segments_test.ts │ │ │ ├── server/ │ │ │ │ └── tailwind_aot_error_page.tsx │ │ │ ├── test_utils.ts │ │ │ ├── types.ts │ │ │ ├── utils.ts │ │ │ └── utils_test.ts │ │ └── tests/ │ │ ├── active_links_test.tsx │ │ ├── doc_examples_test.tsx │ │ ├── fixture_head/ │ │ │ ├── islands/ │ │ │ │ ├── MetaIsland.tsx │ │ │ │ ├── StyleIdIsland.tsx │ │ │ │ ├── TemplateIsland.tsx │ │ │ │ └── TitleIsland.tsx │ │ │ └── routes/ │ │ │ ├── _app.tsx │ │ │ ├── id.tsx │ │ │ ├── key.tsx │ │ │ ├── meta.tsx │ │ │ └── title.tsx │ │ ├── fixture_island_groups/ │ │ │ └── routes/ │ │ │ ├── both/ │ │ │ │ ├── (_islands)/ │ │ │ │ │ └── Foo.tsx │ │ │ │ └── index.tsx │ │ │ ├── foo/ │ │ │ │ ├── (_islands)/ │ │ │ │ │ └── Foo.tsx │ │ │ │ └── index.tsx │ │ │ └── index.tsx │ │ ├── fixture_precompile/ │ │ │ ├── invalid/ │ │ │ │ ├── deno.json │ │ │ │ ├── dev.ts │ │ │ │ └── main.tsx │ │ │ └── valid/ │ │ │ ├── deno.json │ │ │ └── main.tsx │ │ ├── fixture_update_check/ │ │ │ └── mod.ts │ │ ├── fixtures_islands/ │ │ │ ├── Computed.tsx │ │ │ ├── Counter.tsx │ │ │ ├── CounterWithSlots.tsx │ │ │ ├── EnvIsland.tsx │ │ │ ├── EscapeIsland.tsx │ │ │ ├── FnIsland.tsx │ │ │ ├── FragmentIsland.tsx │ │ │ ├── FreshAttrs.tsx │ │ │ ├── IslandInIsland.tsx │ │ │ ├── JsonIsland.tsx │ │ │ ├── JsxChildrenIsland.tsx │ │ │ ├── JsxConditional.tsx │ │ │ ├── JsxIsland.tsx │ │ │ ├── Multiple.tsx │ │ │ ├── NodeProcess.tsx │ │ │ ├── NullIsland.tsx │ │ │ ├── OptOutPartialLink.tsx │ │ │ ├── PartialInIsland.tsx │ │ │ ├── PassThrough.tsx │ │ │ ├── SelfCounter.tsx │ │ │ └── data.json │ │ ├── head_test.tsx │ │ ├── islands_test.tsx │ │ ├── lorem_ipsum.txt │ │ ├── partials_test.tsx │ │ ├── precompile_test.ts │ │ └── test_utils.tsx │ ├── init/ │ │ ├── README.md │ │ ├── deno.json │ │ └── src/ │ │ ├── init.ts │ │ ├── init_test.ts │ │ └── mod.ts │ ├── plugin-tailwindcss/ │ │ ├── README.md │ │ ├── deno.json │ │ └── src/ │ │ ├── mod.ts │ │ └── types.ts │ ├── plugin-tailwindcss-v3/ │ │ ├── README.md │ │ ├── deno.json │ │ └── src/ │ │ └── mod.ts │ ├── plugin-vite/ │ │ ├── README.md │ │ ├── demo/ │ │ │ ├── assets/ │ │ │ │ └── style.css │ │ │ ├── client.ts │ │ │ ├── components/ │ │ │ │ ├── CssModuleNonIsland.tsx │ │ │ │ └── CssModulesNonIsland.module.css │ │ │ ├── fixtures/ │ │ │ │ ├── commonjs_mod.cjs │ │ │ │ └── maxmind.cjs │ │ │ ├── islands/ │ │ │ │ ├── Bar.tsx │ │ │ │ ├── CssModules.module.css │ │ │ │ ├── CssModules.tsx │ │ │ │ ├── CssModulesOther.module.css │ │ │ │ ├── CssModulesOther.tsx │ │ │ │ ├── Foo.tsx │ │ │ │ ├── IslandNestedInner.tsx │ │ │ │ ├── IslandNestedOuter.tsx │ │ │ │ └── tests/ │ │ │ │ ├── CounterHooks.tsx │ │ │ │ ├── EnvIsland.tsx │ │ │ │ ├── IslandAssets.tsx │ │ │ │ ├── Mime.tsx │ │ │ │ └── Ready.tsx │ │ │ ├── main.ts │ │ │ ├── routes/ │ │ │ │ ├── _error.tsx │ │ │ │ ├── about.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── tests/ │ │ │ │ ├── CssRoute.module.css │ │ │ │ ├── api/ │ │ │ │ │ └── [id].tsx │ │ │ │ ├── assets.tsx │ │ │ │ ├── build_id.tsx │ │ │ │ ├── commonjs.tsx │ │ │ │ ├── css.tsx │ │ │ │ ├── css_modules.tsx │ │ │ │ ├── css_styles.css │ │ │ │ ├── dep_json.tsx │ │ │ │ ├── env.tsx │ │ │ │ ├── env_files.tsx │ │ │ │ ├── feed.tsx │ │ │ │ ├── ioredis.tsx │ │ │ │ ├── island_assets.tsx │ │ │ │ ├── island_hooks.tsx │ │ │ │ ├── island_nested.tsx │ │ │ │ ├── it_works.tsx │ │ │ │ ├── jsx_namespace.tsx │ │ │ │ ├── maxmind.tsx │ │ │ │ ├── middlewares/ │ │ │ │ │ ├── _middleware.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── mime.tsx │ │ │ │ ├── partial.tsx │ │ │ │ ├── partial_insert.tsx │ │ │ │ ├── pg.tsx │ │ │ │ ├── qs.tsx │ │ │ │ ├── radix.tsx │ │ │ │ ├── redis.tsx │ │ │ │ ├── remote_island.tsx │ │ │ │ ├── stripe.tsx │ │ │ │ ├── supabase_pg.tsx │ │ │ │ ├── tailwind.tsx │ │ │ │ └── throw.tsx │ │ │ ├── static/ │ │ │ │ ├── foo.txt │ │ │ │ └── test_static/ │ │ │ │ ├── foo/ │ │ │ │ │ └── index.html │ │ │ │ └── foo.txt │ │ │ ├── utils.ts │ │ │ └── vite.config.ts │ │ ├── deno.json │ │ ├── src/ │ │ │ ├── client.ts │ │ │ ├── mod.ts │ │ │ ├── plugins/ │ │ │ │ ├── build_id.ts │ │ │ │ ├── client_entry.ts │ │ │ │ ├── client_snapshot.ts │ │ │ │ ├── deno.ts │ │ │ │ ├── dev_server.ts │ │ │ │ ├── patches/ │ │ │ │ │ ├── code_eval.ts │ │ │ │ │ ├── code_eval_test.ts │ │ │ │ │ ├── commonjs.ts │ │ │ │ │ ├── commonjs_test.ts │ │ │ │ │ ├── http_absolute.ts │ │ │ │ │ ├── http_absolute_test.ts │ │ │ │ │ ├── inline_env_vars.ts │ │ │ │ │ ├── inline_env_vars_test.ts │ │ │ │ │ ├── jsx_comment.ts │ │ │ │ │ ├── jsx_comment_test.ts │ │ │ │ │ ├── remove_polyfills.ts │ │ │ │ │ └── remove_polyfills_test.ts │ │ │ │ ├── patches.ts │ │ │ │ ├── server_entry.ts │ │ │ │ ├── server_snapshot.ts │ │ │ │ ├── shims/ │ │ │ │ │ ├── object.entries/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── supports-color/ │ │ │ │ │ └── index.ts │ │ │ │ ├── shims.ts │ │ │ │ └── verify_imports.ts │ │ │ ├── shared.ts │ │ │ └── utils.ts │ │ └── tests/ │ │ ├── build_test.ts │ │ ├── dev_server_test.ts │ │ ├── fixtures/ │ │ │ ├── deno_global_island/ │ │ │ │ ├── islands/ │ │ │ │ │ └── Foo.tsx │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── deno_global_ssr/ │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── island_global_name/ │ │ │ │ ├── deno.json │ │ │ │ ├── islands/ │ │ │ │ │ └── Map.tsx │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── no_islands/ │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── no_routes/ │ │ │ │ ├── main.ts │ │ │ │ └── vite.config.ts │ │ │ ├── no_static/ │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── node_builtin/ │ │ │ │ ├── islands/ │ │ │ │ │ └── NodeIsland.tsx │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── remote_island/ │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── tailwind_app/ │ │ │ │ ├── assets/ │ │ │ │ │ └── style.css │ │ │ │ ├── client.ts │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ ├── _app.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ ├── tailwind_no_app/ │ │ │ │ ├── assets/ │ │ │ │ │ └── style.css │ │ │ │ ├── client.ts │ │ │ │ ├── main.ts │ │ │ │ ├── routes/ │ │ │ │ │ └── index.tsx │ │ │ │ └── vite.config.ts │ │ │ └── test_files_exclusion/ │ │ │ ├── deno.json │ │ │ ├── main.ts │ │ │ ├── routes/ │ │ │ │ ├── foo.test.ts │ │ │ │ ├── index.tsx │ │ │ │ └── index_test.tsx │ │ │ └── vite.config.ts │ │ └── test_utils.ts │ └── update/ │ ├── README.md │ ├── deno.json │ └── src/ │ ├── mod.ts │ ├── update.ts │ ├── update_test.ts │ └── utils.ts ├── tools/ │ ├── check_docs.ts │ ├── check_links.ts │ └── release.ts ├── versions.json └── www/ ├── README.md ├── assets/ │ └── styles.css ├── client.ts ├── components/ │ ├── CodeBlock.tsx │ ├── CodeWindow.tsx │ ├── CopyButton.tsx │ ├── DocsSidebar.tsx │ ├── FancyLink.tsx │ ├── FeatureIcons.tsx │ ├── Footer.tsx │ ├── Header.tsx │ ├── Icons.tsx │ ├── NavigationBar.tsx │ ├── PageSection.tsx │ ├── Projects.tsx │ ├── SideBySide.tsx │ ├── WaveTank.ts │ └── homepage/ │ ├── CTA.tsx │ ├── CodeExampleBox.tsx │ ├── DemoBox.tsx │ ├── DenoSection.tsx │ ├── ExampleArrow.tsx │ ├── FormsSection.tsx │ ├── Hero.tsx │ ├── IslandsSection.tsx │ ├── PartialsSection.tsx │ ├── RecipeDemo.tsx │ ├── RenderingSection.tsx │ ├── SectionHeading.tsx │ ├── Simple.tsx │ └── SocialProof.tsx ├── data/ │ ├── docs.ts │ └── showcase.json ├── deno.json ├── dev.ts ├── islands/ │ ├── Counter.tsx │ ├── FormSubmitDemo.tsx │ ├── LemonBottom.tsx │ ├── LemonDrop.tsx │ ├── LemonTop.tsx │ ├── SearchButton.tsx │ ├── TableOfContents.tsx │ ├── ThemeToggle.tsx │ └── VersionSelect.tsx ├── main.ts ├── main_test.ts ├── routes/ │ ├── _app.tsx │ ├── _error.tsx │ ├── _middleware.ts │ ├── docs/ │ │ ├── [...slug].tsx │ │ ├── _layout.tsx │ │ ├── _middleware.ts │ │ └── index.tsx │ ├── index.tsx │ ├── raw.ts │ ├── recipes/ │ │ ├── _layout.tsx │ │ ├── _middleware.ts │ │ ├── lemon-honey-tea.tsx │ │ ├── lemonade.tsx │ │ └── lemondrop.tsx │ ├── showcase-bak.tsx │ ├── showcase.tsx │ ├── thanks.tsx │ └── update.tsx ├── static/ │ ├── docsearch.css │ ├── google40caa9e535ae39e9.html │ ├── markdown.css │ └── prism.css ├── utils/ │ ├── markdown.ts │ ├── prism.ts │ ├── screenshot.ts │ ├── screenshot_test.ts │ └── state.ts └── vite.config.ts