Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps - Status | Demo | Docs | Install

AppDev

Cloudron App Packagers

Private

Posts


  • Looking for an App?
    murgeroM murgero

    I have been packaging apps for a while and looking to get back into the swing of it - if anyone would like to see any apps, please reply with it below, I'll see if I can mix up one or two. πŸ™‚

    Community Apps

  • How to create Sender from outbound mail ?
    andreasduerenA andreasdueren
    Mar 03 15:37:42 2026-03-03T21:37:42.190 request_id=GJlyiUIE9OJthqsAAMcB [info] GET /admin/shared-senders/new
    Mar 03 15:37:42 2026-03-03T21:37:42.202 request_id=GJlyiUIE9OJthqsAAMcB [info] Sent 500 in 11ms
    Mar 03 15:37:42 2026-03-03T21:37:42.203 request_id=GJlyiUIE9OJthqsAAMcB [error] ** (Phoenix.Template.UndefinedError) Could not render "_config.html" for KeilaWeb.SenderView, please define a matching clause for render/2 or define a template at "lib/keila_web/templates/sender/*". The following templates were compiled:
    Mar 03 15:37:42 %{form: %Phoenix.HTML.Form{source: #Ecto.Changeset<action: nil, changes: %{config: #Ecto.Changeset<action: :insert, changes: %{type: "ses"}, errors: [], data: #Keila.Mailings.Sender.Config<>, valid?: true, ...>}, errors: [], data: #Keila.Mailings.SharedSender<>, valid?: true, ...>, impl: Phoenix.HTML.FormData.Ecto.Changeset, id: "form", name: "shared_sender", data: %Keila.Mailings.SharedSender{__meta__: #Ecto.Schema.Metadata<:built, "mailings_shared_senders">, id: nil, name: nil, config: nil, inserted_at: nil, updated_at: nil}, action: nil, hidden: [], params: %{}, errors: [], options: [method: "post", id: "form", multipart: false, class: "mt-8 max-w-md flex flex-col gap-4", "@change": "setUnsavedReminder(true)", "x-data": true], index: nil}, sender_adapters: ["ses"]}
    Mar 03 15:37:42 (keila 0.19.0) lib/keila_web/controllers/shared_sender_admin_controller.ex:1: KeilaWeb.SharedSenderAdminController.action/2
    Mar 03 15:37:42 (keila 0.19.0) lib/keila_web/templates/shared_sender_admin/edit.html.heex:60: anonymous fn/3 in KeilaWeb.SharedSenderAdminView."edit.html"/1
    Mar 03 15:37:42 (phoenix 1.7.21) lib/phoenix/controller.ex:1008: anonymous fn/5 in Phoenix.Controller.template_render_to_iodata/4
    Mar 03 15:37:42 (phoenix 1.7.21) lib/phoenix/controller.ex:974: Phoenix.Controller.render_and_send/4
    Mar 03 15:37:42 (phoenix_live_view 1.1.24) lib/phoenix_live_view/engine.ex:130: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1
    Mar 03 15:37:42 (phoenix_live_view 1.1.24) lib/phoenix_live_view/engine.ex:142: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/3
    Mar 03 15:37:42 (phoenix_view 2.0.4) lib/phoenix_view.ex:694: Phoenix.View.__not_found__!/3
    Mar 03 15:37:42 (telemetry 1.3.0) /app/code/deps/telemetry/src/telemetry.erl:324: :telemetry.span/3
    
    Keila

  • IsoMan on Cloudron – ISO Image Management Made Simple
    vitetjV vitetj

    @joseph I tried implementing the proxyAuth addon, but I wasn’t able to properly sync it with OIDC or LDAP.

    The only way I managed to make it work was with a static login defined via environment variables stored in the app data. I’m not really comfortable with that approach, so I rolled it back for now πŸ˜…

    I’m going to study the original project more deeply to see if I can implement a proper unique token mechanism for downloads instead. I’m not a big fan of keeping secrets in a file.

    App Wishlist

  • Ente for cloudron, help for testing wanted.
    andreasduerenA andreasdueren

    @Muhanand Definitely possible. But this app just by nature requires a more sophisticated manual setup.

    App Packaging & Development

  • Bisq (decentralised P2P bitcoin exchange) on Cloudron
    timconsidineT timconsidine

    BISQ API (headless) :

    • added a SKILL.md for use with Nanobot / Openclaw
    App Wishlist

  • Bisq (decentralised P2P bitcoin exchange) on Cloudron
    timconsidineT timconsidine

    v0.0.2 : BISQ GUI released

    Git repo : https://git.cloudron.io/timconsidine/cloudron-bisqgui

    Will make a Community App after I move to 9.1

    Notes :

    • makes Bisq desktop app accessible in a browser
    • access from any device
    • reduces cumulative start-up time compared to desktop, which might often be closed and opened only when needed (each close/open requires Tor connection and market info to be loaded)
    • decentralised P2P so no exchange-based purchases with associated KYC blocks and trade identity leakage.

    Security:

    • protected by Cloudron proxyAuth
    • but it is essentially a single-use app, so make the app visibility and access in Cloudron app dashboard single user also
    • make sure you set a wallet password
    • don't put your life savings in it (for me this is short-term trades only, long-term trades/position holding is done with Trezor cold wallet)
    • consider purchasing on BISQ then moving purchases to a cold wallet for longer term holding
    App Wishlist

  • How to get music in?
    rmdesR rmdes

    Another way to import music fast :

    In-place import means Funkwhale indexes your music files without copying them β€” it reads the metadata (tags) and creates database entries, then streams directly from the original location.

    In the Cloudron context, it would work like this:

    1. Mount the volume at /app/data/music in Cloudron's Storage settings
    2. Files are immediately visible to Funkwhale - MUSIC_DIRECTORY_PATH already points there
    3. Import via CLI from the web terminal:
    /app/code/manage.sh import_files <library_id> "/app/data/music/" --in-place --recursive
    
    1. (Get your library ID from the Funkwhale web UI, create a library first if you haven't)
    2. Streaming works because nginx already serves /_protected/music/ from /app/data/music/ via X-Accel-Redirect, the files are served directly, no duplication

    The package even has scheduler tasks for maintaining in-place imports:

    • check_inplace_files_check - dry-run to see if any referenced files are missing
    • check_inplace_files_apply - actually update the database for missing files

    So the key point for the user: mount at /app/data/music, then in-place import just works out of the box. Their files stay on the mounted volume, Funkwhale only stores metadata in PostgreSQL, and nginx serves the audio directly from disk.

    Funkwhale

  • How to get music in?
    rmdesR rmdes

    @jdaviescoates you should mount the volume at /app/data/music in Cloudron's Storage settings instead of /media/Music.

    The package already expects music files at /app/data/music/, nginx already serves from there, and the env vars already point there. No env.sh changes needed, just change the mount point in Cloudron's UI.

    I have not tested with a volume mount (I'm still loading all my collection within /app/data/music natively in the container, but I will transition to volume mount soon

    Funkwhale

  • Funkwhale is now available
    rmdesR rmdes

    Yay !! glad to see it landing on the store !
    I'll investigate how best I can transition from my custom package to yours so that I can benefit from futur upgrades πŸ™‚

    Announcements

  • IsoMan on Cloudron – ISO Image Management Made Simple
    vitetjV vitetj

    @robi @james @timconsidine

    Morning on my side πŸ‘‹

    Here we go:
    https://raw.githubusercontent.com/vitetj/Cloudron-isoman/master/CloudronVersions.json

    It’s working for me πŸ™‚

    App Wishlist

Member List

girishG girish
P pathab
rmdesR rmdes
vitetjV vitetj
andreasduerenA andreasdueren
canadaduaneC canadaduane
njN nj
T TheNils
eyecreateE eyecreate
LanhildL Lanhild
W walski
KubernetesK Kubernetes
timconsidineT timconsidine
R random_eric
B bram
jeauJ jeau
marioM mario
eriktadE eriktad
BrutalBirdieB BrutalBirdie
mehdiM mehdi
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search