Lanyon

expand_more
Build Status

Disclaimer 2018-03-26: Lanyon’s initial goal was to be a tool for everybody, but since it never really took off and that we have limited time to make this really nice, we’ve decided to reduce its scope to be useful to just https://transloadit.com. We won’t be as interested in supported other usecases, so you might want to think twice about adopting it. This is mostly still publicly available for our own convenience, and in the off-chance Lanyon as-is, is still useful to others. In addition, we’ve introduced the requirement of Node 8 & Docker installed, in order to cut down on countering with Ruby dependency hells and speed up development without transpiling.

Install

In your website project root:

yarn add lanyon

Add a .lanyonrc file that you can use to tweak the configuration of Jekyll, Webpack, Nodemon, BrowserSync according to your environment:

module.exports.overrideRuntime = function ({ runtime, toolkit }) {
  if (!runtime.isDev) {
    runtime['prebuild:content'] = 'npm run inject'
  }

  return runtime
}

module.exports.overrideConfig = function ({ config, toolkit }) {
  if (config.runtime.isDev) {
    config.jekyll.url = 'http://localhost:3000'
  }

  config.jekyll.profile = true
  config.jekyll.trace   = true

  if (config.runtime.isDev) {
    config.jekyll.unpublished = true
    config.jekyll.future      = true
    config.jekyll.incremental = true  // <-- for clarify; incremental is the default also
  } else {
    config.jekyll.incremental = false
  }

  return config
}

To your package.json, at these run-scripts:

...
"build:production": "LANYON_ENV=production npx lanyon build"
"build": "npx lanyon build"
"postinstall": "rm -rf .lanyon/{babel,cache}-loader"
"start": "npx lanyon start"
...

Read why the postinstall is necessary.

Use

yarn build # or npm run build
yarn start # or npm start

Changelog

Please see the CHANGELOG.md file.

Reading List

These articles where helpful in creating Lanyon

Authors

License

Copyright (c) 2016 Kevin van Zonneveld. Licenses under MIT.


Website design based on the wonderful apex.run with the author's consent.