April 15, 2019

237 words 2 mins read

linkedin/opticss

linkedin/opticss

A CSS Optimizer

repo name linkedin/opticss
repo link https://github.com/linkedin/opticss
homepage
language TypeScript
size (curr.) 10349 kB
stars (curr.) 689
created 2017-08-02
license BSD 2-Clause “Simplified” License

OptiCSS

Greenkeeper badge

OptiCSS is a template-aware stylesheet optimizer.

Most developers don’t use OptiCSS directly. You may be looking for a style framework that uses it:

  • CSS Blocks
  • Add your project to this list! We want to collaborate with you on adopting OptiCSS.

Overall architecture documentation.

This is a monorepo, there’s different documentation available in the various packages:

Public API & Libraries:

These packages are what we expect others to have dependencies on. We are careful about their public APIs and backwards compatibility.

  • opticss: The core library containing the optimizer. README
  • template-api - The template analysis API.
  • element-analysis: The element analysis API.
  • resolve-cascade - A library that produces a resolved cascade for CSS selectors against a DOM without using a browser. README
  • util - Common utilities and data structures that we share across our project.

Internal Dependencies:

These packages are extracted to allow them to be shared. You probably won’t need to depend on them. As long as the other packages in this monorepo compile and pass tests we don’t worry about backwards incompatibilty for these.

  • simple-template - A custom template language we use for testing OptiCSS.
  • attr-analysis-dsl - A custom DSL for expressing attribute analysis succinctly.
  • code-style: The coding styleguide and linters for OptiCSS. README

Miscellany

  • demo-app: An interactive demo of OptiCSS.
comments powered by Disqus