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
  • 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. Really Simple Form App

Really Simple Form App

Scheduled Pinned Locked Moved App Wishlist
10 Posts 3 Posters 1.6k Views 3 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.
    • timconsidineT Offline
      timconsidineT Offline
      timconsidine
      App Dev
      wrote on last edited by timconsidine
      #1

      OK, bit naughty (sorry) adding this as a wishlist, but here we go.

      I've struggled to find a suitable simple form app.
      Everything is a darned obese elephant doing a job which a mouse can do.
      And the mouse does a better (as in more functional) job !
      (Yep, looking at you Nextcloud, formio, ohmyform, lime-survey etc. etc.)

      So I built one "to scratch my itch".
      And it only seems fair to share it in case it helps others.

      https://git.cloudron.io/timconsidine/custom-form-cloudron

      Configurable Form storing to Directus

      This is a simple web app running in NodeJS to display a form and write the responses to a Directus collection.

      By "simple", I mean it is NOT a full-blown forms solution, and is not meant to be. This gets the job done simply, easily, without installing an elephant to pull what a single mouse can do by itself.

      The primary page displays the form with fields you set in config.json.

      A second page allows the viewing of responses as a web page, which can be printed using standard browser functionality to paper or PDF.

      Data is in Directus ready for use in another app if needed.

      A key feature of the app is that the primary app and form elements can be set in the app's .env file.

      • DIRECTUS_TOKEN
      • DIRECTUS_COLLECTION_URL
      • YOUR OWN FORM FIELDS !!
      • VIEW_PAGE_USERNAME
      • VIEW_PAGE_PASSWORD
      • PAGE_TITLE
      • HEADER_TITLE
      • SUBHEADER_1
      • SUBHEADER_2
      • FOOTER_BACKGROUND_COLOR
      • FOOTER_TEXT_COLOR
      • YOUR LOGO (upload to /app/data/public)

      Just edit /app/data/.env AND RESTART THE APP.

      The form is deliberately not highly styled.
      Minimalist and functional, not whizz-bang.
      Want whizz-bang ? Go for it - edit index.html.

      The view page is password-protected - change the values in /app/data.env.
      The view page is also very plain design, so that it can easily be printed to paper or PDF.
      This is the form page.

      Screenshot 2023-11-25 at 18.54.02.png

      ToDo :

      • add support for additional form field types (date, checkbox etc.)
        [I only needed text and select initially]
      1 Reply Last reply
      10
      • andreasduerenA Online
        andreasduerenA Online
        andreasdueren
        wrote on last edited by
        #2

        Nice job!

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

          I have added support for additional field types :

          • decimal
          • integer
          • checkbox / boolean
          • date

          https://git.cloudron.io/timconsidine/custom-form-cloudron

          1 Reply Last reply
          2
          • L Offline
            L Offline
            LoudLemur
            wrote on last edited by LoudLemur
            #4

            Thanks for this, Tim. Does it support uploading a file as part of the form? For example, could questions include:

            Please upload a .pdf / .img / .mkv

            If so, where would the storage be and how is it configured?

            Also, do you have a screenshot of how things look when you have had several responses to a form? For example, if the form had three questions and 4 respondents, how would it look?

            timconsidineT 1 Reply Last reply
            0
            • L LoudLemur

              Thanks for this, Tim. Does it support uploading a file as part of the form? For example, could questions include:

              Please upload a .pdf / .img / .mkv

              If so, where would the storage be and how is it configured?

              Also, do you have a screenshot of how things look when you have had several responses to a form? For example, if the form had three questions and 4 respondents, how would it look?

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

              @LoudLemur file upload is not currently supported, but it's a great suggestion, and I will add it to the ToDo list.

              Storage : sounds like you have a preference ?
              I'd probably add a files path to the configuration for somewhere in /app/data, e.g. default /app/data/files.
              Where would you want it to be ?

              Here's a mock-up with dummy data, showing the view page.
              Design is "clean" to be printed to paper or PDF using browser print function.

              Screenshot 2023-12-08 at 00.33.03 Large.jpeg

              And the Directus view is quite clean and useful :

              Screenshot 2023-12-08 at 00.50.26 Large.jpeg

              If you have a form in mind, let me know and I will knock one up for you.

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

                Current ToDo list :

                • add simple admin screen to edit config.json (saves launching File Manager to open file)
                • add additional text area to main form page (for instructions, explanations etc.)
                • add some anti-spam measure, maybe just a privacy-friendly captcha (concept is open access form submission, but anything open can attract some robot after long enough)
                • add sort functionality for the View page (to sort responses by a form field)
                • add file upload

                Happy to consider other additions.

                1 Reply Last reply
                1
                • L Offline
                  L Offline
                  LoudLemur
                  wrote on last edited by
                  #7

                  Thanks for asking!

                  For data storage, I would like it to be the Cloudron default, /home/yellowtent/appsdata/...

                  Then wherever would be easiest for some alternative block/object storage, if another location were chosen. It would be sweet if a storage allowance for the application could be set to an arbitrary value from the admin panel. Maybe deleting older uploaded content on a first in / first out basis, if the limit is reached.

                  I hope that the form supports responses in the form of a radio button choice / check-box, too.

                  As a stretch goal when everything else is sorted, maybe code it in such a way that data could be presented using e.g. Apache eCharts: https://echarts.apache.org/examples/en/index.html#chart-type-sunburst

                  timconsidineT 1 Reply Last reply
                  0
                  • L Offline
                    L Offline
                    LoudLemur
                    wrote on last edited by
                    #8

                    Also, are you going to try and have AI review or even 1st draft the code?

                    timconsidineT 1 Reply Last reply
                    0
                    • L LoudLemur

                      Also, are you going to try and have AI review or even 1st draft the code?

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

                      @LoudLemur a lot of it was written by AI !!
                      Reviewed by me (but might be better to trust AI more as I am not a Node developer 😄 )

                      1 Reply Last reply
                      0
                      • L LoudLemur

                        Thanks for asking!

                        For data storage, I would like it to be the Cloudron default, /home/yellowtent/appsdata/...

                        Then wherever would be easiest for some alternative block/object storage, if another location were chosen. It would be sweet if a storage allowance for the application could be set to an arbitrary value from the admin panel. Maybe deleting older uploaded content on a first in / first out basis, if the limit is reached.

                        I hope that the form supports responses in the form of a radio button choice / check-box, too.

                        As a stretch goal when everything else is sorted, maybe code it in such a way that data could be presented using e.g. Apache eCharts: https://echarts.apache.org/examples/en/index.html#chart-type-sunburst

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

                        @LoudLemur I will take a look at Apache Charts, but not really into it, and it might not be within scope of "really simple form" app.

                        Directus might also be able to store file uploads - haven't checked - but I am not a fan of files in database storage.

                        1 Reply Last reply
                        0
                        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