import { useState, useEffect } from 'react' import { PrimeReactProvider } from 'primereact/api' import 'primereact/resources/themes/lara-light-cyan/theme.css' import ModelTable from './components/ModelTable' import LanguageTable from './components/LanguageTable' import DatasetTable from './components/DatasetTable' import WorldMap from './components/WorldMap' import AutoComplete from './components/AutoComplete' import LanguagePlot from './components/LanguagePlot' import { Carousel } from 'primereact/carousel' function App () { const [data, setData] = useState(null) const [loading, setLoading] = useState(true) const [error, setError] = useState(null) const [selectedLanguages, setSelectedLanguages] = useState([]) useEffect(() => { fetch('/api/data', { method: 'POST', body: JSON.stringify({ selectedLanguages }) }) .then(response => { if (!response.ok) { throw new Error('Network response was not ok') } return response.json() }) .then(jsonData => { setData(jsonData) setLoading(false) }) .catch(err => { setError(err.message) setLoading(false) }) }, [selectedLanguages]) return (
🌍

Global AI Monitor

Tracking language proficiency of AI models for every language

{data && ( setSelectedLanguages(items)} /> )}
{loading && ( )} {error &&

Error: {error}

} {data && ( <>
, ]} numScroll={1} numVisible={1} itemTemplate={item => item} circular style={{ width: '800px', minHeight: '650px' }} />
)}
) } export default App