Skip to content

Threaded post support for NodeBB

Let's Build It
146 5 116.4k 1
  • wrote on last edited by DownPW
    #14

    ooh ok. I would have liked to apply it on my site too bad for me then 🙂

  • ooh ok. I would have liked to apply it on my site too bad for me then 🙂

    wrote on last edited by
    #15

    @DownPW not necessarily. I can still develop something for you to use as a base.

  • wrote on last edited by DownPW
    #16

    Oh really ?
    That would be super cool 🙂

    Have 2 versions maybe. One adapted to your personalized code and one adapted to Harmony (without customizing the appearance of topics (stock))

    I’m probably asking too much 🙂

  • Oh really ?
    That would be super cool 🙂

    Have 2 versions maybe. One adapted to your personalized code and one adapted to Harmony (without customizing the appearance of topics (stock))

    I’m probably asking too much 🙂

    wrote on last edited by
    #17

    @DownPW said in Threading support for NodeBB:

    I’m probably asking too much

    Nope. Not at all. I’m fact, developing one from stock Harmony is probably a better idea as it’ll work out of the box.

    Leave it with me.

  • wrote on last edited by
    #18

    I’ve set my DEV environment to vanilla and will develop a working solution for that.

  • wrote on last edited by phenomlab
    #19

    Hi All,

    Some very early (subject to the odd bug) code released in DEV. You will need an account there - let me know if you need a password reset

    https://sudonix.dev/topic/331/how-to-install-a-self-hosted-instance-of-iframely-for-use-with-nodebb

    This code is quite complex, and leverages some interesting CSS classes. The most important change is that it removes the stock timeline bar, and will replace it with it’s own. This is for a variety of reasons - mostly around cumulative layout shift and pseudo elements being used in the stock CSS.

  • wrote on last edited by
    #20

    I have tested but I don’t see switch on dev

    image.png

  • I have tested but I don’t see switch on dev

    image.png

    wrote on last edited by
    #21

    @DownPW It only triggers at 1200px and above - do you have your browser size set smaller?

  • wrote on last edited by
    #22

    Just added some transition effects. Note that depending on how many elements there are on the screen, this might cause layout shift.

  • wrote on last edited by DownPW
    #23

    oh yes I’m on 1920 x 1080 screen

    oups 🙂

  • oh yes I’m on 1920 x 1080 screen

    oups 🙂

    wrote on last edited by
    #24

    @DownPW Does it work now? By 1200px I meant wide

  • wrote on last edited by
    #25

    hmmmm nope

  • hmmmm nope

    wrote on last edited by
    #26

    Odd. Seems to work for me.

  • wrote on last edited by DownPW
    #27

    nope it’s normal, i’m on 1080px height

  • nope it’s normal, i’m on 1080px height

    wrote on last edited by
    #28

    @DownPW I’m going to reset your DEV password and login as you to check

  • wrote on last edited by
    #29

    I see why. Let me fix that

  • wrote on last edited by
    #30

    @DownPW can you log back into DEV and try again? Should be working now.

  • wrote on last edited by phenomlab
    #31

    Here’s a video of the threading code working on stock Harmony on NodeBB.

    However, it’s important to note that the timeline bar is removed and recreated. There is a good reason for this, as without taking this route, it would mean that the timeline bar will look out of place. It’s certainly possible to use the existing bar and use a variety of CSS to move it around, although this is VERY inconsistent in my testing, and lands up being far too complex when it comes to having multiple CSS classes that do not include a specific scenario etc.

    In this case, it’s so much quicker to hide and replace the existing one - we do this in the default view also with the threaded view disabled, and I’m sure you won’t notice the difference 🙂 For obvious reasons, this code is configured to only fire on displays of 1200px or more - obviously, firing on a mobile device wouldn’t look very good at all.

    Here’s the video

    If you like what you see, here’s the code.

    https://github.com/phenomlab/nodebb-harmony-threading

    Final note - The code you see in the video is designed to work with stock Harmony. The code running on Sudonix is VERY different and uses a variety of CSS to render the view you see here. It’s “possible” to emulate this look, although it does mean that you will have to replace your custom CSS with that of Sudonix.

  • Here’s a video of the threading code working on stock Harmony on NodeBB.

    However, it’s important to note that the timeline bar is removed and recreated. There is a good reason for this, as without taking this route, it would mean that the timeline bar will look out of place. It’s certainly possible to use the existing bar and use a variety of CSS to move it around, although this is VERY inconsistent in my testing, and lands up being far too complex when it comes to having multiple CSS classes that do not include a specific scenario etc.

    In this case, it’s so much quicker to hide and replace the existing one - we do this in the default view also with the threaded view disabled, and I’m sure you won’t notice the difference 🙂 For obvious reasons, this code is configured to only fire on displays of 1200px or more - obviously, firing on a mobile device wouldn’t look very good at all.

    Here’s the video

    If you like what you see, here’s the code.

    https://github.com/phenomlab/nodebb-harmony-threading

    Final note - The code you see in the video is designed to work with stock Harmony. The code running on Sudonix is VERY different and uses a variety of CSS to render the view you see here. It’s “possible” to emulate this look, although it does mean that you will have to replace your custom CSS with that of Sudonix.

    wrote on last edited by
    #32

    @phenomlab wow… that looks really cool. I need to fire up a NodeBB box and test.

  • wrote on last edited by
    #33

Related Topics
  • 3 Votes
    2 Posts
    2k Views
    DownPW
    Very great
  • Extended functions for Q&A NodeBB plugin

    Let's Build It q&a panels cards
    3
    4
    5 Votes
    3 Posts
    3k Views
    DownPW
    Very good like always
  • Material View Support for Stock NodeBB

    Unsolved Let's Build It material view javascript css
    51
    4
    15 Votes
    51 Posts
    27k Views
    DownPW
    Oh yes, that’s what’s super cool, I learn something every day. Afterwards I start from so low in JS
  • Threaded chat support for NodeBB

    Let's Build It threaded chat code
    35
    1
    19 Votes
    35 Posts
    16k Views
    phenomlab
    @DownPW said in Threaded chat support for NodeBB: Better like this : add shadow and border-left on self answer Of course - you style to your own requirements and taste I’ll commit that CSS we discussed yesterday also
  • Custom html in nodebb to prevent cache

    Unsolved Configure nodebb
    18
    2 Votes
    18 Posts
    5k Views
    phenomlab
    @Panda You’ll need to do that with js. With some quick CSS changes, it looks like this [image: d619844f-fbfe-4cf1-a283-6b7364f6bf18-image.png] The colour choice is still really hard on the eye, but at least you can now read the text
  • Header Menu After Upgrading V3.1.1

    Solved Customisation header nodebb
    2
    1
    2 Votes
    2 Posts
    1k Views
    phenomlab
    @cagatay this relates to a change the css classes used for the brand header meaning it will now float to the left instead of right. If you’d like to retain the original behavior, you can add this css class [data-widget-area="brand-header"] { justify-content: end; display: flex; } Further information here https://community.nodebb.org/topic/17090/manual-build-a-custom-header-in-harmony/19?_=1684069325296
  • 36 Votes
    55 Posts
    30k Views
    phenomlab
    @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: aeef638f-4188-489d-a9f2-f3a26dbca9d8-image.png] It will then work [image: 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
  • 0 Votes
    5 Posts
    2k Views
    phenomlab
    @qwinter this particular site uses the code I wrote if you want to see it in action. It’s a information and intelligence gatherer I designed for collecting various information security articles from around the globe and consolidating them in one place. Essentially, each “post” is in fact generated by the script, and the NodeBB API. https://hostrisk.com/