"use client"; import { buttonVariants } from "@/components/ui/button" import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger } from "@/components/ui/dialog"; import { IconSlack } from "@/components/ui/icons" import { Separator } from "@/components/ui/separator"; import { PropsWithChildren, useEffect, useState } from "react"; const COMMUNITY_DIALOG_SHOWN_KEY = "community-dialog-shown"; export default function IndexPage() { const [healthInfo, setHealthInfo] = useState(); useEffect(() => { fetchHealth().then(setHealthInfo); }, []); const [open, setOpen] = useState(false); useEffect(() => { if (!localStorage.getItem(COMMUNITY_DIALOG_SHOWN_KEY)) { setOpen(true); localStorage.setItem(COMMUNITY_DIALOG_SHOWN_KEY, "true"); } }, []); const gettingStartedMarkDown = ` You can find our documentation [here](https://tabby.tabbyml.com/docs/getting-started). - 💻 [IDE/Editor Extensions](https://tabby.tabbyml.com/docs/extensions/) - ⚙️ [Configuration](https://tabby.tabbyml.com/docs/configuration)`; return
{healthInfo && <>

Congratulations, your tabby instance is running!

You can find our documentation here.

  • 💻 IDE/Editor Extensions
  • ⚙️ Configuration

}
Join the Tabby community Connect with other contributors building Tabby. Share knowledge, get help, and contribute to the open-source project. Join us on Slack
} interface HealthInfo { device: string, model: string, version: { build_date: string, git_describe: string, } } async function fetchHealth(): Promise { if (process.env.NODE_ENV === "production") { const resp = await fetch("/v1/health"); return await resp.json() as HealthInfo; } else { return { "device": "metal", "model": "TabbyML/StarCoder-1B", "version": { "build_date": "2023-10-21", "git_describe": "v0.3.1", "git_sha": "d5fdcf3a2cbe0f6b45d6e8ef3255e6a18f840132" } } as HealthInfo } } interface LinkProps { href: string } function Link({ href, children }: PropsWithChildren) { return {children} } function toBadgeString(str: string) { return encodeURIComponent(str.replaceAll("-", "--")); }