Croogo

HotScripts Emerging Script Award 2010

Posted by Fahad on Wed, Oct 13 2010

I just received an email from HotScripts and was informed that Croogo has been featured and awarded as an Emerging Web Script To Watch for 2010!

Croogo Emerging Script Award 2010

This is really a great news! I still remember reading that HotScripts newsletter a few years ago on my cellphone where I first learned about CakePHP framework. A few years later, Croogo was developed and today featured on HotScripts. It is really amazing to see how things connect.

I, on behalf of the growing Croogo community, thank HotScripts for recognizing this project and helping spread the word! :)

Posted in Croogo | 15 Comments

Going open source with Croogo documentation

Posted by Fahad on Wed, Oct 06 2010

Croogo's documentation has been made open to all. Till now, the wiki is managed by me only but I am looking forward to some community contribution.

Documentation repository

Want to help extend Croogo's documentation further? Developed a new plugin or theme, and want to list it in the wiki? Want to add your new Croogo powered website to the showcase? Fork the repository, make changes and send a pull request on GitHub!

GitHub address: http://github.com/croogo/documentation

Documentation itself is a git repository. Whatever you see inside the repository is made available in the wiki. Basically it is an organized collection of markdown formatted files. Can be downloaded for personal offline use too.

Gitwiki plugin

This whole process has led me to develop a new plugin called Gitwiki. This is the plugin that runs the Croogo wiki. It uses documentation repository as a Git submodule and takes care of processing the markdown files.

GitHub address: http://github.com/croogo/gitwiki

Questions may arise, why not let users log in to croogo.org, add/edit pages and submit for review/approval? Because, I don't want to take the pain of developing a full working wiki application with diffing and revisioning features, and also review the submissions at the end of the day one by one. Using a version control system like Git takes the pain way, and with GitHub everyone can see what others are up to by just looking at the network graph. And most of the people willing to contribute to Croogo's documentation are likely to be those with some technical knowledge. So using GitHub makes perfect sense.

At the moment, documentation is written in English only. But I have already received requests for supporting other languages too, and will be working on that in coming weeks (largely depends on how many translators are willing to help). API documentation could be up soon by using API Generator plugin too.

And oh, Croogo turns 1 tomorrow! :)

Posted in Croogo | 21 Comments

Markdown plugin

Posted by Fahad on Thu, Sep 09 2010

I have been writing documentation for Croogo for the past few weeks in markdown format. The more I use it, the more I like it. It is really very nice to write in plain text and be able to convert it to proper (X)HTML when it is finally shown in the browser. So I decided to write a plugin for converting markdown to html. It can be used in Croogo for writing content, as well as manually in your CakePHP applications.

What is Markdown?

Markdown is a text-to-HTML conversion tool for web writers by John Gruber. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).

Learn more about markdown here: http://daringfireball.net/projects/markdown/.

I have used the PHP Markdown_Parser class by Michel Fortin for this plugin.

Download

Get the plugin from GitHub: http://github.com/fahad19/markdown.

How to use this plugin with Croogo?

Read the wiki for information on how to upload and activate the plugin. Once active, you can start writing content in markdown format.

You don't need to convert your already existing content (in HTML) into markdown because it is aware of what is already in HTML and won't convert them twice. It is recommended that you deactivate any WYSIWYG editors (like TinyMCE) before using this plugin.

Using the plugin in CakePHP applications manually

After placing the plugin at /app/plugins/markdown, let you Controller know to load the plugin's Helper:

<?php
class PostsController extends AppController {

    pubic $helpers = array('Markdown.Markdown');

}
?>
Now, in your views:
<?php
    // will output in HTML format
    echo $this->Markdown->transform($textInMarkdownFormat);
?>
1 | 2 | 3 | 4 | 5 | 6