Connect your React Single Page Application (SPA) using Vite.
Run npx create-kroxt-app, select **Vite + React (SPA)**, and paste your credentials when prompted.
VITE_KROXT_PROJECT_ID=YOUR_PROJECT_ID
VITE_KROXT_API_KEY=YOUR_PUBLIC_API_KEYVite templates initialize the SDK inside src/config/kroxt.ts:
import { Kroxt } from "@kroxt/baas-sdk";
export const baas = new Kroxt({
projectId: import.meta.env.VITE_KROXT_PROJECT_ID || "",
apiKey: import.meta.env.VITE_KROXT_API_KEY || "",
});
export default baas;import React, { useEffect, useState } from "react";
import { Document } from "@kroxt/baas-sdk";
import { baas } from "./config/kroxt";
type Todo = Document<{
text: string;
completed: boolean;
}>;
export default function App() {
const [todos, setTodos] = useState<Todo[]>([]);
useEffect(() => {
baas.collection<{ text: string; completed: boolean }>("todos")
.get()
.then((data) => setTodos(data as Todo[]));
}, []);
return (
<div className="p-8">
{todos.map((todo) => (
<p key={todo._id} className="text-zinc-200 text-xs">
{todo.data.text}
</p>
))}
</div>
);
}