bliper

static html page generation in perl
git clone git://git.2f30.org/bliper.git
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.