'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 { useHealth } from '@/lib/hooks/use-health' import { PropsWithChildren, useEffect, useState } from 'react' const COMMUNITY_DIALOG_SHOWN_KEY = 'community-dialog-shown' export default function IndexPage() { const [open, setOpen] = useState(false) useEffect(() => { if (!localStorage.getItem(COMMUNITY_DIALOG_SHOWN_KEY)) { setOpen(true) localStorage.setItem(COMMUNITY_DIALOG_SHOWN_KEY, 'true') } }, []) return (
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 LinkProps { href: string } function Link({ href, children }: PropsWithChildren) { return ( {children} ) } function toBadgeString(str: string) { return encodeURIComponent(str.replaceAll('-', '--')) } function MainPanel() { const { data: healthInfo } = useHealth() if (!healthInfo) return return (

Congratulations, your tabby instance is running!

{healthInfo.model && ( )} {healthInfo.chat_model && ( )} You can find our documentation{' '} here.
  • 💻{' '} IDE/Editor Extensions
  • ⚙️{' '} Configuration
) }