From cf85a5311209bd180be880535eb402baed6cfb9e Mon Sep 17 00:00:00 2001 From: Sebastian Jeltsch Date: Fri, 24 Jan 2025 16:40:45 +0100 Subject: [PATCH] Minor: add more context on and around the collaborative clicker example. --- README.md | 4 +- .../docs/getting-started/first-ui-app.mdx | 2 +- examples/README.md | 48 ++++++++++++++---- examples/blog/README.md | 4 +- .../screenshot_flutter.png | Bin .../screenshot_web.png | Bin examples/coffee-vector-search/README.md | 2 +- .../screenshots/screenshot0.png | Bin 0 -> 61655 bytes examples/coffee-vector-search/src/App.tsx | 4 +- examples/collab-clicker-ssr/README.md | 6 ++- .../screenshots/screenshot0.png | Bin 0 -> 60993 bytes examples/collab-clicker-ssr/src/App.tsx | 28 +++++++--- 12 files changed, 72 insertions(+), 26 deletions(-) rename examples/blog/{assets => screenshots}/screenshot_flutter.png (100%) rename examples/blog/{assets => screenshots}/screenshot_web.png (100%) create mode 100644 examples/coffee-vector-search/screenshots/screenshot0.png create mode 100644 examples/collab-clicker-ssr/screenshots/screenshot0.png diff --git a/README.md b/README.md index 3e0ca2cf..38c307b2 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@

- TrailBase logo + TrailBase logo

@@ -39,7 +39,7 @@

- Admin UI + Admin UI

diff --git a/docs/src/content/docs/getting-started/first-ui-app.mdx b/docs/src/content/docs/getting-started/first-ui-app.mdx index 3d705e57..79e387f7 100644 --- a/docs/src/content/docs/getting-started/first-ui-app.mdx +++ b/docs/src/content/docs/getting-started/first-ui-app.mdx @@ -13,7 +13,7 @@ production-ready web app all in ~100 lines of code.
- ![screenshot](../../../../../examples/coffee-vector-search/assets/screenshot.png) + ![screenshot](../../../../../examples/coffee-vector-search/screenshots/screenshot0.png)
diff --git a/examples/README.md b/examples/README.md index afbba562..84e50d42 100644 --- a/examples/README.md +++ b/examples/README.md @@ -1,6 +1,6 @@ # TrailBase Examples -#### Blog +#### [Blog](blog/) A simple styled Blog example with UIs both for web and Flutter: @@ -8,28 +8,56 @@ A simple styled Blog example with UIs both for web and Flutter: Screenshot Web Screenshot Flutter

-#### Coffee Search +#### [Collaborate Server-Side Rendered Clicker](collab-clicker-ssr/) -A very small web app demonstrating vector search and custom JS/TS endpoints. +A small clicker application, where we can collaboratively make it go 🚀. It +show-cases server-side rendering using SolidJS, however it could equally be +React, Vue, Svelte, Preact, ... . After client-side hydration, click counter +changes are streamed to everyone listening. -#### First App Tutorial +

+ + Collaborative acorn clicker + +

-The code for the [tutorial](https://trailbase.io/getting-started/first-app). +#### [Coffee Vector Search](coffee-vector-search/) -#### Custom Rust Binary +A small single-page web app demonstrating vector search and custom JS/TS endpoints. + +

+ + Coffee vector search web app + +

+ +#### [Data CLI App](data-cli-tutorial/) + +This code belongs to the [command-line app tutorial](https://trailbase.io/getting-started/first-cli-app): +IMDB data is ingested and queried both with curl using the record list API and a custom CLI. + +#### [Custom Rust Binary](custom-binary/) A quick example on how to use TrailBase as a library. diff --git a/examples/blog/README.md b/examples/blog/README.md index 4e25ca45..d1b59fb8 100644 --- a/examples/blog/README.md +++ b/examples/blog/README.md @@ -4,7 +4,7 @@ Screenshot Web @@ -12,7 +12,7 @@ Screenshot Flutter diff --git a/examples/blog/assets/screenshot_flutter.png b/examples/blog/screenshots/screenshot_flutter.png similarity index 100% rename from examples/blog/assets/screenshot_flutter.png rename to examples/blog/screenshots/screenshot_flutter.png diff --git a/examples/blog/assets/screenshot_web.png b/examples/blog/screenshots/screenshot_web.png similarity index 100% rename from examples/blog/assets/screenshot_web.png rename to examples/blog/screenshots/screenshot_web.png diff --git a/examples/coffee-vector-search/README.md b/examples/coffee-vector-search/README.md index 3681f2e8..350c7fd9 100644 --- a/examples/coffee-vector-search/README.md +++ b/examples/coffee-vector-search/README.md @@ -1,4 +1,4 @@ -# Coffee Search +# Coffee Vector Search A small web application demonstrating the use of TrailBase and its vector search to build a coffee search. diff --git a/examples/coffee-vector-search/screenshots/screenshot0.png b/examples/coffee-vector-search/screenshots/screenshot0.png new file mode 100644 index 0000000000000000000000000000000000000000..ee0540b414b01b56188df2d87f1a3cd413f38da0 GIT binary patch literal 61655 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 literal 0 HcmV?d00001 diff --git a/examples/coffee-vector-search/src/App.tsx b/examples/coffee-vector-search/src/App.tsx index 601ec561..8541023c 100644 --- a/examples/coffee-vector-search/src/App.tsx +++ b/examples/coffee-vector-search/src/App.tsx @@ -42,7 +42,7 @@ function Table() { return ( <> -
+
@@ -78,7 +78,7 @@ function Table() { export const App = () => ( <> -

Coffee Search

+

☕ search

); diff --git a/examples/collab-clicker-ssr/README.md b/examples/collab-clicker-ssr/README.md index 2313531c..ece5f19e 100644 --- a/examples/collab-clicker-ssr/README.md +++ b/examples/collab-clicker-ssr/README.md @@ -1,4 +1,8 @@ -# SSR Web App with Client-Side Hydration +# Collaborative Clicker App with SSR + +This app serves as a showcase for "realtime" API subscriptions and server-side +rendering (SSR). This app uses SolidJS but the same approach applies to React, +Vue, Svelte, Preact, ... . ## Generate the App diff --git a/examples/collab-clicker-ssr/screenshots/screenshot0.png b/examples/collab-clicker-ssr/screenshots/screenshot0.png new file mode 100644 index 0000000000000000000000000000000000000000..e87a031689b3b6400fac04c4e944f845b628177d GIT binary patch literal 60993 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

_Z+-F6HE?m7H*#vFE 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 IFmuEI0+7YC{{R30 literal 0 HcmV?d00001 diff --git a/examples/collab-clicker-ssr/src/App.tsx b/examples/collab-clicker-ssr/src/App.tsx index ca9315e9..54f58cc3 100644 --- a/examples/collab-clicker-ssr/src/App.tsx +++ b/examples/collab-clicker-ssr/src/App.tsx @@ -1,4 +1,5 @@ import { createSignal, onMount } from "solid-js" +import logo from "../public/favicon.svg"; export type Clicked = { count: number @@ -58,20 +59,33 @@ export function App({ initialCount }: { initialCount?: number }) { return (

-

TrailBase Clicker

+

TrailBase

-
+
-

- Click the button across different tabs, windows or browsers. -

+ + +

Click the acorn across different tabs, browsers or computers.

+ +
+

Context

+

+ This page showcases TrailBase's "realtime" APIs and server-side rendering (SSR) capabilities. + The initial page-load contains pre-rendered HTML, which is then hydrated on the client. + This reduces latency by saving the client a round-trip to fetch the initial counter value. + The client also subscribes to counter changes and is updates the page whenever someone else + presses the acorn. +

+
) }