diff --git a/blueprints/chroma/chroma.svg b/blueprints/chroma/chroma.svg new file mode 100644 index 00000000..60112fc5 --- /dev/null +++ b/blueprints/chroma/chroma.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/blueprints/chroma/docker-compose.yml b/blueprints/chroma/docker-compose.yml new file mode 100644 index 00000000..81ebe240 --- /dev/null +++ b/blueprints/chroma/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.8" + +services: + chroma: + image: chromadb/chroma:1.5.6 + restart: unless-stopped + expose: + - "8000" + environment: + - ANONYMIZED_TELEMETRY=FALSE + volumes: + - chroma-data:/data + +volumes: + chroma-data: diff --git a/blueprints/chroma/meta.json b/blueprints/chroma/meta.json new file mode 100644 index 00000000..101ec0fa --- /dev/null +++ b/blueprints/chroma/meta.json @@ -0,0 +1,18 @@ +{ + "id": "chroma", + "name": "Chroma", + "version": "1.5.6", + "description": "Chroma is an open-source embedding database for AI applications, with persistent vector storage and a simple HTTP API.", + "logo": "chroma.svg", + "links": { + "github": "https://github.com/chroma-core/chroma", + "website": "https://www.trychroma.com/", + "docs": "https://docs.trychroma.com/" + }, + "tags": [ + "ai", + "vector-database", + "embeddings", + "database" + ] +} diff --git a/blueprints/chroma/template.toml b/blueprints/chroma/template.toml new file mode 100644 index 00000000..532cb80f --- /dev/null +++ b/blueprints/chroma/template.toml @@ -0,0 +1,6 @@ +[config] +[[config.domains]] +serviceName = "chroma" +port = 8000 +host = "${domain}" +path = "/api/v2/heartbeat" diff --git a/blueprints/homebox/docker-compose.yml b/blueprints/homebox/docker-compose.yml new file mode 100644 index 00000000..b305c45b --- /dev/null +++ b/blueprints/homebox/docker-compose.yml @@ -0,0 +1,16 @@ +version: "3.8" + +services: + homebox: + image: ghcr.io/sysadminsmedia/homebox:latest + restart: unless-stopped + expose: + - "7745" + environment: + - TZ=${TZ} + - HBOX_AUTH_API_KEY_PEPPER=${HBOX_AUTH_API_KEY_PEPPER} + volumes: + - homebox-data:/data + +volumes: + homebox-data: diff --git a/blueprints/homebox/homebox.svg b/blueprints/homebox/homebox.svg new file mode 100644 index 00000000..029b516f --- /dev/null +++ b/blueprints/homebox/homebox.svg @@ -0,0 +1 @@ + diff --git a/blueprints/homebox/meta.json b/blueprints/homebox/meta.json new file mode 100644 index 00000000..2cc46c51 --- /dev/null +++ b/blueprints/homebox/meta.json @@ -0,0 +1,18 @@ +{ + "id": "homebox", + "name": "Homebox", + "version": "latest", + "description": "Homebox is a self-hosted home inventory and organization app for tracking belongings, locations, and labels.", + "logo": "homebox.svg", + "links": { + "github": "https://github.com/sysadminsmedia/homebox", + "website": "https://homebox.software/", + "docs": "https://homebox.software/en/" + }, + "tags": [ + "inventory", + "home", + "organization", + "self-hosted" + ] +} diff --git a/blueprints/homebox/template.toml b/blueprints/homebox/template.toml new file mode 100644 index 00000000..70e45cbe --- /dev/null +++ b/blueprints/homebox/template.toml @@ -0,0 +1,13 @@ +[variables] +timezone = "Etc/UTC" +api_key_pepper = "${password:64}" + +[config] +[[config.domains]] +serviceName = "homebox" +port = 7745 +host = "${domain}" + +[config.env] +TZ = "${timezone}" +HBOX_AUTH_API_KEY_PEPPER = "${api_key_pepper}" diff --git a/blueprints/kavita/docker-compose.yml b/blueprints/kavita/docker-compose.yml new file mode 100644 index 00000000..c4db4893 --- /dev/null +++ b/blueprints/kavita/docker-compose.yml @@ -0,0 +1,21 @@ +version: "3.8" + +services: + kavita: + image: jvmilazz0/kavita:latest + restart: unless-stopped + expose: + - "5000" + environment: + - TZ=${TZ} + volumes: + - kavita-config:/kavita/config + - kavita-media:/manga + - kavita-books:/books + - kavita-comics:/comics + +volumes: + kavita-config: + kavita-media: + kavita-books: + kavita-comics: diff --git a/blueprints/kavita/kavita.svg b/blueprints/kavita/kavita.svg new file mode 100644 index 00000000..d2940227 --- /dev/null +++ b/blueprints/kavita/kavita.svg @@ -0,0 +1 @@ + diff --git a/blueprints/kavita/meta.json b/blueprints/kavita/meta.json new file mode 100644 index 00000000..e7ea31a9 --- /dev/null +++ b/blueprints/kavita/meta.json @@ -0,0 +1,18 @@ +{ + "id": "kavita", + "name": "Kavita", + "version": "latest", + "description": "Kavita is a self-hosted digital library server for reading manga, comics, and ebooks from any device.", + "logo": "kavita.svg", + "links": { + "github": "https://github.com/Kareadita/Kavita", + "website": "https://www.kavitareader.com/", + "docs": "https://wiki.kavitareader.com/installation/docker/" + }, + "tags": [ + "media", + "ebooks", + "comics", + "library" + ] +} diff --git a/blueprints/kavita/template.toml b/blueprints/kavita/template.toml new file mode 100644 index 00000000..20187dad --- /dev/null +++ b/blueprints/kavita/template.toml @@ -0,0 +1,11 @@ +[variables] +timezone = "Etc/UTC" + +[config] +[[config.domains]] +serviceName = "kavita" +port = 5000 +host = "${domain}" + +[config.env] +TZ = "${timezone}" diff --git a/blueprints/languagetool/docker-compose.yml b/blueprints/languagetool/docker-compose.yml new file mode 100644 index 00000000..3b6e8105 --- /dev/null +++ b/blueprints/languagetool/docker-compose.yml @@ -0,0 +1,8 @@ +version: "3.8" + +services: + languagetool: + image: collabora/languagetool:6.6 + restart: unless-stopped + expose: + - "8010" diff --git a/blueprints/languagetool/languagetool.svg b/blueprints/languagetool/languagetool.svg new file mode 100644 index 00000000..24b55c7e --- /dev/null +++ b/blueprints/languagetool/languagetool.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/blueprints/languagetool/meta.json b/blueprints/languagetool/meta.json new file mode 100644 index 00000000..5cdf905f --- /dev/null +++ b/blueprints/languagetool/meta.json @@ -0,0 +1,18 @@ +{ + "id": "languagetool", + "name": "LanguageTool", + "version": "6.6", + "description": "LanguageTool is an open-source grammar, style, and spell checker that can run as a self-hosted HTTP service.", + "logo": "languagetool.svg", + "links": { + "github": "https://github.com/languagetool-org/languagetool", + "website": "https://languagetool.org/", + "docs": "https://dev.languagetool.org/http-server" + }, + "tags": [ + "writing", + "grammar", + "spellcheck", + "api" + ] +} diff --git a/blueprints/languagetool/template.toml b/blueprints/languagetool/template.toml new file mode 100644 index 00000000..82a64fba --- /dev/null +++ b/blueprints/languagetool/template.toml @@ -0,0 +1,6 @@ +[config] +[[config.domains]] +serviceName = "languagetool" +port = 8010 +host = "${domain}" +path = "/v2/languages" diff --git a/blueprints/pairdrop/docker-compose.yml b/blueprints/pairdrop/docker-compose.yml new file mode 100644 index 00000000..7dd5cbaa --- /dev/null +++ b/blueprints/pairdrop/docker-compose.yml @@ -0,0 +1,17 @@ +version: "3.8" + +services: + pairdrop: + image: lscr.io/linuxserver/pairdrop:latest + restart: unless-stopped + expose: + - "3000" + environment: + - PUID=1000 + - PGID=1000 + - TZ=${TZ} + volumes: + - pairdrop-config:/config + +volumes: + pairdrop-config: diff --git a/blueprints/pairdrop/meta.json b/blueprints/pairdrop/meta.json new file mode 100644 index 00000000..84937691 --- /dev/null +++ b/blueprints/pairdrop/meta.json @@ -0,0 +1,18 @@ +{ + "id": "pairdrop", + "name": "PairDrop", + "version": "latest", + "description": "PairDrop is a self-hosted local file sharing web app for sending files and text between nearby devices.", + "logo": "pairdrop.svg", + "links": { + "github": "https://github.com/schlagmichdoch/PairDrop", + "website": "https://pairdrop.net/", + "docs": "https://github.com/schlagmichdoch/PairDrop/blob/master/docs/host-your-own.md" + }, + "tags": [ + "file-sharing", + "p2p", + "web-app", + "self-hosted" + ] +} diff --git a/blueprints/pairdrop/pairdrop.svg b/blueprints/pairdrop/pairdrop.svg new file mode 100644 index 00000000..56e79667 --- /dev/null +++ b/blueprints/pairdrop/pairdrop.svg @@ -0,0 +1 @@ + diff --git a/blueprints/pairdrop/template.toml b/blueprints/pairdrop/template.toml new file mode 100644 index 00000000..a7134500 --- /dev/null +++ b/blueprints/pairdrop/template.toml @@ -0,0 +1,11 @@ +[variables] +timezone = "Etc/UTC" + +[config] +[[config.domains]] +serviceName = "pairdrop" +port = 3000 +host = "${domain}" + +[config.env] +TZ = "${timezone}" diff --git a/blueprints/shiori/docker-compose.yml b/blueprints/shiori/docker-compose.yml new file mode 100644 index 00000000..213c3c96 --- /dev/null +++ b/blueprints/shiori/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.8" + +services: + shiori: + image: ghcr.io/go-shiori/shiori:v1.8.0-2-g585ea34 + restart: unless-stopped + expose: + - "8080" + environment: + - SHIORI_DIR=/srv/shiori + volumes: + - shiori-data:/srv/shiori + +volumes: + shiori-data: diff --git a/blueprints/shiori/meta.json b/blueprints/shiori/meta.json new file mode 100644 index 00000000..fa818d7f --- /dev/null +++ b/blueprints/shiori/meta.json @@ -0,0 +1,18 @@ +{ + "id": "shiori", + "name": "Shiori", + "version": "v1.8.0-2-g585ea34", + "description": "Shiori is a simple self-hosted bookmark manager with offline archive support and a web interface.", + "logo": "shiori.svg", + "links": { + "github": "https://github.com/go-shiori/shiori", + "website": "https://go-shiori.github.io/shiori/", + "docs": "https://go-shiori.github.io/shiori/" + }, + "tags": [ + "bookmarks", + "read-it-later", + "archiving", + "self-hosted" + ] +} diff --git a/blueprints/shiori/shiori.svg b/blueprints/shiori/shiori.svg new file mode 100644 index 00000000..0ce7e245 --- /dev/null +++ b/blueprints/shiori/shiori.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/blueprints/shiori/template.toml b/blueprints/shiori/template.toml new file mode 100644 index 00000000..158ba003 --- /dev/null +++ b/blueprints/shiori/template.toml @@ -0,0 +1,5 @@ +[config] +[[config.domains]] +serviceName = "shiori" +port = 8080 +host = "${domain}" diff --git a/blueprints/wakapi/docker-compose.yml b/blueprints/wakapi/docker-compose.yml new file mode 100644 index 00000000..ce399231 --- /dev/null +++ b/blueprints/wakapi/docker-compose.yml @@ -0,0 +1,18 @@ +version: "3.8" + +services: + wakapi: + image: ghcr.io/muety/wakapi:latest + restart: unless-stopped + expose: + - "3000" + environment: + - WAKAPI_PASSWORD_SALT=${WAKAPI_PASSWORD_SALT} + - WAKAPI_DB_TYPE=sqlite3 + - WAKAPI_DB_NAME=/data/wakapi.db + - WAKAPI_LISTEN_IPV4=0.0.0.0 + volumes: + - wakapi-data:/data + +volumes: + wakapi-data: diff --git a/blueprints/wakapi/meta.json b/blueprints/wakapi/meta.json new file mode 100644 index 00000000..2512f265 --- /dev/null +++ b/blueprints/wakapi/meta.json @@ -0,0 +1,18 @@ +{ + "id": "wakapi", + "name": "Wakapi", + "version": "latest", + "description": "Wakapi is a self-hosted WakaTime-compatible backend for tracking coding activity and developer statistics.", + "logo": "wakapi.svg", + "links": { + "github": "https://github.com/muety/wakapi", + "website": "https://wakapi.dev/", + "docs": "https://github.com/muety/wakapi#-installation" + }, + "tags": [ + "developer-tools", + "analytics", + "wakatime", + "self-hosted" + ] +} diff --git a/blueprints/wakapi/template.toml b/blueprints/wakapi/template.toml new file mode 100644 index 00000000..939158b3 --- /dev/null +++ b/blueprints/wakapi/template.toml @@ -0,0 +1,11 @@ +[variables] +password_salt = "${password:64}" + +[config] +[[config.domains]] +serviceName = "wakapi" +port = 3000 +host = "${domain}" + +[config.env] +WAKAPI_PASSWORD_SALT = "${password_salt}" diff --git a/blueprints/wakapi/wakapi.svg b/blueprints/wakapi/wakapi.svg new file mode 100644 index 00000000..4acaecb6 --- /dev/null +++ b/blueprints/wakapi/wakapi.svg @@ -0,0 +1 @@ +