React SDK (#462)

This commit is contained in:
Zai Shi
2025-02-27 01:55:45 +01:00
committed by GitHub
parent e63d41408d
commit da1b95ec3b
42 changed files with 2202 additions and 575 deletions
+31
View File
@@ -0,0 +1,31 @@
import { StackHandler, StackProvider, StackTheme } from "@stackframe/react";
import { Suspense } from "react";
import { BrowserRouter, Route, Routes, useLocation } from "react-router-dom";
import { stackClientApp } from "./stack";
function HandlerRoutes() {
const location = useLocation();
return (
<StackHandler app={stackClientApp} location={location.pathname} fullPage />
);
}
function App() {
return (
<Suspense fallback={null}>
<BrowserRouter>
<StackProvider app={stackClientApp}>
<StackTheme>
<Routes>
<Route path="/handler/*" element={<HandlerRoutes />} />
<Route path="/" element={<div>hello world</div>} />
</Routes>
</StackTheme>
</StackProvider>
</BrowserRouter>
</Suspense>
);
}
export default App;
+9
View File
@@ -0,0 +1,9 @@
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import App from './App'
createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>,
)
+14
View File
@@ -0,0 +1,14 @@
/// <reference types="vite/client" />
import { StackClientApp } from "@stackframe/react";
import { useNavigate } from "react-router-dom";
export const stackClientApp = new StackClientApp({
projectId: import.meta.env.VITE_STACK_PROJECT_ID,
publishableClientKey: import.meta.env.VITE_STACK_PUBLISHABLE_CLIENT_KEY,
baseUrl: import.meta.env.VITE_STACK_API_URL,
tokenStore: "cookie",
redirectMethod: {
useNavigate,
}
});