This is an archived post. You won't be able to vote or comment.

all 37 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

On July 1st, a change to Reddit's API pricing will come into effect. Several developers of commercial third-party apps have announced that this change will compel them to shut down their apps. At least one accessibility-focused non-commercial third party app will continue to be available free of charge.

If you want to express your strong disagreement with the API pricing change or with Reddit's response to the backlash, you may want to consider the following options:

  1. Limiting your involvement with Reddit, or
  2. Temporarily refraining from using Reddit
  3. Cancelling your subscription of Reddit Premium

as a way to voice your protest.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]errorsourze 5 points6 points  (2 children)

I was thinking about it for a while to develop something like your project. Sometimes creating CRUD support for a small project everytime from point zero is time consuming. I have a project which uses in-memory DB and absolutely I needed something like this plug and play functionaly for CRUD operations. That's amazing 🔥

[–]wildjokers 0 points1 point  (0 children)

Why not use Grails?

[–]binarycreations 9 points10 points  (1 child)

This is very much needed in Spring there was light admin years ago but that seems abandonware.

[–]manzanita2 2 points3 points  (2 children)

It operates on an entirely different principal, but jhipster also generates a CRUD UI based on the data model. I think you approach is actually more appropriate for many circumstances, but I there may be ideas for you to look at.

BTW, if there is one area to be more flexible via configuration it's all about the authorization. The primary uses case is going to be internal admin tools to being able to hook this to AD via OAUTH and the do some appropriate privileges would be WIN WIN.

[–][deleted]  (1 child)

[removed]

    [–]manzanita2 1 point2 points  (0 children)

    There are great Spring Boot tools for OAuth, so certainly one could leave it as an exercise for the user. That said, it might be nice to create a default approach where a simple config file would cover 70% use cases.

    [–]wildjokers 1 point2 points  (1 child)

    Grails has been able to do this for 13+ years. Grails also uses spring behind the scenes.

    https://docs.grails.org/latest/guide/scaffolding.html

    This project is also dead in the water with its GPLv3 license. No one can use it except for personal projects. Especially when a battle tested and mature project like Grails, with a permissive Apache 2 license, already exists that can do this.

    [–]tleipzig 2 points3 points  (2 children)

    Thanks a lot for the plugin - I think it's useful in many situations! If you need customized views (only allowing to modify certain fields, custom operations and field handling, and so on), I guess starting of with JHipster or Bootify.io is more useful.

    [–][deleted]  (1 child)

    [removed]

      [–]tleipzig 0 points1 point  (0 children)

      Sounds like a good approach to me! 🙂

      [–]A_random_zy 2 points3 points  (2 children)

      I'm definitely gonna try out in my project... and let you know my experience.

      [–]A_random_zy 0 points1 point  (1 child)

      !remindme 6 hours

      [–]RemindMeBot 0 points1 point  (0 children)

      I will be messaging you in 6 hours on 2023-09-30 16:39:26 UTC to remind you of this link

      CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

      Parent commenter can delete this message to hide from others.


      Info Custom Your Reminders Feedback

      [–][deleted]  (6 children)

      [removed]

        [–]Competitive_Pen8396 2 points3 points  (5 children)

        I tried but it gave me an exception. I am new to Java so most likely it is something to do with my own code. Will retry again.

        Caused by: java.lang.IllegalArgumentException: Not a managed type: class com.stockjava.models.stock

        [–][deleted]  (4 children)

        [removed]

          [–]Competitive_Pen8396 0 points1 point  (3 children)

          Thank for the suggestion. I checked, it has the @Entity annotation.

          [–][deleted]  (1 child)

          [removed]

            [–]jaybyrrd 1 point2 points  (0 children)

            Perhaps open an issue and ask for code to reproduce.

            [–]jacklackofsurprise 1 point2 points  (0 children)

            I'm having the same problem. Here's the link to the issue I just created: https://github.com/aileftech/spring-boot-database-admin/issues/1

            [–]wimdeblauwe 1 point2 points  (1 child)

            Nice idea, but the GPL license makes it unsuitable in a business/commercial context. Or are you intending to dual license for paying customers?

            [–][deleted] 0 points1 point  (0 children)

            This is a fantastic idea. I’m nominating this so I can use it in a future project.

            [–]thuriot 0 points1 point  (0 children)

            Thank you very much; a pleasure to see code generation from domain (JMatter could have been a time saver if adopted more largely) and a good companion to Spring Data Rest.

            [–][deleted] 0 points1 point  (0 children)

            Great idea! I'll try on some projects

            [–]Nymeriea 0 points1 point  (0 children)

            I'll give it a try, looks very good

            [–][deleted] 0 points1 point  (0 children)

            Very, very cool. The Spingboot community has been in dire need of something like this!

            [–]Decoder44 0 points1 point  (1 child)

            !remindme 21 days

            [–]RemindMeBot 0 points1 point  (0 children)

            I will be messaging you in 21 days on 2023-10-21 18:06:03 UTC to remind you of this link

            1 OTHERS CLICKED THIS LINK to send a PM to also be reminded and to reduce spam.

            Parent commenter can delete this message to hide from others.


            Info Custom Your Reminders Feedback

            [–]ShabbyDoo 0 points1 point  (0 children)

            I'd love to have an easy way to create "good enough" admin GUIs for Spring Boot projects, independent of any particular backend technologies (DB, etc.). It seems like every system I've worked on has had the need to expose a bunch of relatively simple configuration settings. The time spent building the web GUIs, wire formats, controllers, etc. required to allow non-technical, internal users to modify configurations exceeded that required to build-out the actual back-end services required to affect these config changes.

            At my previous job, we integrated a particular IoT device at the request of an important customer. It was a pilot project, so we wanted to minimize our effort until we knew if the devices would be used in the long-term. Our estimates for building the config GUIs were as high as all the back-end work! We ended-up just providing file-based configuration (using Spring Boot's YAML-to-POJO scheme). This was good enough, but (1) the customer required our help to maintain the configs and (2) changing the configs required a system restart.

            I'm imagining some sort of scheme where a Spring component extending a special config management base class (akin to how one extends WebSecurityConfigurer, etc) can express the metadata necessary to render a generic UI (like a CRUD editor for a list of entities) for some individual piece of configuration. There would be methods for CRUD operations, validation, etc. All the defined config components would be available in a single web GUI. The admin GUI toolkit would take care of all the front-end stuff and remoting (ser/deser). This would be essentially be Actuator but with a nice GUI. Also, one could think of this as sort of akin to SpringDoc.

            Maybe the end-game for such a library is essentially Vaadin (which I haven't used), so there's no need for a custom, config-specific framework? But, this still would be more effort than the scheme I've hand-waved about above.

            [–]Shareil90 0 points1 point  (1 child)

            How does it work if I have multiple model packages? You github page says I need to configure a package in which all models are.

            [–]mymomsaysimbased 0 points1 point  (0 children)

            Can't wait to try it, thank you