Code Monkey home page Code Monkey logo

barn's Introduction

Barn

NPM NPM
Online Demo
A resume/CV generator, parsing information from YAML file to generate a static website which you can deploy on the Github Pages. Exactly like resume-version Hexo.

Usage

Installation

[sudo] npm install -g barn-cli or [sudo] yarn global add barn-cli
(Of course, you should install Node.js with npm before that)

Workflow

  1. barn -h: check the manual
  2. barn init: init a barn folder using git clone, so make sure you are connecting to the www
  3. cd barn-starter
  4. fill config.yml with your own customized configs
  5. fill YAML files in folder themes/${your theme}/content/ with your own information
  6. make use of barn server to debug your pages and repeat step 3-5 until it satisfies you
  7. barn deploy: deploy to your own github resume repository
  8. trun on Github Pages, see https://pages.github.com/ for more instruction

Commands

  • barn -h
    Checking the manual of this tool is the very first thing you should do.

  • barn init / i
    Initiate a barn project using git clone with Maples7/barn-starter.

  • barn genrate / g
    Generate ultimate static website to folder dist.

  • barn server / s
    Watch any changes of any files and apply them to folder dist immediately, so you can open *.html in folder dist with your browser to debug your pages locally.

  • barn deploy / d
    Deploy to a git-based server such as Github Pages and Coding Pages.

  • barn -v
    Check the version.

Themes

  • default: the default theme of barn

You can download any themes above and put them in folder themes and apply any one of them by changing the config inside Theme block in config.yml.

(Thers is only a theme called default in folder themes for now, you are welcomed to customize your own and make it open source. If you'd like to, catch the key points of instruction below.)

How to make my own themes

Steps:

  1. On Github, create a barn theme project whose name is supposed to follow pattern barn-theme-XXXX
  2. Put all html templates in the root directory ./, all css files in ./css/ and all images in ./image/
  3. Make starter YAML files for information needed to render pages in ./content/ to tell users what they should provide
  4. Full tests and detail document are required in your own theme project
  5. Post a PR to this project to list your own theme inside Themes block above, please note whether any other template engines are needed besides pug and I'll give some support in my code

You are welcomed to review this project for more information you need.

Debug

DEBUG=barn-cli barn [command]: add DEBUG=barn-cli at the beginning of any command to get more information about the running status of program.

Relatives

Contributors

  • Maples7: Creator and maintainner of this project
  • ShadowWood: Maker of the default theme

License

MIT

barn's People

Contributors

maples7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

barn's Issues

To-Do lists before publishing v1.0.0

  • Refactor code & make things more componentized
  • Make default theme better to add flexible options about some unimportant fields
  • Add bash-completion shortcuts for commands and options

What‘re your needs? Let's discuss below.

😃

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.