back
65 comments
This is very cool. I'm currently using a static blog generator (Frog) to run mine, but to be honest the appeal has started to wear on me because of the barriers involved between writing something and actually pushing it. I'm a lot more likely to actually get some writing up if I can just click in a box and start writing, whereas at the moment I've got to generate a new post template, edit it, re-build the page, then push the lot.

It's a minor inconvenience, but it's one that's been enough on more than a few occasions for me to just say bugger it and post my thoughts elsewhere or just not bother.

> because of the barriers involved between writing something and actually pushing it

Can you explain what barriers are you talking about? I moved from a CMS to static blog only to reduce these barriers. For me, a new post is just three steps

   $ hugo new <post>
   $ vim <post>
   $ git commit -am "new post" && git push
which is something I vastly prefer as I am in my text-editor. Even the live preview is easily made possible with livereload (pre-built in Hugo).

The best use-case of hubpress, IMHO, is when I want to publish from mobile (or when my dev environment is not unavailable)

[0] - http://gohugo.io/

Like I say, it's a minor barrier, but it's sometimes enough to not feel like bothering with unless it's very important. Every time I want to write a new post I have to:

  1. Start Emacs (I could use something else here, but I like Markdown mode)
  2. Start eshell and run:
    $ raco frog -n <title for a post I may still have in idea stage and don't know what to call it yet>
    $ find-file _src/date+title.md
  3. edit template tags. 
  4. write post.
  5. save post.
  6. run:
    $ raco frog -bp
  7. check the preview and make sure nothing's broken in the formatting
  8. push to git. 
  9. check again and make sure nothing broke now that it's actually hosted (this has happened a few times)
It's not a huge burden, but it's occasionally a pain and the roundabout steps involved, and the weird bugs at times in code-block rendering, get a little old when I compare it to:

  1. Click link to Blogger/Medium/Tumblr/ello/etc.
  2. Click "new post"
  3. write post.
  4. preview/publish post.
In my case, the main barrier is switching constantly between environments. When I was using Wordpress, I had everything right there in my browser. Now that I've moved to a static blog, I have

  * A text editor, where I write the post
  * A terminal, where I commit/push my changes
  * A web browser, where I preview my changes
The constant switching between contexts makes it harder for me to focus. Of course, there are advantages (I can now write on the train and push everything afterwards), but I do feel the difference.
I use jekyll and docker to preview before commit.: docker pull kisenka/centos6-jekyll

docker run -i -t -p 127.0.0.1:8080:4000 -v /home/xxx/xxx.github.com:/data kisenka/centos6-jekyll

HubPress seems interesting, but I do not want to give them my github credential.

I had the same workflow issue. Especially when all I wanted to post was a youtube link or a quote I heard. So I built: https://github.com/whistlerbrk/mail2frontmatter as a result.

In a nutshell it lets you email your blog, parses it and resizes attachments, interprets links (with plugins) and will also commit it to git and push for you. With guard you can autotrigger rebuilds as well.

So then, why not use something, which you can connect with Dropbox, and alike service?

I have Dropbox running on the server side. So I can edit files locally and they are immediately pushed to the server.

Same here. http://taoofmac.com is run that way. Check out http://github.com/rcarmo/sushy for the next rendering engine...
Is there any service that offers the combination of Dropbox + Jekyll + Git?

I might consider it without git, but Jekyll is really essential for me.

Well, there is https://pancake.io/. You can try it.
One thing to remember before hosting your blog on Github is that content seems to be censored by them far more actively than other platforms (e.g. Wordpress)

Case in point -- this parody account that was shut down by Github (http://www.theregister.co.uk/2013/12/19/feminist_software_fo...) without any legal need for the same. You may think today "Oh, that's fine, they were assholes anyway", but in principle, the same thing could happen to you tomorrow if your blog conflicts with the Github values du jour.

Worth mentioning - Github is a great place for code since code itself is rarely objectionable, but when you begin hosting writing there, they appear to be really quick to drop the censorship hammer for questionable reasons, hiding behind the ToS when questioned.

Blogs are the simplest thing in the world to host - a $5 VM at Digital Ocean or similar all but eliminates any censorship concerns, and a static generator like Octopress ensures that you have an easily-rehostable backup of your words in case of the contrary.

Be warned, I love Digital Ocean but they have been caught doing the same thing. Hosting blogs there that push any edges is dangerous.
While I must agree that DMCA+GitHub is a dangerous combo that feminist programming language "project" is literally just troll bait. It's a hoax on the cost of some misguided person who literally thought that programming languages can be sexist.

Everybody laughed, I pulled out a lot of my hair, joking about sexist hammer and homophobic wrench. I can see why GitHub didn't feel like hosting a troll fest.

Look, from what I have read, the language is an obvious parody. Probably not a very skillful one.

If it's leading to a "trollfest", then that is a separate problem. Taking down the repo is not the solution to trolling.

Very cool, but please add full github markdown support. https://github.com/adam-p/markdown-here/wiki/Markdown-Cheats...
It seems that the authors made a specific point to not use Markdown:

http://blog.hubpress.io/2015/02/06/HubPress-a-web-applicatio...

My point of view is that asciidoc is really powerful and underused, that's why i focused on it.

However, HubPress is powered by Asciidoctor (http://asciidoctor.org) which provide a compatibilty with Markdown : http://asciidoctor.org/docs/asciidoc-syntax-quick-reference/...

I'm surprised there aren't more things like this out there. With GitHub, Tumblr, etc. basically allowing you to host almost whatever you want it's surprising people still pay for hosting their small, personal-ish websites.
Yeah, especially because you can host it on a custom domain, and having your website in a git repo is pretty nice, using githuh for your blog / homepage / whatever seems like a no-brainer.
Last I heard using your own domain on top of github had issues, has this been resolved?
I guess I'm out of the loop. What cool things can I do on tumblr?
For 1, you can use tumblr as your media CDN, i.e. post photos, videos and other bandwidth heavy stuff, and use the tumblr API to access and display them on your website / blog.
tumblr actually allows you to use custom domain, i currently have 4-5 domains where my clients only update once a year for an event. i make up a custom theme and them take it over. no fuss around with hosting it.
I find the concept of using a content editor on top of a SCM as a CMS very intriguing. Thanks for sharing - Can anyone comment on how this compares to http://prose.io/ ?
It looks like a dialled-down version of Prose without image upload and more elaborate metadata/YAML options.

Prose is beginning to pick up after it changed maintainers, but there are still some hangups such as image upload that need to be fixed.

Some time ago I wrote Coisas[1], which is somewhat like this, but with Markdown and YAML Front Matter and not so much visual appeal as Hubpress. Anyway, it is a nice thing, runs in your browser and publishes to GitHub Pages. Small and modular codebase, you can fork and modify it easily.

[1]: https://github.com/fiatjaf/coisas

I've been working on similar things, so this is really cool. Although, as an advanced jekyll user, all of my solutions revolve around GitHub Pages + Jekyll combination, which I think is the best offering for static websites.

My solutions are called potion (discontinued) and Sazed (assembly.com/sazed)

Thank you kindly for introducing me to assembly.com.
Anyone else gets an authentication error when trying to login to the admin console with github credentials?
Hi, i'm the creator of HubPress, to log in the app, you need to update your config file :

https://github.com/msravi/msravi.github.io/blob/master/hubpr...

In your case :

{ "meta": { "username": "msravi", "repositoryName": "msravi.github.io", "branch": "master" }, "theme": { "name": "Casper" } }

Duh, thanks! That was real stupid of me.
you have to fork it to a repo you control.
Yes, I did. And I updated the config.json to use my username and repository name. But once I go to <username>.github.io/hubpress and try to login, there's an authentication error. Looking at the console output shows this:

""" AuthServices - login error Objecterror: 404path: "/repos/undefined/undefined"request: XMLHttpRequest__proto__: Object__defineGetter__: function __defineGetter__() { [native code] }__defineSetter__: function __defineSetter__() { [native code] }__lookupGetter__: function __lookupGetter__() { [native code] }__lookupSetter__: function __lookupSetter__() { [native code] }constructor: function Object() { [native code] }hasOwnProperty: function hasOwnProperty() { [native code] }isPrototypeOf: function isPrototypeOf() { [native code] }propertyIsEnumerable: function propertyIsEnumerable() { [native code] }toLocaleString: function toLocaleString() { [native code] }toString: function toString() { [native code] }valueOf: function valueOf() { [native code] }get __proto__: function __proto__() { [native code] }set __proto__: function __proto__() { [native code] }app.js:3544 (anonymous function) """

Does it need my password to go through HubPress?
No. I risked it and it only sends your password to GitHub.
That's right, your credentials are send to GitHub, then a personal token is generate through the GitHub API, and its use for each futur call
Cool concept, but does it work with GitHub 2-factor authentication? (cursory testing says no; anyone else get in?)
I'm also unable to login with 2-factor auth. Console says a 401 error.
2-factor is not implemented in the preview, but i will work on it asap.

You can create a other github account and give him access to write on your repository, it's a kind of workaround if you want to keep the 2-fact auth on your main account

Anyone else unable to use this as they have 2FA enabled on their github account?
I think a Youtube videos does not qualify to be titled as 'demo'.
You are right, it is more a preview than a demo, i'll change that. Thank you
I'm reading this later, but upvote based solely on the title. ;)
Logo looks like Hivestreaming. https://www.hivestreaming.com
And like hugo: http://gohugo.io/
Downvoted because HiveStreaming has nothing to do with this.
It's a valid info I think.