Skip to content

NodeBB v3 and Harmony Theme

Discussion
22 4 10.4k 1
  • @DownPW this is a great response, and it sounds very much like you’ve thought things though. I agree - it makes more sense to cease development of the v2 theming engine, and focus on v3.

    However, it’s worth noting that v3 (particularly with Harmony if I understood correctly) will also have the capability of switching themes - or at least, colour swatches, which is where I was originally heading with v2. It will be interesting to see how this materialises over time, given that the version in Persona seems to be something of an afterthought that doesn’t work very well either.

    The new Swatch capabilities skates for inclusion into Harmony may well render the custom theme switcher we developed obsolete if it offers a hook meaning it can be extended.

    From my perspective, all of my custom scripts will be updated to work with, and be fully supported in, v3. This is inclusive of the theme switcher (if applicable) and the custom footer etc.

    @phenomlab said in NodeBB v3 and Harmony Theme:

    his is a great response, and it sounds very much like you’ve thought things though. I agree - it makes more sense to cease development of the v2 theming engine, and focus on v3.
    However, it’s worth noting that v3 (particularly with Harmony if I understood correctly) will also have the capability of switching themes - or at least, colour swatches, which is where I was originally heading with v2. It will be interesting to see how this materialises over time, given that the version in Persona seems to be something of an afterthought that doesn’t work very well either.
    The new Swatch capabilities skates for inclusion into Harmony may well render the custom theme switcher we developed obsolete if it offers a hook meaning it can be extended.
    From my perspective, all of my custom scripts will be updated to work with, and be fully supported in, v3. This is inclusive of the theme switcher (if applicable) and the custom footer etc.

    Personally, if the new swatch on harmony theme is just a color change, that wouldn’t suit me at all. Switching with CSS is just huge and much more functional
    We should also offer integration officially to NodeBB. that would be awesome 😉

  • @phenomlab said in NodeBB v3 and Harmony Theme:

    his is a great response, and it sounds very much like you’ve thought things though. I agree - it makes more sense to cease development of the v2 theming engine, and focus on v3.
    However, it’s worth noting that v3 (particularly with Harmony if I understood correctly) will also have the capability of switching themes - or at least, colour swatches, which is where I was originally heading with v2. It will be interesting to see how this materialises over time, given that the version in Persona seems to be something of an afterthought that doesn’t work very well either.
    The new Swatch capabilities skates for inclusion into Harmony may well render the custom theme switcher we developed obsolete if it offers a hook meaning it can be extended.
    From my perspective, all of my custom scripts will be updated to work with, and be fully supported in, v3. This is inclusive of the theme switcher (if applicable) and the custom footer etc.

    Personally, if the new swatch on harmony theme is just a color change, that wouldn’t suit me at all. Switching with CSS is just huge and much more functional
    We should also offer integration officially to NodeBB. that would be awesome 😉

    @DownPW I’m running Harmony now on https://sudonix.dev 🙂 There is no swatch functionality from what I can see, so the code we developed is still up for the taking.

  • @DownPW I’m running Harmony now on https://sudonix.dev 🙂 There is no swatch functionality from what I can see, so the code we developed is still up for the taking.

    @DownPW I missed this - there is a skin switcher

    9f54e2bc-e717-4cae-a642-49c3d41d5238-image.png

  • @DownPW I missed this - there is a skin switcher

    9f54e2bc-e717-4cae-a642-49c3d41d5238-image.png

    @phenomlab Yep but that don’t work with css File ?

    I had tried in the past to create a theme with the official nodebb doc and I never succeeded

  • @phenomlab Yep but that don’t work with css File ?

    I had tried in the past to create a theme with the official nodebb doc and I never succeeded

    @DownPW I’ll need to look at the structure, but I can’t see why not.

  • @DownPW I’ll need to look at the structure, but I can’t see why not.

    @phenomlab

    I also see another problem with this selector : he display all the default themes.
    We should be able to remove all those present by default and display only those we need

    in addition as soon as you do a CTRL + F5 or refresh web page with F5, it removes the theme lol

  • @phenomlab

    I also see another problem with this selector : he display all the default themes.
    We should be able to remove all those present by default and display only those we need

    in addition as soon as you do a CTRL + F5 or refresh web page with F5, it removes the theme lol

    @DownPW yes, I noticed that also. Looks like session data isn’t being retained.

  • @DownPW I’m running Harmony now on https://sudonix.dev 🙂 There is no swatch functionality from what I can see, so the code we developed is still up for the taking.

    @phenomlab said in NodeBB v3 and Harmony Theme:

    @DownPW I’m running Harmony now on https://sudonix.dev 🙂 There is no swatch functionality from what I can see, so the code we developed is still up for the taking.

    thanks for this one 👍
    I could check it more seriously…

  • Just looking through my code here, and provided that Persona as a NodeBB theme continues to be maintained, then the conversion of my code to v3 is a relatively simple affair meaning I could continue with my Swatch code without too much effort.

    Essentially, the move from v2 to v3 is basically the migration of bootstrap from v3 to v5. I suppose much of this depends on the future of Persona…

    EDIT - I’ll just leave this here
    https://community.nodebb.org/topic/16908/january-2023-developer-update/15?_=1673947070798

  • Just looking through my code here, and provided that Persona as a NodeBB theme continues to be maintained, then the conversion of my code to v3 is a relatively simple affair meaning I could continue with my Swatch code without too much effort.

    Essentially, the move from v2 to v3 is basically the migration of bootstrap from v3 to v5. I suppose much of this depends on the future of Persona…

    EDIT - I’ll just leave this here
    https://community.nodebb.org/topic/16908/january-2023-developer-update/15?_=1673947070798

    @phenomlab said in NodeBB v3 and Harmony Theme:

    Just looking through my code here, and provided that Persona as a NodeBB theme continues to be maintained, then the conversion of my code to v3 is a relatively simple affair meaning I could continue with my Swatch code without too much effort.
    Essentially, the move from v2 to v3 is basically the migration of bootstrap from v3 to v5. I suppose much of this depends on the future of Persona…
    EDIT - I’ll just leave this here

    Do you think I could go through your swatch rather than the one I have?

    Because I don’t believe you released your code here. Whether ?

    Either way, I know I’ll have to start all over again in these 2 cases

  • @phenomlab said in NodeBB v3 and Harmony Theme:

    Just looking through my code here, and provided that Persona as a NodeBB theme continues to be maintained, then the conversion of my code to v3 is a relatively simple affair meaning I could continue with my Swatch code without too much effort.
    Essentially, the move from v2 to v3 is basically the migration of bootstrap from v3 to v5. I suppose much of this depends on the future of Persona…
    EDIT - I’ll just leave this here

    Do you think I could go through your swatch rather than the one I have?

    Because I don’t believe you released your code here. Whether ?

    Either way, I know I’ll have to start all over again in these 2 cases

    @DownPW Yes, of course. However, because of the change of elements, I have to re-write most of it. In addition, only one theme will be supported - either Persona, or Harmony. If we go the Harmony route (which is highly likely) then virtually all of the swatch needs to be re-written including LESS etc.

    I don’t want to support more than one theme and would ideally stick to Harmony.

  • @DownPW Yes, of course. However, because of the change of elements, I have to re-write most of it. In addition, only one theme will be supported - either Persona, or Harmony. If we go the Harmony route (which is highly likely) then virtually all of the swatch needs to be re-written including LESS etc.

    I don’t want to support more than one theme and would ideally stick to Harmony.

    @phenomlab said in NodeBB v3 and Harmony Theme:

    Yes, of course. However, because of the change of elements, I have to re-write most of it. In addition, only one theme will be supported - either Persona, or Harmony. If we go the Harmony route (which is highly likely) then virtually all of the swatch needs to be re-written including LESS etc.
    I don’t want to support more than one theme and would ideally stick to Harmony.

    Yes indeed, we have to focus on one main theme and not two. (Persona or Harmony)

    I don’t yet have the opinions of the other members of my team but since it’s I who will then develop the themes compatible with Harmony, I think that we will go towards the road of Harmony

    If you are ready to share your codes once finished and explain how to use it, it’s really a good thing and I already thank you in advance 😉

  • @phenomlab said in NodeBB v3 and Harmony Theme:

    Yes, of course. However, because of the change of elements, I have to re-write most of it. In addition, only one theme will be supported - either Persona, or Harmony. If we go the Harmony route (which is highly likely) then virtually all of the swatch needs to be re-written including LESS etc.
    I don’t want to support more than one theme and would ideally stick to Harmony.

    Yes indeed, we have to focus on one main theme and not two. (Persona or Harmony)

    I don’t yet have the opinions of the other members of my team but since it’s I who will then develop the themes compatible with Harmony, I think that we will go towards the road of Harmony

    If you are ready to share your codes once finished and explain how to use it, it’s really a good thing and I already thank you in advance 😉

    @DownPW said in NodeBB v3 and Harmony Theme:

    If you are ready to share your codes once finished and explain how to use it, it’s really a good thing and I already thank you in advance

    More than happy to do so. In fact, BS5 makes it so much easier as LESS variables are being used, which we simply target and change. Far LESS (pun intended) work !

  • @phenomlab said in NodeBB v3 and Harmony Theme:

    Yes, of course. However, because of the change of elements, I have to re-write most of it. In addition, only one theme will be supported - either Persona, or Harmony. If we go the Harmony route (which is highly likely) then virtually all of the swatch needs to be re-written including LESS etc.
    I don’t want to support more than one theme and would ideally stick to Harmony.

    Yes indeed, we have to focus on one main theme and not two. (Persona or Harmony)

    I don’t yet have the opinions of the other members of my team but since it’s I who will then develop the themes compatible with Harmony, I think that we will go towards the road of Harmony

    If you are ready to share your codes once finished and explain how to use it, it’s really a good thing and I already thank you in advance 😉

    @DownPW I’ve started development work on Harmony in v3 and should have some beta code for you to test soon. Stay tuned!

  • @DownPW I’ve started development work on Harmony in v3 and should have some beta code for you to test soon. Stay tuned!

    @phenomlab Oh yeah very good news 😉

  • phenomlabundefined phenomlab forked this topic on
  • hello mark

    here is my tutorial for install V3.00 but it’s for alpha3.0 like you see in command.

    cd /path/to/your/nodebb
    git rev-parse HEAD  # save this value in case you need to roll back  
    git fetch && git checkout bootstrap5
    git reset --hard v3.0.0-alpha.3
    npm config set legacy-peer-deps true
    ./nodebb upgrade -mi
    ./nodebb build
    ./nodebb start
    

    – My questions :

    • How to know the name of the last version for V3 for install it (here is alpha.3) and adapt cli command above ?

    • How to upgrade the dev environment ? I know when Harmony it’s upgrade, we must upgrade boottrap 5

    – Here the command to upgrade bootstrap5 :

    git fetch && git checkout bootstrap5
    

    Many thanks

  • hello mark

    here is my tutorial for install V3.00 but it’s for alpha3.0 like you see in command.

    cd /path/to/your/nodebb
    git rev-parse HEAD  # save this value in case you need to roll back  
    git fetch && git checkout bootstrap5
    git reset --hard v3.0.0-alpha.3
    npm config set legacy-peer-deps true
    ./nodebb upgrade -mi
    ./nodebb build
    ./nodebb start
    

    – My questions :

    • How to know the name of the last version for V3 for install it (here is alpha.3) and adapt cli command above ?

    • How to upgrade the dev environment ? I know when Harmony it’s upgrade, we must upgrade boottrap 5

    – Here the command to upgrade bootstrap5 :

    git fetch && git checkout bootstrap5
    

    Many thanks

  • Been playing with the user profile page this afternoon. Thought I’d post a video as I’m really pleased with how this came out


Related Topics
  • Nodebb vs Wordpress vs Other

    General wordpress nodebb woocomerce business
    4
    5 Votes
    4 Posts
    1k Views
    PrestaShop + modules IA https://www.prestashop.com Magento https://developer.adobe.com/open/magento
  • What’s going on with NodeBB?

    Performance nodebb script die
    20
    8 Votes
    20 Posts
    4k Views
    @cagatay The most reliable way to upgrade Node.js on Ubuntu depends on how you originally installed it. Method 1: Using NVM (Recommended) If you already use Node Version Manager (NVM), upgrading is simple. NVM allows you to keep both versions and switch between them if needed. Install Node 22: nvm install 22 Switch to Node 22: nvm use 22 Set it as your default: nvm alias default 22 Verify the change: node -v Method 2: Using NodeSource (PPA) If you installed Node.js via apt using the NodeSource repository, you need to update the repository script to point to the new version. Remove the old NodeSource list (optional but cleaner): sudo rm /etc/apt/sources.list.d/nodesource.list Download and run the NodeSource setup script for Node 22: curl -fsSL [https://deb.nodesource.com/setup_22.x](https://deb.nodesource.com/setup_22.x) | sudo -E bash - Install/Upgrade Node.js: sudo apt-get install -y nodejs Verify the installation: node -v Method 3: Using the ‘n’ Package If you have npm installed, you can use the n interactive manager. Clear the npm cache: sudo npm cache clean -f Install the ‘n’ helper: sudo npm install -g n Install Node 22: sudo n 22 Update your shell: hash -r Troubleshooting Permission Denied: If you see permission errors using Method 2 or 3, ensure you are using sudo. Path Issues: If node -v still shows version 20 after upgrading via NVM, restart your terminal or run source ~/.bashrc. Conflicts: Avoid mixing these methods. If you switch from apt to nvm, it is best to sudo apt remove nodejs first to avoid path conflicts.
  • NodeBB v4.0.0

    General nodebb sudonix version 4
    28
    4 Votes
    28 Posts
    7k Views
    @Panda said in NodeBB v4.0.0: the workings of World aren’t intuitive Its not easy to get World populating when a forum is new to it This is a good point and one I’ve considered also. It’s a little confusing to be honest.
  • Planned sunset of NTFY plugin

    Pinned Announcements push nodebb ntfy
    7
    1
    8 Votes
    7 Posts
    3k Views
    I’ve noticed that I’m the only one subscribed to the push notifications on this site. If you were using NTFY previously, and have noticed that you’ve not had any alerts for a while, it’s because this feature has been disabled. You’ll now need to use the push notification to replace NTFY as mentioned in the first post.
  • 4 Votes
    7 Posts
    2k Views
    @phenomlab oh no, that is 1 cent on the video, but you are right, symbols are similar… I just converted it to $1 , since it is more intuitive in daily life…
  • What is this bar called?

    Solved Customisation nodebb
    92
    1
    36 Votes
    92 Posts
    36k Views
    This is good
  • 36 Votes
    55 Posts
    25k Views
    @DownPW I see why. The code relies on the existence of [component="topic/quickreply/container"] However, this by definition means that the below has to be enabled [image: 1679077966615-aeef638f-4188-489d-a9f2-f3a26dbca9d8-image.png] It will then work [image: 1679077992245-7fb38631-e0f3-46ef-b652-00929d927b13-image.png] For some unknown reason, this is hidden in Harmony, and only shows if you select it. In v2, it seems that the <section> is deleted altogether in Persona if “Quick Reply” is disabled, meaning it won’t fire as it can’t locate that specific component. The downside is that you might not want the quick reply function, but I think it’s a PITA to scroll up to the top of the post just to reply, so I have it on
  • NodeBB templates

    Locked Chitchat themes templates nodebb
    12
    4 Votes
    12 Posts
    4k Views
    Placing this here for reference https://sudonix.com/topic/216/nodebb-js-script-css-theme-switcher Further information and posts can be found at this link