migrate to bun, add aves
This commit is contained in:
parent
755c590526
commit
90ea4d100c
10
Dockerfile
10
Dockerfile
@ -1,8 +1,8 @@
|
|||||||
FROM node:22
|
FROM oven/bun:latest
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY package.json ./
|
COPY package.json bun.lockb ./
|
||||||
RUN npm install -g bun && bun install
|
RUN bun install
|
||||||
COPY . .
|
COPY . .
|
||||||
RUN npm run build:css
|
RUN bun run build:css
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
CMD ["node", "app.js"]
|
CMD ["bun", "run", "app.js"]
|
129
data/apps.json
129
data/apps.json
@ -820,5 +820,134 @@
|
|||||||
},
|
},
|
||||||
"description": "This app supports generating, saving, loading, parsing and verifying Android key and ID attestation data.\n\nThe app is used for self-testing, so it has no network permission. The certificate revocation data is embedded in the apk and will not be updated online. If the system is compromised, parsing and verifying is not safe, you should save the data to a file and then load the file on another device to verify it.\n\nThis app also supports loading attestation data generated by other software, and the supported storage format is PkiPath and PKCS7.",
|
"description": "This app supports generating, saving, loading, parsing and verifying Android key and ID attestation data.\n\nThe app is used for self-testing, so it has no network permission. The certificate revocation data is embedded in the apk and will not be updated online. If the system is compromised, parsing and verifying is not safe, you should save the data to a file and then load the file on another device to verify it.\n\nThis app also supports loading attestation data generated by other software, and the supported storage format is PkiPath and PKCS7.",
|
||||||
"github": "https://github.com/vvb2060/KeyAttestation"
|
"github": "https://github.com/vvb2060/KeyAttestation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "25",
|
||||||
|
"name": "Aves",
|
||||||
|
"icon": "/img/apps/aves.svg",
|
||||||
|
"foss": true,
|
||||||
|
"root": false,
|
||||||
|
"selfHosted": true,
|
||||||
|
"downloadLinks": {
|
||||||
|
"v1.12.1": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.12.1/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.12.0": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.12.0/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.20": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.20/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.19": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.19/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.18": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.18/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.17": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.17/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.16": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.16/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.15": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.15/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.14": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.14/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.13": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.13/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.12": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.12/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.11": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.11/app-play-release.apk"
|
||||||
|
},
|
||||||
|
"v1.11.10": {
|
||||||
|
"izzy-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-izzy-arm64-v8a-release.apk",
|
||||||
|
"izzy-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-izzy-armeabi-v7a-release.apk",
|
||||||
|
"izzy-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-izzy-x86_64-release.apk",
|
||||||
|
"libre-arm64-v8a": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-libre-arm64-v8a-release.apk",
|
||||||
|
"libre-armeabi-v7a": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-libre-armeabi-v7a-release.apk",
|
||||||
|
"libre-x86-64": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-libre-x86_64-release.apk",
|
||||||
|
"play": "https://github.com/deckerst/aves/releases/download/v1.11.10/app-play-release.apk"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"description": "Aves can handle all sorts of images and videos, including your typical JPEGs and MP4s, but also more exotic things like multi-page TIFFs, SVGs, old AVIs and more!\n\nIt scans your media collection to identify motion photos, panoramas (aka photo spheres), 360° videos, as well as GeoTIFF files.\n\nNavigation and search is an important part of Aves. The goal is for users to easily flow from albums to photos to tags to maps, etc.\n\nAves integrates with Android (from KitKat to Android 14, including Android TV) with features such as widgets, app shortcuts, screen saver and global search handling. It also works as a media viewer and picker.",
|
||||||
|
"github": "https://github.com/deckerst/aves"
|
||||||
}
|
}
|
||||||
]
|
]
|
@ -4,9 +4,9 @@ services:
|
|||||||
container_name: modules-app
|
container_name: modules-app
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
- "3000:3000"
|
- "3002:3000"
|
||||||
volumes:
|
volumes:
|
||||||
- .:/app
|
- .:/app
|
||||||
command: ["node", "app.js"]
|
command: ["bun", "run", "app.js"]
|
||||||
environment:
|
environment:
|
||||||
- NODE_ENV=production
|
- NODE_ENV=production
|
1
public/img/apps/aves.svg
Normal file
1
public/img/apps/aves.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg width="100" height="100" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="m29.04 62.547 16.498 16.497a2.916 2.916 0 0 1 0 4.125l-7.887 7.887a15.094 15.094 0 0 1-21.345 0l-7.887-7.887a2.916 2.916 0 0 1 0-4.124l16.497-16.498a2.916 2.916 0 0 1 4.125 0z" style="fill:#ef435a;fill-opacity:1;fill-rule:evenodd;stroke:#000;stroke-width:3.0565;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"/><path style="fill:#e0e0e0;fill-rule:evenodd;stroke:#000;stroke-width:3.05648;stroke-linecap:round;stroke-linejoin:round" d="m53.669 37.917 16.498 16.498a2.91 2.91 0 0 1 0 4.123L53.669 75.036a2.91 2.91 0 0 1-4.124 0L33.047 58.538a2.91 2.91 0 0 1 0-4.123l16.498-16.498a2.91 2.91 0 0 1 4.124 0z"/><path style="fill:#ffc11f;fill-opacity:1;fill-rule:evenodd;stroke:#000;stroke-width:3.05648;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1" d="M57.678 29.784a2.916 2.916 0 0 0 0 4.124l16.498 16.497a2.916 2.916 0 0 0 4.124 0l16.497-16.497a2.916 2.916 0 0 0 0-4.124l-8.188-8.189a14.667 14.667 0 0 0-20.742 0zm16.284-.213a3.219 3.219 0 0 1 4.55 0 3.219 3.219 0 0 1 0 4.55 3.219 3.219 0 0 1-4.55 0 3.219 3.219 0 0 1 0-4.551z"/><path d="M21.548 5.792 45.636 29.88a2.916 2.916 0 0 1 0 4.124L29.138 50.501a2.916 2.916 0 0 1-4.124 0l-10.7-10.7a22.78 22.78 0 0 1 0-32.215l1.792-1.794a3.848 3.848 0 0 1 5.442 0z" style="fill:#1cc8eb;fill-opacity:1;fill-rule:evenodd;stroke:#000;stroke-width:3.0565;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"/></svg>
|
After Width: | Height: | Size: 1.5 KiB |
Loading…
x
Reference in New Issue
Block a user