From 3201a33e03e32b828f8d5170815821b6e316deaa Mon Sep 17 00:00:00 2001 From: Mattias Erming Date: Fri, 25 Jul 2014 10:48:10 -0700 Subject: [PATCH] Initial commit --- .gitignore | 2 ++ README.md | 3 +++ index.js | 9 +++++++++ package.json | 19 +++++++++++++++++++ resume.template | 5 +++++ serve.js | 33 +++++++++++++++++++++++++++++++++ 6 files changed, 71 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 index.js create mode 100644 package.json create mode 100644 resume.template create mode 100644 serve.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1ca9571 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules/ +npm-debug.log diff --git a/README.md b/README.md new file mode 100644 index 0000000..e590595 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Boilerplate theme + +This is the boilerplate theme for [JSON Resume](http://jsonresume.org/). diff --git a/index.js b/index.js new file mode 100644 index 0000000..e4275d3 --- /dev/null +++ b/index.js @@ -0,0 +1,9 @@ +var fs = require("fs"); +var Handlebars = require("handlebars"); + +module.exports = { + render: function(resume) { + var template = fs.readFileSync(__dirname + "/resume.template", "utf-8"); + return Handlebars.compile(template)(resume); + } +}; diff --git a/package.json b/package.json new file mode 100644 index 0000000..e9645de --- /dev/null +++ b/package.json @@ -0,0 +1,19 @@ +{ + "name": "jsonresume-theme-boilerplate", + "version": "0.0.0", + "description": "Boilerplate theme for JSON Resume", + "author": "Mattias Erming", + "main": "index.js", + "scripts": { + "start": "node serve.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/erming/jsonresume-theme-boilerplate" + }, + "license": "MIT", + "dependencies": { + "handlebars": "^2.0.0-alpha.4", + "resume-schema": "0.0.11" + } +} diff --git a/resume.template b/resume.template new file mode 100644 index 0000000..d121399 --- /dev/null +++ b/resume.template @@ -0,0 +1,5 @@ + + + + Hello, world. + diff --git a/serve.js b/serve.js new file mode 100644 index 0000000..737cd90 --- /dev/null +++ b/serve.js @@ -0,0 +1,33 @@ +// +// Run your theme locally. +// +// This script looks for a local `index.js` file and will then +// try to call `index.render()`. +// +// Requirement: +// `npm install resume-schema` +// +// Usage: +// `node serve.js +// + +var http = require("http"); +var resume = require("resume-schema").resumeJson; +var theme = require("./index.js"); + +http.createServer(function(req, res) { + res.writeHead(200, {"Content-Type": "text/html"}); + res.end(render()); +}).listen(8080); + +console.log("Serving theme"); +console.log("Preview: http://localhost:8080/"); + +function render() { + try { + return theme.render(resume); + } catch(e) { + console.log("Error: " + e.message); + return ""; + } +}