Pico Blog Software v1.0 ----------------------- 1.0 Overview 2.0 Features 3.0 Getting Started 4.0 Configuration 5.0 Troubleshooting 6.0 Credits 1.0 Overview ------------ Pico is a full-featured, miniscule blog script written entirely in Perl. It weighs in at just around 14k, making it one of the smallest blog packages available. I have released Pico under the GPL in order to make it free and accessible to everyone. Feel free to make modifications to this code and/or redistribute it so long as it's not for profit and the credits/copyleft information is not altered or removed. http://www.gnu.org/copyleft/gpl.html Support for Pico is relatively limited as it is done entirely in my free time, but don't hesitate to email anyway - i'll respond as time allows. Also, if you make any worthy improvements, notice any bugs, or just want me to see your Pico blog in action, feel free to drop me a line. 2.0 Features ------------ As previously stated, on of the principle goals of Pico is to incorporate features of commercially available blog packages into a tiny, free, open source version. Keep in mind the small size as we go over the limited features. 2.1 Unlimited posts/comments Pico supports an unlimited number of posts/comments. Keep in mind though that your web server disk space is probably not unlimited, so even though it would probably take years of blogging, keep an eye on the data files to make sure you don't end up with a full server. It is possible to limit the number of posts/comments through the global variables. 2.2 Auto-archiving Pico will automatically archive your posts so you don't have to display them all on your main page. You can adjust how many posts are displayed at a given time through the global variables. To access the archives, users can either click the "archives" link next to the "powered by" tag at the bottom of the page, or link to "pico.cgi?showArchives". 2.3 Comment to post Of course Pico supports commenting. However, sometimes you may not want to allow comments to a particular post, in which case you can prevent them by selecting "No" to the question "Allow comments?" when you are authoring your post. The number of comments made to your post is shown beneath the post itself in parentheses. 2.4 HTML support HTML tags are supported in your posts, so you can embed music, images, hyperlinks, etc. At this time, HTML tags are not allowed in the comments, though that may or may not change in an upcoming release. No special instructions apply, just enter the tag exactly how you would if you were writing a web page. You can disable HTML tag support altogether through the global variables. 2.5 Image support As mentioned above, images are supported by Pico and can be embedded or linked to from within your posts. 2.6 Customizable appearance Pretty much every facet of Pico can be customized to meet your needs. Some things, like the base font and color, can be changed through the global variables, everything else can be changed in the code itself. It is possible to apply styles with CSS, either embedded or linked, but we're not going into that if you don't already know how. 2.7 Moblog capable Currently little more than a clique-y buzzword, moblogging is basically writing to your blog from your MObile device. Pico renders in most embedded browsers, including Opera, with no problems. This allows you to keep up with your blog while you're on the road. File uploads are not currently supported (~14k remember), but I may look at doing that in a future release. 2.8 Platform independent Duh. Perl itself is platform independent and thus by proxy, so is Pico. This means that it will run, display, and operate precisely the same on any type of server whether it be Windows (why God?), Unix, or Linux. 3.0 Getting started ------------------- Getting Pico up and running should take a minimal amount of time. Out of the box, there is quite a nice default set of parameters that will allow you to operated with no customization. Assuming you are going to want to make a few changes, i'll go over the global variables in the next section. The .zip archive comes with two files - this readme.txt, and pico.cgi. That's it. If you got any others, they're not from here. What you will need before we begin is a web server with Perl (5 or later) installed, and a cgi-bin (or equivalent) directory. Once you have those two things, follow these instructions: 1. Copy pico.cgi to your cg-bin (or equivalent) directory and give it execute permissions (usually 755). 2. Change the blog name and paths to reflect your installation (global variables are covered in the next section). The default password is "123456", so make sure to change that as well. 3. Add your first post by going to (may vary by install): http://yoursite.com/cgi-bin/pico.cgi?newPost 4. Enjoy your new blog. That's really it. Short of customization, getting up and running is very straightforward. Your blog is automatically rebuilt each time you write a new post, but should you ever need to rebuild it, say, if you switch servers or something, simply go to: http://yoursite.com/cgi-bin/pico.cgi?rebuild Rebuilding will write out the blog to the HTML file you specify in the global variables (default is ../pico.html). You should use this HTML file when designing your blog as opposed to the actual cgi file, even though your blog can be accessed by hitting pico.cgi with no parameters. 4.0 Configuration ----------------- Now we're going to go through all of the global variables located at the top of the pico.cgi file that can be modified to change the look, feel, and operation of your blog. 4.1 $gFont Controls the base font of your entire blog. This font is automatically scaled up or down when a larger or smaller font size is needed. Default is "Trebuchet MS". 4.2 $gFontColor The color of your base font. This also applies to your entire blog. The default color is "#666666". 4.3 $gPassword The password required to author a new post. You should change this often and use a unique password that you don't use anywhere else. In the next version this will be a little less visible and a little more secure. Default is "123456". 4.4 $gPath This is the relative path to the directory in which you want Pico to store its data files. This can be an existing directory, like cgi-bin, or you can create your own directory to house the files. The default directory is "." - or, the same directory that pico.cgi is in. 4.5 $gMe The path (including file name) where you have put pico.cgi. The default is "../cgi-bin/pico.cgi". 4.6 $gAllowHTML Whether or not you wish to allow HTML tags in your posts. Valid values are "y" for yes and "n" for no. Default is "y". 4.7 $gMaxPosts The maximum number of posts displayed from your blog prior to being archived. Default is "10". 4.8 $gName The name of your blog, default is "Pico Blog". 4.9 $gURL The URL of your blog (http:// and all). This should be the entire absolute path to the page that you advertise as being your blog. Default is "http://www.7thesandbox.com". 4.10 $gTarget The target HTML file that your blog is written to each time it is rebuilt. As previously mentioned, it is a good idea to use this file when designing your site as opposed to the pico.cgi file. default is "../pico.html". 5.0 Troubleshooting ------------------- Well guys, sorry, but I just haven't had the time to do anything with this section and quite honestly haven't run into any real issues that require explanation here. But if you get a "500 Internal Server Error" when you try and save your new post, you are entering the wrong password (check CAPS LOCK). 6.0 Credits ----------- Pico written and updated entirely by Thomas Buschbach. I would love to hear your feedback, ideas, comments, etc. Just please remember that a) it's free and b) I do it in my free time. Send me a link to your Pico blog, and most importantly, ENJOY! http://www.7theSandbox.com/pico pico@7thesandbox.com