iris webmanifest, images and .well-known
@ -3,5 +3,5 @@
|
|||||||
"appNameCapitalized": "Iris",
|
"appNameCapitalized": "Iris",
|
||||||
"appTitle": "iris",
|
"appTitle": "iris",
|
||||||
"nip05Domain": "iris.to",
|
"nip05Domain": "iris.to",
|
||||||
"favicon": "public/iris.ico"
|
"favicon": "public/iris/favicon.ico"
|
||||||
}
|
}
|
||||||
|
12
packages/app/public/iris/.well-known/assetlinks.json
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"relation": ["delegate_permission/common.handle_all_urls"],
|
||||||
|
"target": {
|
||||||
|
"namespace": "android_app",
|
||||||
|
"package_name": "to.iris.twa",
|
||||||
|
"sha256_cert_fingerprints": [
|
||||||
|
"63:B5:70:E8:F1:75:7E:D6:EF:81:11:66:F4:9D:47:AB:49:3C:2E:00:B9:67:92:40:89:A5:03:0B:96:B9:40:09"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
BIN
packages/app/public/iris/img/android-chrome-192x192.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
packages/app/public/iris/img/android-chrome-512x512.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
packages/app/public/iris/img/irisconnects.png
Normal file
After Width: | Height: | Size: 64 KiB |
BIN
packages/app/public/iris/img/maskable_icon.png
Normal file
After Width: | Height: | Size: 71 KiB |
BIN
packages/app/public/iris/img/maskable_icon_x192.png
Normal file
After Width: | Height: | Size: 12 KiB |
41
packages/app/public/iris/manifest_iris.json
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"short_name": "Iris",
|
||||||
|
"name": "Iris",
|
||||||
|
"description": "Fast nostr web ui",
|
||||||
|
"id": "/",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/public/iris/android-chrome-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/public/iris/android-chrome-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png",
|
||||||
|
"purpose": "any"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/public/iris/maskable_icon.png",
|
||||||
|
"sizes": "640x640",
|
||||||
|
"type": "image/png",
|
||||||
|
"purpose": "maskable"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/public/iris/maskable_icon_x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png",
|
||||||
|
"purpose": "maskable"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"start_url": "/",
|
||||||
|
"display": "standalone",
|
||||||
|
"theme_color": "#000000",
|
||||||
|
"background_color": "#000000",
|
||||||
|
"protocol_handlers": [
|
||||||
|
{
|
||||||
|
"protocol": "web+nostr",
|
||||||
|
"url": "/%s"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
@ -14,6 +14,23 @@ const appConfig = require("config");
|
|||||||
|
|
||||||
const isProduction = process.env.NODE_ENV == "production";
|
const isProduction = process.env.NODE_ENV == "production";
|
||||||
|
|
||||||
|
const appTitle = appConfig.get("appTitle");
|
||||||
|
|
||||||
|
const copyPatterns = [
|
||||||
|
{ from: "public/robots.txt" },
|
||||||
|
{ from: "public/nostrich_512.png" },
|
||||||
|
{ from: "public/nostrich_256.png" },
|
||||||
|
{ from: "_headers" },
|
||||||
|
];
|
||||||
|
|
||||||
|
if (appTitle === "iris") {
|
||||||
|
copyPatterns.push({ from: "public/iris/manifest_iris.json", to: "manifest.json" });
|
||||||
|
copyPatterns.push({ from: "public/iris/img", to: "img" });
|
||||||
|
copyPatterns.push({ from: "public/iris/.well-known", to: ".well-known" });
|
||||||
|
} else {
|
||||||
|
copyPatterns.push({ from: "public/manifest.json" });
|
||||||
|
}
|
||||||
|
|
||||||
const config = {
|
const config = {
|
||||||
entry: {
|
entry: {
|
||||||
main: "./src/index.tsx",
|
main: "./src/index.tsx",
|
||||||
@ -39,20 +56,14 @@ const config = {
|
|||||||
},
|
},
|
||||||
plugins: [
|
plugins: [
|
||||||
new CopyPlugin({
|
new CopyPlugin({
|
||||||
patterns: [
|
patterns: copyPatterns,
|
||||||
{ from: "public/manifest.json" },
|
|
||||||
{ from: "public/robots.txt" },
|
|
||||||
{ from: "public/nostrich_512.png" },
|
|
||||||
{ from: "public/nostrich_256.png" },
|
|
||||||
{ from: "_headers" },
|
|
||||||
],
|
|
||||||
}),
|
}),
|
||||||
new HtmlWebpackPlugin({
|
new HtmlWebpackPlugin({
|
||||||
template: "public/index.html",
|
template: "public/index.html",
|
||||||
favicon: appConfig.get("favicon"),
|
favicon: appConfig.get("favicon"),
|
||||||
excludeChunks: ["pow", "bench"],
|
excludeChunks: ["pow", "bench"],
|
||||||
templateParameters: {
|
templateParameters: {
|
||||||
appTitle: appConfig.get("appTitle"),
|
appTitle,
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
new HtmlWebpackPlugin({
|
new HtmlWebpackPlugin({
|
||||||
|