basic homepage

This commit is contained in:
Oliver Bryan
2025-12-13 17:39:06 +00:00
parent 198d8b1ab3
commit a324dc4a3c
2 changed files with 38 additions and 26 deletions

View File

@@ -1,32 +1,12 @@
import { invoke } from "@tauri-apps/api/core"; import { ThemeProvider } from "@/components/theme-provider";
import { useState } from "react";
import "./App.css"; import Home from "./Home";
function App() { function App() {
const [greetMsg, setGreetMsg] = useState("");
const [name, setName] = useState("");
async function greet() {
// Learn more about Tauri commands at https://tauri.app/develop/calling-rust/
setGreetMsg(await invoke("greet", { name }));
}
return ( return (
<main className="container"> <ThemeProvider defaultTheme="dark" storageKey="vite-ui-theme">
<h1>Issue Project Manager</h1> <Home />
</ThemeProvider>
<div>
<input
id="greet-input"
onChange={(e) => setName(e.currentTarget.value)}
placeholder="Enter a name..."
/>
<button type="submit" onClick={greet}>
Greet
</button>
</div>
<p>{greetMsg}</p>
</main>
); );
} }

32
src/Home.tsx Normal file
View File

@@ -0,0 +1,32 @@
import { useState } from "react";
import { Button } from "@/components/ui/button";
function Home() {
const [issues, setIssues] = useState([]);
const [serverURL, setServerURL] = useState("http://localhost:3000");
async function getIssues() {
const res = await fetch(`${serverURL}/issues/all`);
}
return (
<main className="w-full h-[100vh] flex flex-col items-center justify-center gap-4 p-4">
<h1>Issue Project Manager</h1>
<Button onClick={getIssues} className={""}>
get issues
</Button>
<div>Issues count: {issues.length}</div>
{issues.length > 0 && (
<ul>
{issues.map((issue: any) => (
<li key={issue.id}>{issue.title}</li>
))}
</ul>
)}
</main>
);
}
export default Home;