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 | Demo | Docs | Install
  1. Cloudron Forum
  2. App Wishlist
  3. CCAI : Cloudron Custom App Installer

CCAI : Cloudron Custom App Installer

Scheduled Pinned Locked Moved App Wishlist
25 Posts 7 Posters 2.8k Views 11 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ruihildtR ruihildt

    Serving this online seems incredibly risky and inviting users to enter their credentials on a random website seems setting a very wrong example.

    If you don't want to deal with antibot measures etc, you could package it as a tauri app for example. But now you are a packaged app developer and distributor.

    timconsidineT Offline
    timconsidineT Offline
    timconsidine
    App Dev
    wrote on last edited by timconsidine
    #14

    @ruihildt it’s not about not wanting to. It’s about how far to go and I’ve opened up that discussion.

    I have already put some antibot measures in some places. Adding some additional rate-limiting this evening.

    I am very open to discussing how much further to go.
    If you have any specific suggestions, I will gladly implement them (working on a 1-time authorisation. But frankly 2FA handles that much better anyway).

    I agree it’s not ideal, but I don’t feel it’s that risky.
    It uses exactly the same security that Cloudron uses.
    So if it is insecure, then by definition Cloudron is insecure.
    As always, all Cloudron users should :

    • have secure long passwords
    • use 2FA
    • ideally follow the recommendation to create a dedicated special purpose user and change its password after each use.

    No login creds are stored - code is open for inspection to confirm that.

    My clear preference is for this app to be in the AppStore so I can take down my site.
    If the Cloudron community prefer this to be taken down or locked down further, I will happily do so.

    The app and the site are just a response to the 100’s of requests for an easier way to add apps.

    1 Reply Last reply
    3
    • timconsidineT Offline
      timconsidineT Offline
      timconsidine
      App Dev
      wrote on last edited by
      #15

      New version : v4.3.2 (git.cloudron.io updated)
      Added optional Cloudflare Turnstile support.
      Default : not enabled
      Edit /app/data/.env to enable and add your config keys

      The 'hosted-as-a-service` ccai.appx.uk is now running with Turnstile for anti-bot protection.
      If you install this to your own Cloudron, you can choose to run without Turnstile or to enable it.

      Why Cloudflare Turnstile ?

      • easiest / best non-google captcha type anti-bot
      • free account with generous free-tier usage
      • minimal code dependencies to simplify app building

      Beyond this, it would need a user registration or failed login rate limiter.

      L 1 Reply Last reply
      2
      • timconsidineT timconsidine

        New version : v4.3.2 (git.cloudron.io updated)
        Added optional Cloudflare Turnstile support.
        Default : not enabled
        Edit /app/data/.env to enable and add your config keys

        The 'hosted-as-a-service` ccai.appx.uk is now running with Turnstile for anti-bot protection.
        If you install this to your own Cloudron, you can choose to run without Turnstile or to enable it.

        Why Cloudflare Turnstile ?

        • easiest / best non-google captcha type anti-bot
        • free account with generous free-tier usage
        • minimal code dependencies to simplify app building

        Beyond this, it would need a user registration or failed login rate limiter.

        L Offline
        L Offline
        LoudLemur
        wrote on last edited by
        #16

        @timconsidine said in CCAI : Cloudron Custom App Installer:

        Cloudflare Turnstile

        We had a thread here about CAPTCHA alternatives quite a while ago. One issue with Cloudflare is that it is unfortunately rapidly becoming a single choke-point for the whole internet. I ran a quick AI search for Free Software alternatives to proprietary Turnstile. This is what was suggested:

        Several open source alternatives to Cloudflare Turnstile exist, focusing on privacy-friendly bot protection, spam prevention, and user verification without relying on proprietary services. These often use proof-of-work (PoW) mechanisms to verify legitimacy invisibly or with minimal user friction, similar to Turnstile's approach. They are typically self-hostable, allowing full control and avoiding central choke points. Below is a list of notable options, including key features and implementation details.

        ALTCHA

        Description: A privacy-first CAPTCHA alternative that uses PoW to protect websites, APIs, and forms from spam and bots without tracking users. It's designed for seamless integration and escalates to code challenges only for high-risk cases.
        Key Features: Frictionless verification, WCAG 2.2 AA accessibility compliance, support for 50+ languages, no cookies or fingerprinting, and optional Sentinel for advanced threat detection (e.g., rate limiting, ML-based analysis).
        How it Works: The widget runs a PoW challenge in the background; if solved, it generates a token for server validation. Self-hostable via Docker, AWS, Azure, or Kubernetes.
        Licensing and Cost: MIT license for the core (fully open source and free); Sentinel is commercial for enterprise needs.
        Advantages over Turnstile: Smaller bundle size (30 kB vs. 85+ kB), faster load times (0 ms when bundled), and stricter privacy compliance (GDPR, HIPAA, etc.) with no data leakage.

        mCaptcha

        Description: A no-nonsense, PoW-based CAPTCHA system emphasizing user experience and privacy, acting as a drop-in replacement for traditional CAPTCHAs like reCAPTCHA.
        Key Features: Seamless UX without image puzzles, robust against NAT users (no IP reliance), API-compatible with reCAPTCHA/hCaptcha, and focused on making bot attacks computationally expensive.
        How it Works: Clients solve adjustable PoW challenges; the backend verifies them. It's fully automated and doesn't contribute to third-party ML training.
        Licensing and Cost: AGPL for the core, with client libraries under permissive free software licenses; entirely free and open source.
        Advantages over Turnstile: Fully self-hosted with no external dependencies, stronger emphasis on not profiling users, and libre software ethos.

        Cap

        Description: A lightweight, modern PoW CAPTCHA using SHA-256 hashes, designed for speed and simplicity as a direct alternative to Turnstile.
        Key Features: Invisible and floating modes, standalone REST API for any language/framework, customizable difficulty, and WASM solvers for web/Node.js.
        How it Works: The widget generates and solves challenges via Web Workers; the server validates them. Supports checkpoints for progressive verification.
        Licensing and Cost: Apache 2.0 license; fully open source and free.
        Advantages over Turnstile: Tiny size (12 kB widget), no tracking/fingerprinting, lower error rates, and higher customizability (full backend/frontend tweaks).

        Anubis

        Description: A Web AI Firewall utility that weighs connections with PoW challenges to block scrapers, bots, and DDoS attacks before they reach your site.
        Key Features: Heuristic-based bot detection, customizable rules/policies, non-JS challenge support, and integration as a reverse proxy.
        How it Works: Responds to requests with a JS (or non-JS) PoW program; only solved challenges grant access. Tunable difficulty makes scraping unprofitable.
        Licensing and Cost: Open source (repository on GitHub); free to use and self-host.
        Advantages over Turnstile: Explicitly targets AI scrapers and bots, supports broader heuristics beyond PoW, and has been used to mitigate real DDoS incidents.

        mosparo

        Description: A rule-based spam protection tool for online forms, functioning like an email spam filter rather than a traditional CAPTCHA.
        Key Features: Checks form data against custom rules, honeypot fields for bot detection, accessibility compliance, and multi-language support.
        How it Works: Integrates into forms to validate submissions server-side based on patterns/rules; blocks spam without user-visible challenges.
        Licensing and Cost: Open source under a permissive license; free and self-hostable via Docker.
        Advantages over Turnstile: Less intrusive (no challenges for legitimate users), focuses on content analysis over behavior, and fully accessible for screen readers/keyboards.

        Procaptcha

        Description: A privacy-focused verification tool redefining CAPTCHA with unique security approaches, often listed as an open source option for bot protection.
        Key Features: Emphasizes privacy and security without conventional puzzles; details are limited but include freemium elements for scaling.
        How it Works: Uses alternative verification methods (potentially PoW or similar); self-hostable with open components.
        Licensing and Cost: Open source with freemium model (free tier available).
        Advantages over Turnstile: Open source core allows modifications, though less detailed comparisons are available.

        1 Reply Last reply
        0
        • nostrdevN Offline
          nostrdevN Offline
          nostrdev
          wrote on last edited by
          #17

          Agreed that we should not use cloudflare, not just from the single-point-of-failure perspective, but also to protect user privacy

          1 Reply Last reply
          1
          • timconsidineT Offline
            timconsidineT Offline
            timconsidine
            App Dev
            wrote on last edited by
            #18

            I’m not a fan of Cloudflare - just put it in as fastest way to address a possible vulnerability.
            But proof of work is often a pain for users.
            I feel there are only 2 good solutions :
            Cloudron re-write as an official utility (resolves authentication much more neatly)
            CCAI adds user registration
            I’m thinking what direction to take it in if not adopted/rewritten

            1 Reply Last reply
            4
            • jamesJ james referenced this topic on
            • robiR Offline
              robiR Offline
              robi
              wrote on last edited by
              #19

              Found 2 bugs with latest CCAI

              1. After install of one app, still being logged in, it's impossible to click on another app to proceed with installation. Starting over of course requires re-logging in.

              2. I was upgrading to 9.0.12 while attempting this so got this:
                [9:05:52 PM] [2025-11-26 03:05:51] Failed to install app: 400 message: Box version exceeds Apps maxBoxVersion

              Conscious tech

              timconsidineT 1 Reply Last reply
              0
              • robiR robi

                Found 2 bugs with latest CCAI

                1. After install of one app, still being logged in, it's impossible to click on another app to proceed with installation. Starting over of course requires re-logging in.

                2. I was upgrading to 9.0.12 while attempting this so got this:
                  [9:05:52 PM] [2025-11-26 03:05:51] Failed to install app: 400 message: Box version exceeds Apps maxBoxVersion

                timconsidineT Offline
                timconsidineT Offline
                timconsidine
                App Dev
                wrote on last edited by
                #20

                @robi thank you for the report.
                I will investigate.
                I'm hoping that Cloudron will bring out their own version of this - the app would be so much easier for everyone if logging in was not needed (it was in the dashboard somewhere)

                I've not updated to 9.0.x yet - waiting for a later release

                robiR 1 Reply Last reply
                1
                • timconsidineT timconsidine

                  @robi thank you for the report.
                  I will investigate.
                  I'm hoping that Cloudron will bring out their own version of this - the app would be so much easier for everyone if logging in was not needed (it was in the dashboard somewhere)

                  I've not updated to 9.0.x yet - waiting for a later release

                  robiR Offline
                  robiR Offline
                  robi
                  wrote on last edited by
                  #21

                  @timconsidine you are welcome.

                  You can always test on the demo server.

                  And at least the second issue is easily solved via an expected version bump or just take out the check. Not sure why it's needed. Is it?

                  Conscious tech

                  1 Reply Last reply
                  0
                  • humptydumptyH Offline
                    humptydumptyH Offline
                    humptydumpty
                    wrote last edited by
                    #22

                    revive! and...

                    Thanks @timconsidine for this. I kept coming across CCAI but never looked into it until now. Brilliant approach. I have a few questions.

                    • Is there a doc/faq page on how to use this in case I want to add an app that isn't listed in the catalog?
                    • I noticed zoneminder (alpha) in the list - Is it safe enough to install on a production server? (just want to take a peek at it)
                    • If I install CCAI on my own server - is it pass protected or can anyone access/use it then?
                    • Q more for @staff what's your opinion on CCAI - will you deploy something similar to it?
                    timconsidineT 2 Replies Last reply
                    0
                    • humptydumptyH humptydumpty

                      revive! and...

                      Thanks @timconsidine for this. I kept coming across CCAI but never looked into it until now. Brilliant approach. I have a few questions.

                      • Is there a doc/faq page on how to use this in case I want to add an app that isn't listed in the catalog?
                      • I noticed zoneminder (alpha) in the list - Is it safe enough to install on a production server? (just want to take a peek at it)
                      • If I install CCAI on my own server - is it pass protected or can anyone access/use it then?
                      • Q more for @staff what's your opinion on CCAI - will you deploy something similar to it?
                      timconsidineT Offline
                      timconsidineT Offline
                      timconsidine
                      App Dev
                      wrote last edited by
                      #23

                      @humptydumpty thank you.
                      I am travelling today but will improve documentation when I get back.

                      In the interim :

                      • there is a button on front screen to add an app by yourself into the catalogue. It’s just filling in some basic details, so quite easy. But I will document it.
                      • if you don’t want it to go into the catalogue, you can scroll down, login and then populate the form manually with details for a one-off deployment
                      • if you deploy CCAI, it will currently be open front page just like CCAI.appx.uk is now (and you can import the master catalogue to your instance). I wasn’t sure that CCAI would have an ongoing usefulness so I didn’t add a login screen and wanted to leave it open for users. But with Cloudron team being always busy, I think there is a case for a private version, and will make a parallel app with login.
                      • a chunk of the app is handling the authentication needed to install an app (login to the Cloudron instance). If Cloudron were to implement something similar, most/all of this could go because the user’s instance would be already authenticated. So easier and more secure. I will have a go at building such an approach, behind a login screen. It could produce some efficiencies and also be more suited to a login protected and “private” installation.

                      Reminder for anyone looking at CCAI.
                      Cloudron authentication details are NEVER stored in this open version. They persist in memory for 15 minutes, then expire. And the user can logout before then if they wish.
                      It was critical for me that CCAI is secure to use, but I understand people won’t be 100% convinced without checking the source. But it’s there for people to do so if they want.

                      I paused work on CCAI pending a direction, so some polishing is needed for longer term usefulness, and I will look at doing this.

                      1 Reply Last reply
                      2
                      • humptydumptyH humptydumpty

                        revive! and...

                        Thanks @timconsidine for this. I kept coming across CCAI but never looked into it until now. Brilliant approach. I have a few questions.

                        • Is there a doc/faq page on how to use this in case I want to add an app that isn't listed in the catalog?
                        • I noticed zoneminder (alpha) in the list - Is it safe enough to install on a production server? (just want to take a peek at it)
                        • If I install CCAI on my own server - is it pass protected or can anyone access/use it then?
                        • Q more for @staff what's your opinion on CCAI - will you deploy something similar to it?
                        timconsidineT Offline
                        timconsidineT Offline
                        timconsidine
                        App Dev
                        wrote last edited by
                        #24

                        @humptydumpty oh, about zoneminder ….

                        Yes it is safe to install in a production server.
                        The app installs and loads and some essential configuration can be done, like adding a camera.
                        But it’s not currently loading a stream from the camera.

                        The reason it is ALPHA with warnings is that Zoneminder has some complex runtime internal links for streaming feed which does not fall easily into Cloudron’s separation of /app/code and /app/data. I have been trying to find a solution to this but paused to consider how.

                        I might need to do some code tweaks during deployment to handle the runtime link generation.
                        It’s not ideal but might be possible to do in a way which can produce a stable maintainable app.

                        I want Zoneminder for my own use, so not giving up yet.
                        You can install to take a peek, just don’t expect the camera feed to show … or let me know if it does !!

                        1 Reply Last reply
                        1
                        • timconsidineT Offline
                          timconsidineT Offline
                          timconsidine
                          App Dev
                          wrote last edited by timconsidine
                          #25

                          I have no doubt that Cloudron team would do a much better job of implementing a custom app installer. Technically not difficult and they have the benefit of working it into and inside the platform.

                          But I acknowledge that a decision to do so is not technically driven, but strategic. Making it easier to install custom apps to Cloudron will, in my opinion, support strong Cloudron growth.

                          But it comes with the risk of low-quality custom apps harming Cloudron reputation and increasing support loads.
                          If it’s an official platform-based installer, it could be difficult to push back against support tickets, even if the app is marked UNSTABLE or CUSTOM.

                          Maybe some community based app ranking or scoring could help, but I acknowledge these are not robust answers to the issue.

                          1 Reply Last reply
                          1
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          • Login

                          • Don't have an account? Register

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