Skip to content

Anyone using Ghost ?

  • Thought I’d open this up for discussion. I’ve setup ghost in mostly at this stage to play with the features. Whilst it’s lightning fast being based on node, it seems to lack (to me at least) some of even the most basic features that you’d typically find in WordPress just aren’t there in ghost.

    One of the most (glaringly) obvious omissions is the ability to modify CSS directly. It can be done, but requires the usage of code injectors directly in the headers which isn’t clever. Furthermore, theme development is clunky in the sense that changes need to be recompiled using grunt.

    Interested in other experiences.

  • phenomlabundefined phenomlab marked this topic as a regular topic on
  • @phenomlab I had about four acquaintances request it over a span of time. Early ghost was too Ubuntu specific and install refused to progress on non 'buntu platforms. Years later I had some spare time one day so figured I’d accommodate. Learned they’d improved their install script to not be so choosy. Anywho, four people, four domains, four ghost instances. Not a single one had actually done anything with it so after about four months or so I pulled the plug on those vm’s.

    I never delved beyond a cursory look myself. Seemed like it could be cool but you’d need to roll up your sleeves. Maybe quite a high bar for those accustomed to doing all via clickery?

    My approach to bee loggin’ is “Content is King”. And I don’t blog about stuff others have already beat to death. I blog very rarely, and then only to scratch a specific itch. I have no interest in monetizing my goodwill so have no concerns over SEO, ads, etc. Hence, my use case is well served by static site generators. I favor Cryogen Web, for no particular reason, but there are many, many to choose from but Hugo, a.k.a. Go Hugo is probably the most popular at this time. Hugo is, you guessed it, based on Go. Lots of traction and lots of themes, etc. Maybe consider a SSG backed by NodeBB for commentary? Save yourself more than a few security headaches while you’re at it…

    Have fun! 🐕

    Edit: Oh yeah, SSG’s are FAST!

    Here is one example of cryogen and some articles tagged zfsonlinux, which got tons of hits early zfs on linux days, as most linuxers were still stuck in NIH myopia chasing the promise of btrfs (and we see how that panned out). Then even more, maybe tens of thousands per day, early Ubuntu bundling zfs before their wiki stuff caught up with the interest. vm was barely flexing its pinky to keep up.

  • @gotwf great points, thanks. I agree about having to roll your sleeves up for those not fully conversant with a newer type of interface rather than WordPress - although in my view, Grav is more complex than ghost - and I really liked Grav but didn’t like the concept of templates and twig. Having played around with NodeBB and it’s templating system, it’s much easier than I ever envisaged.

    One thing that sets Grav and ghost aside is that the former is based on flat files and does not require a database. As you mentioned in your post, SSG based platforms are always going to be faster. In my testing though, ghost is fast. My belief here is that the absence of PHP and a node based backend is key.

  • @phenomlab PHP sucks. And this from someone who was first exposed late 2.x and used to code 3.0. Many, many security issues. Then there are the SQL injection issues common to any rdbms glue. Hence the rise of the static site generator. Do you want to spend all your time monitoring snort logs? Or actually writing? I encourage you to take a look at GoHugo. It was not yet invented when I started out with Cryogen Web. Nor was Go, for that matter? Maybe just starting to gain traction. Prior to that Clojure was the big new dealio but that was short lived once the Goog got serious about Go.

    I am not a fan of Markdown. Which was also not invented yet when I surveyed the landscape and settled on AsciiDoc. Cryogen Web supports both Markdown and AsciiDoc so that made it a no brainer for me (so I guess that was a BIG particular reason I omitted above). AsciiDoc is superior html markup substitute but hey, NIH and group think from the Ruby and GitHub crowds prove yet once again lemmings following big corp group think will beat out technical excellence. Sure are living in interesting times, eh?

    P.S.; AsciiDoc is also a standard. So no worries about various Markdown flavor compatibility issues and having to accommodate a bazillion different flavors of the month. 👍

    P.P.S.; But I digress… This post was supposed to be about Ghost pain points… 😜

  • @gotwf Thanks. As a PHP developer myself, I’m having trouble disagreeing with the points you’ve raised. SQL injections are sadly still commonplace in today’s threat landscape.

    I’ve been spending more time with Ghost over the weekend, and as I get more acquainted with the inner workings, the more I like it.

  • And so, I thought it was high time some screenshots were provided (eye candy) for the blog I’m working on. It’s currently set to private, so not accessible, but here you go…

    Dark Mode


    Light Mode


    There’s still a lot of work to do here, but it’s coming along ! 🙂

  • @phenomlab said in Anyone using Ghost ?:

    And so, I thought it was high time some screenshots were provided (eye candy) for the blog I’m working on. It’s currently set to private, so not accessible, but here you go…

    Dark Mode


    Light Mode


    There’s still a lot of work to do here, but it’s coming along ! 🙂

    Looking good that Mark! 😁

  • @phenomlab as u know, i’m playing with ghost, is really fast but there’s a lot of features missed. but also highly customizable if you know javascript, i think that in the end of this year i will release a full theme for ghost, now i definitely 0 time due to work.

    but i will follow you on this, really interested

  • @justoverclock Thanks. I’m seeing a similar situation in terms of missed features, but as you rightly say, there is the opportunity to extend if you are familiar with JS - which I am. I’m working on the testimonials section and have written a pure CSS slider to handle this. It’s a work in progress currently, so nothing to see as such.

    And like you, I am currently deluged with work commitments, but hoping to get back to this as time permits.

  • can we use ghost in shared hosting?
    does it allow users to start a new page?

  • @hari provided nodeJS is installed and you have SSH Access to the shared hosting, then yes, this should be possible. There’s actually an article available that provides a YouTube video of how to install via cPanel here

    Not sure what you mean concerning starting a new page ?

  • I’m still toying with the idea of using ghost. However, there are some drawbacks which I’ll outline here

    1. No native searching feature for blog articles inside NodeBB that have been created in ghost. This brand that if you search for something here, your not going to find it as it won’t be in the database. This in my view is something of a show stopper
    2. I don’t really want to have to maintain two sets of code and also two independent platforms

    I guess I’m making my own decisions here in terms of perhaps abandoning the ghost route and doing something native in NodeBB instead.

  • Yeah, well… such seems to be the common path of Ghost… 👻

    Interesting. Great minds are thinking alike. Despite the group funding hoopla!

    I should like to explore this bee loggin’ stuff further. But alas, so much Internet, so little time… 🐕

  • @gotwf said in Anyone using Ghost ?:

    Interesting. Great minds are thinking alike. Despite the group funding hoopla!

    I’m interested in any views you may have around using NodeBB for Blogging. There’s a plugin I’m using which enables a layout like this


    I actually quite like the way this pans out. I just wish there was more that could be done with the overall topic itself to get it to look more “blog like” without having to modify the topic template itself.

  • @phenomlab I think that looks like a pretty “natural” integration with NodeBB. Certified organic, even?

    KISS Engineering. If it scratches your itch and the fruit is hangin’ low… then maybe ya’ ought naught look a gift horse in the mouth. OTOH, if you have too much time on your hands, no life, are bored, or whatever… then by all means do feel free to chase the tail of that dragon…

    NodeBB’s comment, registration management, digest mgmnt, etc. is a big win out of the gate. Most built to purpose bee loggin’ platforms/suites have to build that. All of which duplicated efforts lead the holy grail of SSO. But, oh, snap! Big Bro IS watchin’… So what to do, what to do?

    The bee loggin’ forum hybrid may well be akin to a good marriage with the total being greater than the sum of the parts. Worthy of further investigation/flirtation, at the least.

  • @gotwf Thanks. Good points. I noticed yesterday that the integration between Ghost and NodeBB does seem to work (at least, someone tested it and has it working), so it’s still an avenue worth review in my view.

  • @phenomlab Indeed. Looking forward to it. 👍 🐕

  • @gotwf I’ve implemented it here. I really like the way it works and above all, it’s fast. It is lacking in native functionality in comparison to WordPress for example, although you can’t compare PHP to NodeJS as that just isn’t apples for apples.

  • @phenomlab Well, like you said, it’s fast, so no need to compare to php apples.

Related Topics
  • CSS codes to prevent votes to disappear

    Solved Customisation
    1 Votes
    3 Posts

    @phenomlab yes, it is 🙂 thanks a lot…

  • navigation menu panel on mobile

    Solved Customisation
    7 Votes
    8 Posts

    @crazycells hmm. That’s odd. I haven’t made any changes from recollection but I could be wrong. I’ll need to check.

    EDIT - very strange. I honestly don’t recall adding the below CSS block to alter the bottom bar, but you’re right…

    .bottombar-nav { padding: 0px !important; }

    I’ve removed this so it reflects stock Harmony.

  • How to style tool tip of nodebb-plugin-user-level

    Solved Customisation
    5 Votes
    4 Posts

    @DownPW thanks. I forgot about that.

  • Custom badges

    Solved Customisation
    49 Votes
    103 Posts

    Perfect 😉

  • hover link effect

    Solved Customisation
    6 Votes
    18 Posts

    @DownPW Looking at the underlying code, class start is being added on hover by jQuery in this function

    document.querySelectorAll(".button-gradient, .button-transparent").forEach((button) => { const style = getComputedStyle(button); const lines = document.createElement("div"); lines.classList.add("lines"); const groupTop = document.createElement("div"); const groupBottom = document.createElement("div"); const svg = createSVG( button.offsetWidth, button.offsetHeight, parseInt(style.borderRadius, 10) ); groupTop.appendChild(svg); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupTop.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); groupBottom.appendChild(svg.cloneNode(true)); lines.appendChild(groupTop); lines.appendChild(groupBottom); button.appendChild(lines); button.addEventListener("pointerenter", () => { button.classList.add("start"); }); svg.addEventListener("animationend", () => { button.classList.remove("start"); }); }); })

    The CSS for start is below

    .button-gradient.start .lines svg, .button-transparent.start .lines svg { animation: stroke 0.3s linear; }

    And this is the corresponding keyframe

    @keyframes stroke { 30%, 55% { opacity: 1; } 100% { stroke-dashoffset: 5; opacity: 0; } }

    It’s using both CSS and SVG, so might not be a simple affair to replicate without the SVG files.

  • ineffecient use of space on mobile

    Solved Customisation
    7 Votes
    10 Posts

    @phenomlab Thanks 🙏

  • CSS codes for fa-info icon

    Solved Customisation
    6 Votes
    9 Posts

    I have just figured it out…

    it can be targeted with text-decoration-color:

    I was mistakenly using color

  • 4 Votes
    10 Posts

    @phenomlab yeah its a beautiful world, i’m trying to have some practice

    i’ve released two simple api for now, but i’m try to learn as much as i can 🙂