Show HN: Divjoy – React Codebase and UI Generator


511 points | by makeee 115 days ago


  • makeee 115 days ago

    Hey HN, my goal with Divjoy is to make it ridiculously easy to start a new React project. You just select all the things you want in your codebase (UI kit, React framework, auth provider, analytics, form handling, etc), pick a template, then export it as a complete codebase that you can keep building on. All the UI logic like routing and auth flows just works. It also has a built-in editor which I think is pretty nifty. You can view the entire component hierarchy right in the tool and drag in pre-built sections from the component library. I'm planning on building out a large library of components across all the major UI kits (Bootstrap, Material UI, etc) and adding support for Next.js soon.

    This was by the far the most difficult project I've ever built. Would love to hear your thoughts and happy to answer questions.

    • lnkmails 115 days ago

      This is awesome! I am a frontend noob and I've been learning a whole lot of things last 4 weeks and got a Vue SPA with Cognito auth, AWS amplify, Quasar and Vuex. I don't like the output I see in the browser and it pisses me off really. I am yet to cover UX, CSS/Stylus/SCSS and I see a bunch of bundle size warnings that I've no idea how to fix. For people like me, this project would reduce the bootstrap time significantly. I see you plan to add support for Vue etc but man, you're building something very valuable. Kudos.

      • makeee 115 days ago

        Thanks for the kind words! Totally understand the frustration of trying to piece everything together. Been there many times and why I finally decided to give this idea shot :)

      • csbartus 115 days ago

        I love the idea and I’ll use it !!! One question: apart Framework can we have a ‘Not needed’ option for all other features? What if I want authentication with no styling at all..... Thanks a lot and keep up !!,

        • makeee 115 days ago

          Yeah, I'm definitely considering that. Basically just wanted to wait and see if anyone asked for it. Out of curiosity, is that because you'd like to use a different UI kit or do you generally write styles from scratch?

          • csbartus 115 days ago

            Great! Thanks :)

            I'm using styled components too. But the idea is to have nothing unnecessary forced on you like an UI library, email subscription and so on

            • makeee 114 days ago

              Yup makes sense! I've been getting this request a lot over the past few days so almost certainly going to add it soon.

            • thegeomaster 115 days ago

              I think a lot of people prefer to write styles from scratch. At least I haven't seen these UI kits being used much around me. I tried using one a couple of times and while it's great for getting something on the screen quickly, it turned into hell when I wanted to customize the look. Also it emitted embarassingly large bundles.

              • leetbulb 115 days ago

                Yeah, having styled-components (not a UI framework) included in the boilerplate would be pretty awesome for something like this.

                • pixel67 115 days ago

                  I was just going to ask that. I’m not big on using UI kits and prefer to use styled components. I like the idea of implementing Next.js

                  • makeee 115 days ago

                    Yeah looking into adding Styled Components and Emotion support. Should be pretty easy since all custom style is already stored in a json format and scoped to each element.

                  • makeee 115 days ago

                    Yup makes sense. Technically it would be pretty easy to add this so will keep an eye on feedback and try it out if I see a good number of requests.

                • harrisonjackson 115 days ago

                  It'd be pretty easy to strip the UI framework out if that's what you want - probably easier than starting with CRA :facepalm: I agree, though, this would be a great option.

                • desireco42 115 days ago

                  Thank you, I think it is great idea and I love it. I need to play with it, but on the face of it, seems like solid idea and very useful tool. Thank you!

                  I personally like Bulma a lot and think it is useful, so either that or Material works for me.

                  • makeee 115 days ago

                    Appreciate it! I'm a fan of Bulma as well, obviously :)

                  • alokdhari 114 days ago

                    Firstly, a big well done to you. This is absolutely amazing. I am pure backend dev struggling to get my idea up and running. This will solve my worry of auth and the initial design right away.

                    My questions: Is there a way to contribute? Are you planning to monetise this?

                    • makeee 114 days ago

                      That's so great to hear! Please don't hesitate to reach out if you run into and issues. I'm going to be trying out some premium themes and components soon.

                    • gitpusher 115 days ago

                      Very cool. Are you planning to open-source the tooling behind this? Or will you try to productize it somehow?

                      • makeee 115 days ago

                        Would like to productize it, so no immediate plans to open source. But who knows!

                        • andrewnc 115 days ago

                          If you do decide that, it would be super cool to make a license like Unity where it's free until a certain project revenue amount, then you do a percentage or something.

                          That could really induce testing and user adoption.

                          • crucialfelix 115 days ago

                            I think most of the revenue would be from the small companies or agencies that need to make many sites fast on a regular basis. Once you have larger revenue then you wouldn't be using something like this — you would have your team.

                            • makeee 115 days ago

                              Interesting idea! Will certainly add that to the list of revenue models to explore and learn more about. Thanks!

                        • holografix 114 days ago

                          Fantastic this is sorely needed. React + Redux has so much boilerplate.

                          • pjmlp 115 days ago

                            Love it.

                            Congratulations on making the Web a more comfortable place for Delphi expats.

                          • chrisweekly 115 days ago

                            Really cool -- and super-ambitious! Have you looked at Gatsby recently?

                            • makeee 115 days ago

                              Hey Chris, yeah Gatsby is awesome! I use it on They're doing some really interesting stuff with themes, component shadowing, and of course their whole graphql system. Not totally sure how Divjoy would integrate with all that stuff (or whether it should try) but going to be exploring that soon.

                          • ghengeveld 115 days ago

                            That's awesome, well done. Really nice that it exports to codesandbox as well so you don't even need to download anything. Would love to see support for TypeScript as well.

                            • makeee 115 days ago

                              Thank you. I figured people would want to be able to quickly check out the code and play around with it rather than wait for npm install :)

                              • chrisan 115 days ago

                                Definitely nice to be quick and easy to jump into, but I really love typescript for longevity of a project

                                • makeee 114 days ago

                                  Out of curiosity, would you pay $10-20 to export with typescript?

                          • bbx 115 days ago

                            Great work, and great name! Surprised, but glad to see Bulma as the main UI option. Thanks for using it ;-)

                            • makeee 115 days ago

                              Thanks for making such as awesome CSS Framework! Planning to keep growing the library of pre-built section built on Bulma, so hopefully it can become a great resource for the Bulma community (at least those that use React).

                            • joshi4 115 days ago

                              This is amazing. Creating a site from scratch takes a lot of time, WYSIWYG website builders are not very customizable. You are in the exact sweet spot I look for as a developer. Seriously great work !

                              • makeee 115 days ago

                                That makes me very happy to hear. I'm trying to keep a pretty light abstraction over code. Over time going to build UIs over the code bits, like props, scoped style, etc.

                                • 123randomusere 115 days ago

                                  hey joshi! What kind of website are you thinking of building? Would love to hear about why WYSIWYG website builders break down for certain use cases. We're thinking of using WYSIWYG builders interally

                                  • ativzzz 114 days ago

                                    Classic 80/20 rule. I've used several of these in the past, and they always work great until you need that 1 thing that they don't support out of the box and then you have to spend half a day figuring out the JS hackery the builder uses so you can work around it to implement the one thing you need in it's subpar code editor that's hidden away in a submenu somewhere.

                                • sandGorgon 115 days ago

                                  This so cool.

                                  Can you also do Gatsbyjs ? Building static sites is the most productive thing these days - especially for building landing pages and corporate websites.

                                  I would pay for something like this (with a whole lot of themes)

                                  • makeee 115 days ago

                                    I'm thinking a lot about Gatsby and how best to integrate with their way of doing things and their new themes system. Super excited about the potential there.

                                  • mostlyjason 115 days ago

                                    We recently started using another scaffold generator from It’s similar to this but geared more for apps than for marketing sites. It allows you to build out a complete data model and backend. It’s got a lot more features but they add complexity to the code that might not be needed for everyone.

                                    • makeee 115 days ago

                                      Scaffoldhub looks cool. I can see how Divjoy looks like it's more geared towards marketing sites since that's pretty much what's in the component library right now. Going to be adding a lot of dynamic components over the next few weeks (think dashboards, social media feeds, activity dropdown menus, etc) and figuring out how to cleanly connect all this stuff up with backend options.

                                      • benatkin 115 days ago

                                        That's the proper thing to call it: scaffolding or boilerplate. "Codebase generator" sounds like an excuse to charge for the output it produces. Instead of that's just scaffolding I can imagine well, yeah, we used a codebase generator, that's just smart, isn't it? Should we do everything manually? Divjoy looks pretty cool but I think I'll avoid it out of principle.

                                        • makeee 115 days ago

                                          Hey, is the main issue you have with Divjoy that it uses the term "codebase generator" or was there something about how it works that you didn't like? To be honest, I'm not a huge fan of "codebase generator" either. Open to changing it if it seems weird or meaningless to people.

                                          • benatkin 115 days ago

                                            That was just my reaction to it. I think it sounds catchy. I would just leave it and see how it works. I'm not the target audience because stock create-react-app and create-next-app (and rails new) are more boilerplate than I like for starting a project, though I'll look at custom boilerplate for inspiration.

                                            • makeee 115 days ago

                                              Ok gotcha, appreciate the feedback.

                                      • jhsu 115 days ago

                                        It's been great seeing the early alpha to what it's become!

                                        Divjoy is like a super powered create-react-app. great way to start off a project. being able to quickly add prebuilt components and essentially "eject" them makes customizing super easy.

                                        the UI is intuitive and love the animating side drawer for the component library.

                                        and :cheer: to exporting to codesandbox!

                                        • curo 115 days ago

                                          As an early alpha user as well, I'm also impressed at how quickly it's coming along. Great job

                                          • makeee 115 days ago

                                            Thanks Joe, really appreciate all the feedback over the last 6 months :)

                                          • pcurve 115 days ago

                                            I really thought this was a facetious jab at the modern web dev landscape until I started clicking around.

                                            • makeee 115 days ago

                                              Maybe a little of both haha? I mean it is ridiculous how many services you need to bring together for a basic web app. On the other hand, I like that the React ecosystem is composed of a lot of services that each do one thing really well. So not sure a big monolithic framework is the answer. So this was kind of my attempt at a solution.

                                            • dboon 115 days ago

                                              This tool is an absolute joy to use. At my nine to five, I work on a library that often times feels clunky and heavy. To use a tool as simple, powerful, and beautiful as this one truly does bring me joy. Thanks for putting the time into this! It's the perfect intersection of drag-n-drop and from scratch.

                                              If you've got some preferred channel where I can drop you a couple dollars in support of this project, let me know.

                                              • makeee 115 days ago

                                                Wow, thank you! And I really appreciate the offer to support the project. The plan is to roll out some premium integrations and themes in the coming months and see how that works out as a revenue model. Not against setting up a Paypal or Patreon, but would love to see if this can be productized (yet still super generous with what you can do for free). Anything come to mind as something extra you'd pay for?

                                                • dboon 115 days ago

                                                  I think you're spot on with that revenue model. I would certainly be willing to pay a couple of bucks for a premium suite of templates and components, or integrations with less mainstream technologies.

                                                  One idea I'd really love is simple Git integration. If I want to download my code and work on it outside of the GUI, it seems cumbersome to return to the GUI for simpler tasks (e.g. let me double click this string instead of remembering which parent component has it). If I could sync to Git, you'd have all of my money!

                                                  As for a word of unsolicited advice: Don't be afraid to monetize! Plenty of people (and corporations) use and pay for tools like e.g. Figma which don't even produce code on this level. What you have right now is, in my opinion, more than generous for a free service.

                                                  Cheers, best of luck!

                                                  • wolco 115 days ago

                                                    To the author: Be careful going down the saas root. The path is filled with feature requests with promises of small monthly payments without lockin.

                                                    Great for a focused simple product but perhaps not so great for this kind of a tool. Ultimately your customers want something to create as much of the app/site as possible. As you approach this ideal complixity increases making your application more brittle. When the ecosystem changes your tool may not be able to respond to the new reality.

                                                    Your better off using this tool to create value for your own customers. Or selling the source code rather than chasing the 9 dollars a month customer.

                                                    • makeee 115 days ago

                                                      Are you interested in something as simple as being able to export to Github or would you be looking for real git integration (with export and even import). I'm not sure on the feasibility of import but would love to hear more about what you have in mind there.

                                                    • joeyspn 115 days ago

                                                      IMHO you should open source a core version and focus on monetizing premium themes and integrations. This has huge potential to grow as a FOSS tool. You'd get a lot of collaborators.

                                                • duxup 115 days ago

                                                  Very cool project.

                                                  Looking at the code I really like code that comes out of this. Very easy to read / change.

                                                  I would like to see authentication done with SQL as an option. Admittedly that would be more work than firebase, but it would be a nice second opinion that is more portable / not tied to Google.

                                                  • makeee 115 days ago

                                                    It's great to hear you find the code east to read and change. To clarify, would you want something like a rest API + node server that talks to an SQL database? The plan is to provide more self-hosted options for code export, going with 3rd party services like Firebase was just easier to add for this MVP.

                                                    • duxup 115 days ago

                                                      >a rest API + node server that talks to an SQL database

                                                      Yes that is what I was thinking.

                                                      • makeee 115 days ago

                                                        Cool, thanks for clarifying. Definitely on the todo list, although still figuring out how soon I need to figure out the whole data layer (the big missing piece right now) VS focusing on expanding the component library across all the UI kits. Lots to do..

                                                        • duxup 114 days ago

                                                          Yeah it looks like a great project with endless directions to expand.

                                                          I think it would be nice for that drop down for authentication to just offer one more choice. For me there's sort of an "oh, just google" moment when there is just one built in authentication.

                                                          That's not to take away anything from the project as it is, it's pretty great.

                                                          • makeee 114 days ago

                                                            Thanks, that's good feedback. Considering Auth0 next. Any other ones I should consider?

                                                    • mushufasa 115 days ago

                                                      The Django project is a great example to emulate re: SQL authentication.

                                                    • martin_ 115 days ago

                                                      This is awesome, great work! One piece of feedback is that currently all of the components seem around designing static components. I'd love to see support for lists, dropdowns, etc, and ideally with the accompanying connect code to wire up a store with the renderer

                                                      • makeee 115 days ago

                                                        Hey Martin, thanks for checking it out! Yeah, I'm eager to get a lot more dynamic components in there (lists, dashboards, social media feeds, dropdown menus, etc). Going to make that a focus over the next few weeks. These components will probably make it in before I have the data part figured out, but long-term want to find an elegant way to let the user pick from multiple data strategies (graphql, rest, etc) and just magically wire it up to the components.

                                                        • home_project123 115 days ago

                                                          +1 for adding all these UI dynamic components (menus, social, nested comments, etc)...

                                                      • IceDane 115 days ago

                                                        This looks absolutely awesome. I had been toying with a similar idea in my head for a while, but I never even started building anything, and now it looks like I won't need to!

                                                        It had seemed to me that due to how web development has evolved in recent years, improving compositionality greatly by adopting functional programming concepts, designing something like this could be done relatively elegantly if you are just able to find the right abstractions. Seems to me that you have been able to do so, given what you support and are planning to support, though I can imagine it is an ongoing engineering challenge.

                                                        Kudos, thanks and good luck! I will definitely be trying this out, though I hope you decide to support typescript at some point.

                                                        • makeee 115 days ago

                                                          Yeah it's super hard to find the right abstraction between UI and code! Lots of feedback sessions and iteration to get where I am and still very far from where I want it to be. Glad you're liking it!

                                                        • cryptozeus 115 days ago

                                                          This is great ! Just works out of the box...really good work. Waiting for bootstrap version

                                                          • cryptozeus 115 days ago

                                                            Even the code sandbox integration is great, I dont even need to download the code. Good focus on what devs want...have you thought of integrating this with tools like VS Code ? More non web based product ?

                                                            • makeee 115 days ago

                                                              I love the idea of doing some kind of VS Code plugin, but not sure where it will fall on the priority list. Any thoughts as to what a VS code integration might look like?

                                                              • wolco 115 days ago

                                                                This is why you may want to open source. There are so many cool features but very little time.

                                                          • mahdiponline 115 days ago

                                                            Tried it out and it works fantastically. I'd love to see more components especially with Bootstrap. Do you need any help with its development cause I would love to work on it.

                                                            • makeee 115 days ago

                                                              Yup, my goal over the next month is to 5x the size of the component library, as well as start adding some more dynamic components like full dashboards, activity feeds, user settings pages, etc. Bootstrap is definitely coming. If you select it as an option you can enter your email. Just testing where the demand is. So far Boostrap and Material UI are about neck and neck. Feel free to shoot me an email at if you want to get involved.

                                                            • dreamer_soul 115 days ago

                                                              Looks amazing! Any plans on a vuejs implementation? Also would be awesome if we can change bootstrap scss variables such as primary color. Thank you for the amazing product

                                                              • makeee 115 days ago

                                                                Thanks! So you can actually tweak SCSS variables like primary color in the tool. Just click the style button at the top when you have editor open. I'll have this for Bootstrap as well when it's added. Any kind of Vue implementation is probably a ways down the road, since the plan is to build some nice UI abstractions around React concepts (like Suspense). Harder to do that well if I'm building for multiple frameworks.

                                                              • webmaye 115 days ago

                                                                This looks amazing. Going to give it a try for my next project.

                                                                • makeee 115 days ago

                                                                  Thanks! Would love to hear any feedback once you give it a spin.

                                                                  • WrtCdEvrydy 115 days ago

                                                                    Yeah, this reminds me of RealWorld on Github.

                                                                    I wonder if you could use that to build your templates since it's open source :)

                                                                    • makeee 115 days ago

                                                                      Yeah I'm a big fan of that project! Definitely took some inspiration from that early on when I was thinking about how doable this was.

                                                                • MegaLeon 115 days ago

                                                                  This is amazing, I can't believe it works as well as it does. Very well done! Reminds me a bit of

                                                                  I'm curious to hear about your future plans for monetization? Premium blocks? Concurrent sites creation limit?

                                                                  I can also see that right now the project is cached in the browser session. Any plans to have import/export of project files in order to better manage several projects at once? Or a desktop version?

                                                                  • makeee 114 days ago

                                                                    Thanks! Will likely try out premium themes and blocks. Maybe extra export options.

                                                                    Accounts and multi-project support is definitely coming at some point. Right now you can technically import/export by clicking export project in the top dropdown menu (copies entire project json to your clipboard), save that, later import it using the import option. Not the most user friendly but it works.

                                                                    Haven’t really thought about desktop to be honest! Will keep an eye on feedback and see how much people want that.

                                                                  • orliesaurus 115 days ago

                                                                    This is amazing - good job - I like the interface and it looks pretty useful, going to give it a better try later :)

                                                                    • makeee 115 days ago

                                                                      Appreciate it! Please let me know if anything is confusing when you give it a try.

                                                                    • raykanani99 115 days ago

                                                                      This is great. Looking forward to giving it a spin! Would by nice if I could spin this up from the terminal

                                                                      • makeee 115 days ago

                                                                        Hmm that's a cool idea actually. Will think on that.

                                                                      • ksma 115 days ago

                                                                        A really cool idea. I will definitely use this for spinning up for the next project I am going to work on.

                                                                        • lukeplato 115 days ago

                                                                          Impressive, how long did it take a single developer to make something like this?

                                                                          • makeee 115 days ago

                                                                            It was pretty exploratory at first so hard to say. Initially started out as me wondering if a drag and drop tree editor would be a decent way for beginners to learn React. Played around with a lot of different ideas and it kind of evolved from there. Maybe about 6 months full-time.

                                                                          • vcpn1313 115 days ago

                                                                            I love this. So easy to use and intuitive. Really creative. Great job!!!

                                                                            • makeee 115 days ago

                                                                              Happy to hear that! Feel free to reach out anytime if you run into issues or have ideas on how it could be better.

                                                                            • cgle 115 days ago

                                                                              Hey there should be a collapse/expand button for component And thanks for creating this. This is so far the best dev product I have seen in a while

                                                                              • makeee 115 days ago

                                                                                Hey, could you clarify what you mean by collapse/expand button for components? Currently, there is a +- button on each component that is a bit like collapse/expand. Technically it's controlling whether the component's inner structure is displayed inline in the tree or whether you just see the instance.

                                                                              • agustif 115 days ago

                                                                                This looks great, would be awesome if possible to customize and add plugins/other integrations one self back to the mothership

                                                                                • makeee 115 days ago

                                                                                  Hey, would love to hear what kind of plugins or integrations you'd want. I'll be adding them pretty quickly over the next few months.

                                                                                • davidjnelson 115 days ago

                                                                                  This sounds awesome! Does it work with server side rendering or is that coming with the next.js integratiom you have planned?

                                                                                  • makeee 115 days ago

                                                                                    Hey David, I don't export anything that helps with server-side rendering the CRA app. In theory, I could do that if people want it, but my feeling is people that want SSR should probably just use Next.js once we support it. Coming soon!

                                                                                  • bighitbiker3 115 days ago

                                                                                    This is awesome! Can't wait to try it out

                                                                                    • danpedder9 115 days ago

                                                                                      This is awesome - literally took me just a few minutes to get something going. Great work.

                                                                                      • makeee 115 days ago

                                                                                        Wooo! That's great to hear :)

                                                                                      • dsouza889 114 days ago

                                                                                        I love the idea! please add support to vue.js too. Thanks.

                                                                                        • pixel67 115 days ago

                                                                                          Looks awesome, are there going to be more choices coming?

                                                                                          • makeee 115 days ago

                                                                                            For sure, listening to feedback and seeing what people want right now. Anything you want in particular?

                                                                                          • jameshk 115 days ago

                                                                                            Very cool project, I’m excited to see where you take this!

                                                                                            • makeee 115 days ago

                                                                                              Thanks! Would love to hear any thoughts if you give it a try. Critical feedback is most welcome.

                                                                                            • graylien 115 days ago

                                                                                              it's almost like no code, but it is code

                                                                                              • makeee 115 days ago

                                                                                                Did I just get my new tagline?

                                                                                              • catchmeifyoucan 115 days ago

                                                                                                Would be awesome if it supported Semantic UI

                                                                                                • makeee 114 days ago

                                                                                                  Thanks for the suggestion. Will consider.

                                                                                                • onion2k 115 days ago

                                                                                                  I made a project, I messed around with the components, and I exported it. There weren't any tests or docs. That's very disappointing.

                                                                                                  • makeee 114 days ago

                                                                                                    This is helpful feedback. Right now it exports the normal CRA readme. Plan is to soon replace that with a dynamically generated doc that goes over your chosen stack as well as some details like the light wrappers we export around routing and auth. Is that what you had in mind? In terms of docs, anything else you’d like to see?

                                                                                                    • onion2k 114 days ago

                                                                                                      Is that what you had in mind?

                                                                                                      That's exactly what I would have liked to see, yes.

                                                                                                  • andrewstuart 115 days ago

                                                                                                    This must have been ALOT of work.

                                                                                                    • lucasverra 115 days ago

                                                                                                      my 2 cats after 10 sec of checking :

                                                                                                      feature request :

                                                                                                      - add for UI kit : & reactSemantic.UI please :)

                                                                                                      • makeee 114 days ago

                                                                                                        Thanks for the suggestions! They are on my radar :)

                                                                                                      • tschwimmer 115 days ago

                                                                                                        This is a great idea!

                                                                                                        • properframework 112 days ago

                                                                                                          Why not just use angular cli and be done with it?

                                                                                                          • lowestlatency 115 days ago

                                                                                                            Antd support pls

                                                                                                            • dlphn___xyz 115 days ago

                                                                                                              nice work

                                                                                                              • buremba 115 days ago

                                                                                                                Would love to see Vue version of it.

                                                                                                                • makeee 115 days ago

                                                                                                                  I started out trying to make it framework agnostic, but decided to really try to nail React first and then see about supporting other frameworks. Appreciate the feedback!

                                                                                                                • amazingandyyy 115 days ago

                                                                                                                  support builder!

                                                                                                                • mattblackdev 115 days ago

                                                                                                                  Nice job Gabe! Next week's hook: const myApp = useDivjoy('material-ui', '@reach/router')

                                                                                                                • somesortofsystm 115 days ago

                                                                                                                  I don't like this much. I'm using React as a UI engine for IoT devices, where the interchange is defined with protocol buffers.

                                                                                                                  Yes, just protocol buffers .. which generate templates for React to slurp up and render.

                                                                                                                  Doing this the "Web-first" way, means I have to sign up to produce code? This is where I object.

                                                                                                                  Please people, push things into the smaller end of the stack! Its the natural order of things...

                                                                                                                  • cryptozeus 115 days ago

                                                                                                                    At least try the product before bashing it. You dont need sign up

                                                                                                                    • makeee 115 days ago

                                                                                                                      Not sure I'm following you.. also it doesn't have signup. You can use the entire app and export a codebase without signing up.

                                                                                                                      • somesortofsystm 115 days ago

                                                                                                                        Ah, well I missed that in my hatred for React things, but okay, fair point. Sorry for bloviating.