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 AutoComplete from './components/AutoComplete' function App () { const [data, setData] = useState(null) const [loading, setLoading] = useState(true) const [error, setError] = useState(null) const [allSuggestions, setAllSuggestions] = useState([]) const [filters, setFilters] = useState([]) useEffect(() => { fetch('/results.json') .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) }) }, []) useEffect(() => { if (data) { const models = data.model_table.map(item => ({ type: 'Model', value: item.model, detail: item.provider, searchText: item.provider.toLowerCase() + ' ' + item.model.toLowerCase() })) const languages = data.language_table.map(item => ({ type: 'Language', value: item.autonym, detail: item.language_name, searchText: item.language_name.toLowerCase() + ' ' + item.autonym.toLowerCase() })) const datasets = data.dataset_table.map(item => ({ type: 'Dataset', value: item.name, detail: item.tasks, searchText: item.author.toLowerCase() + ' ' + item.name.toLowerCase() + ' ' + item.tasks.map(task => task.toLowerCase()).join(' ') })) const allSuggestions = [...models, ...languages, ...datasets] setAllSuggestions(allSuggestions) } }, [data]) return (
🌍

Global AI Language Monitor

Tracking language proficiency of AI models for every language

setFilters(prevFilters => [item])} />
{loading &&

...

} {error &&

Error: {error}

} {data && ( <>
)}
) } export default App