npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

less-plugin-lass

v0.1.0

Published

Lass

Downloads

4

Readme

Lass

it's {Less} with just a little less.

Lass is an opinionated syntax for Less CSS that omits colons, semicolons, brances, and quotes in favour of indentation.

It has most of the features of Less, and assumes that you are familiar with Less.

Examples

// lass
@color #ffcc00

.thing
  background-color @color
  font-size 16px

turns into:

// css
.thing {
  background-color: #ffcc00;
  font-size: 16px;
}

Just like Less (and because it's built on Less) you can reference parent selectors with &.

// lass
a
  color blue

  &:hover
    color green

turns into:

// css
a {
  color: blue;
}

a:hover {
  color: green;
}

CSS properties can have their values indented.

.example
  background-color pink
  transition
    opacity 0.3s,
    transform 0.3s,
    color 0.3s
  background
    red
    url(tile.png)
    repeat

Note that the commas in the transition property above have meaning in css and are nothing to do with Lass' syntax.

Note also that interpolated properties don't work:

@property background

.bg
  @{background} // <-- WILL NOT WORK
    red
    url(tile.png)
    repeat

Plus, object variables!

In Lass you can define variables as objects and access properties using dot notation.

@palette
  primary #0000E0
  secondary #02d7e1
  warn red
  social
    facebook #3b5998
    twitter #00aced
    youtube #bb0000

// Usage
.btn
  background-color @palette.primary

.facebook-thing
  color @palette.social.facebook

Usage

TBA

Things to Know

Indentation is two (2) spaces. Don't like it? You can't change it.

Under the hood Lass compiles to less, which then compiles to css using the less-plugin-lists plugin.

Why?

I really, really like the features of Less — especially the error reporting and import-once behaviour — but I don't like typing out colons and braces all the time and I don't like all the space they take up on screen. I could put up with it, but that's not how I roll.

Tests

Run tests with npm run test