

Show HN: Review my project: Git Code Press, blogging via git - sorenbs
http://gitcp.com/

======
icefox
Why would I use this over blogger or even just gh_pages? Why .textile, is that
file magical? What if I want two blog entries? Can I have each blog entry its
own folders? What about other markup? Is <http://gitcp.com/sorenbs/jsgames-
articles> an example or something unrelated that you did and just linking to?

The image fails in your test: <http://gitcp.com/sorenbs/Git-Code-Press/markup-
test>

Rather than four hands showing you what to do having the numbers 1, 2, 3, and
4 as circle dots or something would be more clear.

How do I customize the header/footer?

~~~
sorenbs
Thank you for some great questions. First, it is probably not completely
clear, but the links at the bottom is a list of existing blogs. At the moment
there are 2 :-) jsgames-articles is the project i was working on when i
realised i had to create this git-powered blogging system. Now that it is
ready, i can get back to work.

I find Blogger and the other online wysiwyg style systems to be too much of a
hazzle to work with. I wasn't aware of github pages, but it looks really nice.
I will probably find some inspiration there. From what i can tell github pages
lets you create an arbitrary website structure with arbitrary styling, whereas
the goal with gcp.com is ease of use and a nice standard layout (sort of like
latex). That is also why i haven't added header and footer support, but i
should probably make some minimal customaization available, like name and
tagline.

.textile is sort of a convention for files with textile markup. I could add
support for other markup formats. What would you suggest?

~~~
icefox
What I meant by the .textile is that on the site you shouldn't say 'push a
.textile", you should say "push a *.textile such as foo.textile" I read it
such that the file name had to be ".textile" which made me wonder how you
would have more than one post.

"I find Blogger and the other online wysiwyg style systems to be too much of a
hazzle to work with" Can you be more specific? blogger lets you go to plain
text editor and not use the wysiwyg so that is a moot point. I have issues
with blogger, but that isn't what I would pick on.

~~~
learc83
I thought that push a .textile was pretty clear.

------
perlgeek
I love it, but it has still quite some room for improvements.

From a blog I expect at least an RSS feed of posts, a publishing date on each
post, and comments.

You could also embrace the possibilities of git, and for example provide
previous versions of blog posts, or even highlight differences between
versions.

------
p4bl0
Similar project of mine, but which is "blogging using only git" rather than
"via git": <http://gitorious.org/fugitive>

Example blogs: <http://shebang.ws/>, <http://a3nm.net/blog/>,
<http://vlog.antonin.delpeuch.eu/> :-).

~~~
sorenbs
That is very clean. I like the way you embrace git and integrate deeply with
its features. I will have to copy some of that :-)

~~~
p4bl0
:-). You should also have an rss feed generated, without that a blog is not
that useful IMO.

------
d0m
First, I love the idea and I'm looking forward to use it. The only thing I
wasn't sure while looking at the "landing" page was: "Where is the blog
hosted? Does it go to: gitcp.com/<my-name> ? or in the hook I can specify my
domain? Or..? Otherwise, well done sir.

~~~
sorenbs
Thank you. The blog is hosted at gitcp.com/user/repo. I think it is a great
idea to support custom domains. I could give every blog a subdomain and that
way you could set your DNS up with a cname record pointing directly to it.

~~~
d0m
Yeah, definitely. The other thing I was wondering is "Whatsup with the css and
page design?" It seems like you are using inline style in your examples but is
there a way to have my own css? And also, does the posts create a "standard
html" markup?

As you can see, I find there are a couple of unanswered questions. Maybe you
could add a simple FAQ or something :) Still, the landing page does a great
job at picking someone's interest, so good wok for that.

~~~
sorenbs
My idea is to have a very simple system where you only have to think about the
content, and the presentation stuff "just works". Do you think that custom
css/templating is a must-have feature?

I'm glad you like the landing page. I have added an example showing the markup
that generated the frontpage. Hopefully that will make it more clear how the
system transforms textile into html.

~~~
d0m
Yeah, I really like how simple it is but I think being able to write the css
is important. Still, if the generated HTML is standard, it could be something
really simple.. i.e. automatically include the style.css.

------
follower
The "result" link goes to: [http://localhost:8080/sorenbs/jsgames-
articles/spritemap-til...](http://localhost:8080/sorenbs/jsgames-
articles/spritemap-tiles-and-animations)

~~~
sorenbs
Thank you for catching that :-)

------
chrishenn
Looks intriguing, but you may want to provide some more documentation for it.
If I was to choose a git-workflow based blogging system I would lean toward
toto, simply because I can understand it better (theres some good
documentation and articles on it.)

Nonetheless, the result looks nice :)

~~~
sorenbs
Cool. I didn't know about toto, but it appears that there are quite a few git
based blogging systems out there. Do you know any (besides github pages) that
are hosted? The few i have looked at all require you to run your own server.

What kind of documentation would you like. A tutorial or rather a complete
documentation of the markup?

------
martinshen
UNRELATED: I've been taking a look at Review HN posts lately and realized that
there are increasingly few. Are they getting buried under all this bubble
news? or are fewer and fewer people pushing new startups?

------
pacifika
Great Idea. Are you trying to make it as painless as possible? If so, you
could autogenerate an index and a backlink on each blogpost then that would
take the hassle of keeping links up to date.

------
sktrdie
I just got an OutOfMemory exception

~~~
sorenbs
Thanks for alerting me. I guess i have a memory leak to hunt down :-)

------
sorenbs
Thank you all for comments and questions. That have been extremely helpful.

------
DanWaterworth
What a coincidence, I'm working on the same thing (more or less).

~~~
sorenbs
Great. I hope you will send me a message when you have something ready
@sorenbs

------
GMali
Great idea! But I think you meant hot "off" the press.

------
raptrex
Will you write how this works or release the source?

~~~
sorenbs
I suspect that it is the github integration you are interested in? The post-
receive hook generates a post request with json-formatted data about the
commit. See <http://help.github.com/post-receive-hooks/>

When i receive such a request i use the object api
<http://develop.github.com/p/object.html> to get a list of files in the repo,
and then fetch *.textile and .png files which are new or have a new hash. I
don't use their libraries, i just consume the rest interface directly.

I store the files in mongodb together with some metadata, and for processing i
use a nice scala web framework called liftweb. For textile parsing i use
<http://www.eclipse.org/mylyn/downloads/> And for code formatting i use
google-code-prettify

Anything else?

------
tmachinecharmer
Also add MathJAX so that latex works. Good job!

~~~
sorenbs
Wow, that is amazing. Will definitely have to play with that.

