flet-build-template/{{cookiecutter.out_dir}}/web/index.html

54 lines
1.6 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<base href="{{ cookiecutter.base_url }}">
<meta charset="UTF-8">
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
<meta name="description" content="{{ cookiecutter.project_description }}">
<!-- iOS meta tags & icons -->
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="{{ cookiecutter.product_name }}">
<link rel="apple-touch-icon" href="icons/apple-touch-icon-192.png">
<!-- Favicon -->
<link rel="icon" type="image/png" href="favicon.png" />
<title>{{ cookiecutter.product_name }}</title>
<link rel="manifest" href="manifest.json">
<script>
var flet = {
pyodide: true,
multiView: false,
noCdn: "{{ cookiecutter.no_cdn }}".toLowerCase() == "true",
webSocketEndpoint: "/ws",
assetBase: "/",
routeUrlStrategy: "{{ cookiecutter.route_url_strategy }}",
canvasKitBaseUrl: "/canvaskit/",
pyodideUrl: "/pyodide/pyodide.js",
pythonModuleName: "{{ cookiecutter.python_module_name }}",
webRenderer: "{{ cookiecutter.web_renderer }}",
fontFallbackBaseUrl: "assets/fonts/", // for Noto Emoji, use Google CDN
appPackageUrl: "assets/app/app.zip"
}
flet.flutterAppLoaded = new Promise((resolve) => {
flet.flutterAppResolve = resolve;
});
flet.flutterAppLoaded.then((flutterApp) => {
console.log("Flutter app loaded");
});
</script>
<script src="python.js"></script>
</head>
<body>
<script src="flutter_bootstrap.js" async></script>
</body>
</html>