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

quark-css

v1.3.0

Published

SASS starter framework. Structure and layout only. Presentation unopinionated.

Downloads

10

Readme

Quark

Simply put, a SASS starter framework.

Table of contents

  1. Intro
  2. Description
  3. Instructions
  4. How to use
  5. License
  6. Docs (coming soon)

Intro

This framework is all about the structure and layout only. It does not contain any presentation styles. Design in itself is a unique and creative process. When you want your product to stand out, you rarely design it to look like something that already exists. Thus, an assumption about the presentation styles of your components would be redundant. I don't want you to overwrite stuff just because by default, they don't look like they should. I think it's far better to write them from scratch.

Description

The main goal of the framework is to be as unobtrusive as possible. It's just the foundation you build on top of. As simple as that.

A quark (/ˈkwɔːrk/ or /ˈkwɑːrk/) is an elementary particle and a fundamental constituent of matter (more details here). Quarks combine to form composite particles called hadrons, the most stable of which are protons and neutrons, the components of atomic nuclei. At the moment, quarks are the smallest particles known to man. They are the foundation of everything. Just like Quark aims to be for your products.

The framework takes scalability into consideration, being thought as a solution for large scale applications/websites. It provides an intuitive folder structure, a clear organization of the underlying logic that builds the framework and separation of concerns when it comes to the bits and pieces that connect. This should provide sanity when dealing with large CSS codebases (nothing is for sure, though :D).

Composability is the next thing. Styles are broken down into named folders with specific responsibilities in mind. They are included so that the specificity of your styles grows towards the end of your stylesheet in a linear and predictable fashion. Composition is left in the hands of the developer. Quark provides SRP (Single Responsibility Principle) classes that do one thing and one thing only. Composition then becomes a lego game, where you embed the classes you need on the right elements. This makes a great case for reusability as well as a faster development cycle (at the cost of embedding two, three extra classes in your HTML, which I always think it's worth it).

Quark doesn't care about your app styles. Yeah, I know this is the second time I'm saying this. Just wanted to make sure. Actually, the framework tries to provide as few visuals as possible. It just helps with the underlying structure and layout. Visuals are usually something very specific and it makes little sense to provide defaults that will be then overwritten by developers. The way something looks should be your decision.

Instructions

  1. Clone the repository
  2. Run npm install
  3. Run npm start (this will automatically watch for changes and recompile)
  4. Extra: npm run build rebuilds the styles, production ready (minified, concatenated, etc.)

You can check http://localhost:8080 in the browser for some quick examples.

How to use

Probably the safest is to include the compiled version in your project (find it under dist/quark.css). However, Quark also enforces structure due to how things are organized inside the framework (layered approach). Although this is a personal preference and by no means the one and only way to organize your CSS/SASS, you might take a look and decide whether it's worth sticking with it or not. If it is, a better approach would be to copy the structure in your project and build on top of that (this enforces consistency in your codebase).

Another idea would be to require only what you need from the framework. This is great because it allows fine control over your imports and can potentially reduce the footprint of the included styles to a bare minimum. However, you're tied to using some CSS loader in your build process - browserify-css or webpack css-loader.

License

This software is released under the terms of MIT license.