DINGOLANI's picture
Create frontend/src/App.jsx
4291c82 verified
import React, { useState } from "react";
import "./styles.css";
const App = () => {
const [query, setQuery] = useState("");
const [output, setOutput] = useState(null);
const [loading, setLoading] = useState(false);
const fetchPrediction = async () => {
setLoading(true);
setOutput(null);
const response = await fetch("https://your-space-url.hf.space/predict/", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ query }),
});
const data = await response.json();
setOutput(data.output);
setLoading(false);
};
return (
<div className="container">
<h1 className="title">Luxury NER Extractor</h1>
<p className="subtitle">Enter a sentence and extract structured data</p>
<div className="input-section">
<input
type="text"
placeholder="e.g. Luxury bags for women above $2000"
value={query}
onChange={(e) => setQuery(e.target.value)}
className="input-box"
/>
<button onClick={fetchPrediction} className="analyze-button">
{loading ? "Analyzing..." : "Analyze"}
</button>
</div>
{output && (
<div className="output-section">
<h2>Extracted Information</h2>
<div className="result-box">
{Object.entries(output).map(([key, value]) => (
<div key={key} className="entity">
<span className="entity-type">{key}</span>:{" "}
<span className="entity-value">{value.join(", ")}</span>
</div>
))}
</div>
</div>
)}
</div>
);
};
export default App;