Skip to content

surenderthakran/blogger

Repository files navigation

Blogger

http://surenderthakran.com

Build Status

Salient Features:

  • Runs on nodejs v8 and npm v5.
  • Node.js runs with Express.js framework.
  • Uses prism for syntax-highlighting.
  • Application code and dependencies run inside Docker containers making the dev and production environment COMPLETELY independent of host machine.
  • Every push to the master branch is built and tested using Travis-CI.
  • In Development Environment:
    • Provides simple development environment setup with Docker Compose.
    • Generates html pages from templates using mustache templating engine on every code change in templates.
    • Auto generates sitemap.xml once on server start.
    • Uses Gulp to compile LessCss to Css and for CSS minification.
    • Uses Webpack to bundle frontend javascript files on code change.
    • Runs EsLint checks on every code change using Gulp.

How To Use:

To run in production environment:

docker build --no-cache=true -t blogger .

docker run --rm -it -d \
-p 18660:18660 \
--name blogger_container \
--env NODE_ENV=production \
blogger

To set up development environment:

With Docker Compose:
docker-compose build
docker-compose up
Without Docker Compose:
docker build --no-cache=true -t blogger .

docker run --rm -it -d \
-v $(pwd)/:/blogger/ \
-v /blogger/node_modules/ \
-p 18660:18660 \
--name blogger_container \
--env NODE_ENV=development \
blogger

Third Party

Prism

Prism is used for syntax-highlighting and other code utilities. Prism's default theme is inherited and apart from prism's core language package, syntax-highlighting is supported for:

  • Bash
  • Docker
  • Git
  • Go
  • HTTP
  • JSON
  • Makefile
  • Markdown
  • Nginx
  • Python
  • SQL
  • Vim
  • YAML