blom
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

blom

build status Greenkeeper badge license

Work in progress

Overview

Blom is a modern zero-config application bundler running Webpack. The main motivation behind it is taking away all the maintenance hurdles that may arise when using boilerplates like vue-templates.
Projects of any size and complexity can be created through Blom. It supports all modern style preprocessors.
Once scaffolding through Blom, a developer need not worry about updating core dependencies. They just update the version to the latest and everything else is handled by Blom itself.

Preprocessors

All modern CSS preprocessors such as Sass, Less, Stylus, PostCSS come with Blom by default.

Hot-module replacement

Hot Module Replacement (HMR) is one of the most useful features of Webpack. It makes it possible to update changed modules without a full page reload. This can significantly speed up development in a few ways:

  • Preserve application state which would be lost in case of a full refresh.
  • Save development time by only updating what's changed.
  • Fiddle with styles much faster.

Cepheus supports HMR out of the box.

Server-side rendering

Since the inception of the web, the conventional method for getting your HTML up onto a screen was by using server-side rendering. It’s quite simply the process of converting HTML files in the server into usable information for the browser. SSR was the default for a long time. Back then most web pages were just for rendering static text and images in the browser. However, websites these days are much more advanced, have richer functionality so it makes sense to push rendering to the edge, that is, to send a barebones HTML doc with JavaScript that will handle the rest, including routing, inside the browser, without additional network requests to the server.
Considering this, SSR these days has a huge benefit: it is great for SEO. Your content is present before you get it, so search engines are able to index and crawl it without problems. This is something that you don’t get initially with client-side rendering. At least not without tricks and hacks. To recap, the 2 main benefits of server-side rendering are:

  • SEO
  • Initial page-load time

End-to-end testing

Cypress is a brand-new end-to-end testing framework not dependent on Selenium.

CLI

Build Commands

  • npm run start

    Start application web server. Updates the browser in changes in development mode, performs server-side rendering in production mode.

  • npm run build
    Compiles the application for production deployment.

Options

Configurable

  • devtool
    type: string
    description: Choose a style of source mapping to enhance the debugging process. Set to ‘false’ to disable.
    default: 'cheap-module-eval-source-map' if NODE_ENV is 'development’, 'nosources-source-map’ otherwise
  • output-public-path
    type: string
    description: Public URL of the output directory when referenced in a browser.
    default: ‘/’
  • context
    type: string
    description: The base directory, an absolute path.
    default:
  • entry
    type: string
    description: The entry point of the application.
    default: './src/index.ts’
  • index-template
    type: string
    description: The landing page mustache template.
    default:

Default

  • host type: string
    description:
    default: NODE_HOST if present, ’127.0.0.1’ otherwise
  • mode
    type: string
    description:
    default: ‘start’
  • nodeEnv
    type: string
    description:
    default: NODE_ENV if present, ‘development’ otherwise
  • outputPath
    type: string
    description:
    default: ‘build’
  • port
    type: string
    description:
    default: NODE_PORT if present, ’8000’ otherwise
  • uglifyOptions
  • postcssConfig

Readme

Keywords

none

Package Sidebar

Install

npm i blom

Weekly Downloads

1

Version

1.0.3

License

MPL-2.0

Last publish

Collaborators

  • escapace-npm