This solution is build using Blazor WebAssembly on .Net 8. The Client app is a Progressive Web App.
The solution uses Postgres database hosted which will be created and seeded when running in development mode.
Both web and database run in docker containers.
The data in the targetlist at BGE is ingested directly in the database. The data is refreshed at startup and after the cache expiration hours (both set in appsettings.json) Parameters for the database are set in the docker-compose.yml
This application supports the concept of themes. Based on the selected default theme sme values are set. The theme is available in the HTML elemenent as a data-theme attribute and via code in the application via
example:
import { ThemeContext } from '../themes/ThemeContext';
const { theme, switchTheme } = useContext(ThemeContext);
useEffect(() => {
const logo = document.getElementById("navbar-logo");
logo.src = theme.logo;
}, []);
Themes are not fully implemented. The code contains the BGE theme and the Arise theme (as as example, the Arise targetlist has moved to another repository)