Logo of Gleamy

Blog

Gleamy will undergo a big refactor

    March 25,  2024

    Build tools

    One of the things that blocks the development of Gleamy is the proper build stack. For Gleamy, a simple stack with NPM, TypeScript and Rollup has been chosen in order to get things done. While this stack is perfectly fine, it still isn’t a great developer experience.

    For instance; when the repository is checked out, and you want to start the development environment, you first need to build Gleamy. And for each update… well, you need to build Gleamy. So there’s a lot of hassle in getting it to work. Especially when you want to improve performance, or start refactoring, it is a painful process.

    Most likely, Gleamy is moving to a stack using PNPM and TurboRepo. It integrates nicely with NextJS as development environment and deploying to Vercel as this is the website’s hosting provider. It also solves most of the issues.

    The big movement: Web components

    Gleamy started off as a React project where it would be easier to integrate some more effects to your website. But Gleamy should be available for anyone who wants to add some glamour to their websites or web-apps. As Web-components are now more developed, and perfectly usable within other frameworks and libraries like Angular, Vue and React, but more important: native/’vanilla’ as well. So Gleamy could be added as a WordPress plugin as well, or better integrated in a theme without having the overhead of shipping with proprietary code.

    A bigger mono-repo

    Whilst it would be great to have single repositories, it will be a hassle to plan and release each-part separate. So Gleamy is going towards a more separated mono-repo, where more rigid test set-ups can be made, better separations. So can ship TypeScript definitions, without adding this to let’s say, a native JavaScript bundle. Each release will be working on all platforms, when built.

    Configurator included

    One of the handiest tools to develop Gleamy is with it’s own configurator that you can find on the website. In order to not lag behind and actually use and tweak the code, it makes sense that the code for this will be in the mono-repo as well. Because of its complexity, and sometimes, more work than developing Gleamy itself, getting everything on the same code-quality as Gleamy is a bit of work. So moving this tool here will be slow.

    Package deployement

    While all Gleamy packages will be deployed on NPM, there are a couple of things that will change;

    • Packages will fall under an organisational structure on NPM
      Gleamy is currently a React library, and can be found under a base route within the NPM site /pacakge/gleamy. When Gleamy will become web-components, it makes no sense to use the default url for React. So Gleamy will move these new packages to its own organisational structure on NPM.

    NPM/JSR/TypeScript, ESModules, CommonJS?

    One of the things that come up in conversations a lot is how realistic it is to keep to the set-up of deploying all code, packed with both CommonJS and ESModules, including typescript definitions.

    This is still something that has to be decided on. While no one wants to add a lot of dependancies in projects, and bloating with various unused code, it cannot continue without thinking about the set-up. What is still preferred? what is the standard? what direction are we going on short, but also long term?

    Conclusion

    Gleamy for sure needs to change in order to make development, integration and developer experience better. And it’s going to happen. But it will take some time.

    Gleamy v2.0.1

      March 21,  2024

      Chore Why we released these changes: generic update round Very boring, but Gleamy needs to stay healthy. This update just brings updates dependancies to ensure compatibility and secure use.

      Gleamy v2.0.0

        February 20,  2024

        Chore Why we released these changes: generic update round A needed update to support newer development environment based on NextJS 14. For this, Gleamy needed to have updates on minimal package requiements. a major release bump, as new compilations will introduce breaking changes.

        Gleamy v1.1.9

          December 8,  2023

          Chore Why we released these changes: generic update round Very boring, but Gleamy needs to stay healthy. This update just brings updates dependancies to ensure compatibility and secure use.

          Gleamy v1.1.8

            October 22,  2023

            Chore Why we released these changes: security updates Very boring, but Gleamy needs to stay healthy. This update just brings updates dependancies to ensure secure use.

            Gleamy v1.1.7

              October 1,  2023

              Bugfixes Why we released these changes: “The imported are Next” While everything is working perfectly fine with the fixes made in previous versions, there were some annoyances in the state of the previous version. While you can transpile packages, import them relative to the use of webpack/babel to handle many fixes for you, it’s not […]

              Gleamy v1.1.6

                September 25,  2023

                Bugfixes Why we released these changes: “The third one is the charm” In the world of software development, even the tiniest of errors can lead to significant roadblocks. Gleamy, recently released version 1.1.4 and 1.1.5 with the promise of enhancing its features. However, unlike its two predecessors, this patch release, known as Gleamy v1.1.6, turned […]

                Gleamy v1.1.5

                  September 24,  2023

                  Release notes: Why we released these changes Twice the Release in a Remarkable Day! It’s not every day you witness two releases in a single day, and what an exceptional day it was! Or should we say, what an extraordinary release it turned out to be! Typically, when a package receives a patch, it implies […]

                  Gleamy v1.1.4

                  September 24,  2023

                  Release notes: Why we released these changes Greetings! In our previous blog post, titled “The Gleamy Chronicles: Unveiling the Enigma of Our Update Hiatus” we discussed the factors contributing to Gleamy’s delayed update. In summary, the features we discussed were in the pipeline and making progress. However, the process of creating these updates has proven […]

                  Pages: