bliper

static html page generation in perl
git clone git://git.2f30.org/bliper
Log | Files | Refs | README | LICENSE

README (3484B)


      1 bliper (BLog engine In PERl) v0.2
      2 =================================
      3 
      4 A perl script that reads all posts from main-articles/ as markdown and creates
      5 them as HTML articles in output/ dir. It also reads and creates individual
      6 pages based on files that exist in pages/ and pages-b/ directory.
      7 
      8 Deps: Text-Markdown (http://search.cpan.org/~bobtfish/Text-Markdown-1.000031/)
      9 
     10 It also creates a main page as index.html with all links to posts and pages
     11 generated.
     12 
     13 Files included are:
     14 
     15 .
     16 |-- LICENSE
     17 |-- Makefile
     18 |-- README
     19 |-- TODO
     20 |-- bin
     21 |   |-- bliper-blog.sh
     22 |   |-- bliper-create-post.sh
     23 |   |-- bliper-deploy.sh
     24 |   |-- bliper-generate.pl
     25 |   `-- bliper-menu-creation.sh
     26 |-- changelog
     27 |-- main-articles
     28 |   |-- 2013-11-07-readme
     29 |   `-- 2013-11-10-markdown-notes
     30 |-- output
     31 |   |-- images
     32 |   |   `-- puffytron.jpg
     33 |   `-- style.css
     34 |-- pages
     35 |   |-- about
     36 |   `-- contact
     37 |-- pages-b
     38 |   `-- readme-again
     39 `-- template
     40     |-- footer
     41     |-- main-bottom
     42     |-- main-top
     43     |-- page-bottom
     44     `-- page-top
     45 
     46 bin/bliper-blog.pl
     47 	simple script to check if posts exist in main-articles/. If no posts
     48 	exist, 'blog' page will not be created.
     49 
     50 bin/bliper-create-post.sh
     51 	use this instead of `touch <file>' for your posts. It just prepends `date
     52 	'+%Y-%m-%d'` to the beginning of the filename.
     53 
     54 bin/bliper-deploy.sh
     55 	is a script tha "deploys" the website. It's based on rsync and I've
     56 	included a sample config. Just change "user@host:/path/to/output" with
     57 	the real one.
     58 
     59 bin/bliper-generate.pl
     60 	is the main script that parses every post in input/ and recreates it as
     61 	HTML in output/. It also creates the index.html page and appends all links
     62 	to posts.
     63 
     64 bin/bliper-menu-creation.sh
     65 	upon generation, a file called 'tmp' gets created. Then, this script
     66 	comes and replaces all "INSERTMENU" strings in templates with the real
     67 	menu. Nothing fancy, but you need to run this before deployment or
     68 	viewing to generate your menus in all pages.
     69 
     70 main-articles
     71 	files in this directory will be linked in 'blog' page. If no articles
     72 	exist, blog page will not be created.
     73 
     74 Makefile
     75 	just type 'make' to generate your site. It calls bin/bliper-generate.pl
     76 	and bin/bliper-menu-creation.sh. When you edit your
     77 	bin/bliper-deploy.sh, you can deploy your site with 'make deploy'.
     78 	Possible options are: make, make clean, make deploy.
     79 
     80 output
     81 	is the directory which all generated pages are placed. Edit the style.css
     82 	file according to your needs.
     83 
     84 pages
     85 	is the directory where all individual pages live (check the included
     86 	sample).
     87 
     88 pages-b
     89 	is the directory which produces pages that do not appear on the menu.
     90 	You can link to them through other pages with markdown.
     91 
     92 template
     93 	main-top is the top section of the main page.
     94 	main-bottom is the bottom section of the main page.
     95 	page-top is a generic template for the top section of any post page.
     96 	page-bottom is a generic template for the bottom section of any post page.
     97 	footer is just the footer appended in all pages.
     98 
     99 To view the demo, run `make` in your main bliper directory. This calls
    100 bin/bliper-generate.pl and bin/bliper-menu-creation.sh. If you need to view the
    101 results, just run `$BROWSER output/index.html`
    102 
    103 When your site is ready, edit `bin/bliper-deploy.sh` accordingly and just `make
    104 deploy` on your main bliper directory.
    105 
    106 There is also support for disqus individualy for pages and articles. Just
    107 uncomment the disqus section on template/article-bottom and/or
    108 template/pate-bottom to enable disqus on articles and/or pages.