Tachyons was built for designing.
Create fast loading, highly readable, and 100% responsive interfaces with as little css as possible.
Modules can be altered, extended, or changed to meet your design needs. You shouldn't need to write css everytime you want to build a new ui component. By learning the composable building blocks in tachyons, you can quickly start to build out interfaces while writing little to no css.
Copy the line of code below and paste it in the head of the html file(s) you want to include tachyons in.
<link rel="stylesheet" href="https://firstname.lastname@example.org/css/tachyons.min.css">
or install via npm
npm install --save-dev email@example.com
or grab all the source files and build+develop locally
git clone firstname.lastname@example.org:tachyons-css/tachyons.git cd tachyons npm install && npm build
Everything should be 100% responsive. Your website should work regardless of a users device or screensize. Don't break the functionality of HTML with CSS.
No matter the lighting, or the device, font-sizes should be large enough and contrast should be high enough.
Code isn't for making a developers life easier. It's for improving the lives of our users. If it's not doing that, why write it. A developer's time is not precious. A user's time is. Code should be optimized for performance.
Modules > Monoliths Tachyons isn't a monolithic framework. It's a collection of self contained modules that can be mixed and matched or used independently. Use what you want, leave what you don't.
Doing one thing well, promotes reusability and reduces redundancy in a codebase.
Designing in the browser should be easy. If a computer can do it, you shouldn't have to.
Runs on Postcss
A flexible plugin framework for post-processing css. View on Github
Base classes are mobile by default. Can be overridden by namespaced classes targeting larger breakpoints.
Small css modules for debugging stacking and layout issues. Can easily be turned on or off during development.
Construct anything from complex layouts to responsive components with a series of single purpose classes.
Cohesive design system
Scale based on the powers of two. Starting at .25
Infinitely nestable. Fully fluid. Extremely light-weight.
Customize, or extend
Tachyons is meant to be edited and customized to meet the needs of your product. It's just css. It isn't precious. Don't be afraid to change: class names, media queries, breakpoints, or values.
Here’s why I think designing systems with tools/frameworks like Tachyons is a Good Idea™. Design Systems break as they scale (either scaling org or scaling product) because new components/variants of a component are introduced. Those variants sometimes (read: often) go undocumented, leading to duplication when that component/variant is needed (and created) again. Even when the component is documented, documenting effectively often means dozens/hundreds of instances to capture all states/variants.
Systems like Tachyons et al approach this problem by instead documenting and limiting *properties* of components. (I like to think of this as “subatomic” design.) You then create components by composing subatomic components (properties). Rather than creating a component and its variants, you simply have a comprehensive list of “ingredient” subatomic components. Those subatomic components can be combined in thousands of ways to create hundreds of components. The properties of those components are numerous, but constrained to a set of acceptable values (our subatomic components).
After I embraced the “lots of little classes” way of styling, my anger at CSS almost completely went away and I was much more easily able to style and modify a design... you really have to try it.
It turns out composing utilities together like that is a really nice way to style things. Adam Morse has taken this to its logical conclusion with Tachyons...
It seems silly at first to write code that looks like inline HTML styling but Tachyons works. Instead of wasting time hunting down and dealing with CSS overrides, I now spend time iterating on the design... which is what we're supposed to be doing in the first place :)
I’ve found extremely low-level “frameworks” like BassCSS and Tachyons useful recently. They let you do the whole “just add and remove classes to create elements” thing but also don’t lock you into the constraints and issues of higher level frameworks like Bootstrap.
CSS frameworks shouldn't be one-size-fits-all. Tachyons nails it with its modular approach, eliminating bloat from day one.
Tachyons nails everything you need from a CSS framework. Development goes faster, designs are more consistent, and best of all it’s a ton of fun to play with.
I never understood how people did font ratios and table layouts nicely with CSS until @mrmrs showed me the light.
Tachyons enabled the aboutLife team to more easily reason about, debug, and change visual styles all while thinking _less_ about CSS. We’re able to achieve our desired designs more quickly than ever before.
The main tachyons repo is just a group of of encapsulated css modules available on npm and github. You can grab the entire toolkit, or just a few selected modules. Mix and match them to suit your project's specific needs. Since tachyons modules are very focused on doing one thing well, most of them are extremely small (well under a kilobyte) so you can start using some or all of them without adding bloat to your css.
npm install --save-dev tachyons-module-name