When comparing Stylus vs OneTab, the Slant community recommends OneTab for most people. In the question“What are the best Chrome add-ons?” OneTab is ranked 4th while Stylus is ranked 24th. The most important reason people chose OneTab is:
It takes all of your tabs (choose between all/all-except-current/current/all-to-right/all-to-left) and turns them into links in a special OneTab tab where you can further manage your tabs by dividing them into groups, removing duplicates and securing them so that they can't be removed unless unsecured.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Clean syntax
Stylus has an extremely terse syntax. Colons, semicons and braces are all optional allowing you to write Stylus code however you want.
hover-darken(percent)
if @background
&:hover
background: darken(@background, percent)
.test
background: blue
hover-darken(50%)
The hierarchy is required to be whitespace indented which makes it easier to identify which parent selectors child selectors belong to.
Pro Powerful feature set
Not only does Stylus support all the features from Less and Sass, it provides features not found anywhere else:
- You can get properties from parents and pull them into children and/or mixins - if the property isn't found, it will bubble up until it finds a match
- Introspective API, where a CSS block can tell if it’s at root level or not and change its output based on this
- Splats - taking variable amount of arguments in as an array
- Automatically vendor prefixes @keyframes
- Pass a CSS literal block wherever you want
- Convert files to base64
Pro Transparent mixins
One of Stylus' distinguishing features is transparent mixins: reusuable, possibly dynamic styles that look exactly like native CSS properties. This is particularly useful for using future non-prefixed properties and having them transparently expand to their prefixed counterparts without any special, preprocessor-specific syntax.
Pro Easy to integrate in projects already using npm
Stylus runs on node.js which makes it very easy to integrate into your project if you're using npm.
Pro Powerful @extend support
@extend gives inheritance and unlike for other preprocessors, you can pass any CSS selector, not just classes.
Pro Awesome error reporting
Stylus has clear and detailed error reporting that includes stack traces and line numbers.
Pro Lots of mixin libraries
Nib is Stylus's answer to Compass, but with the advantage of transparent mixins.
Ride css add dozens of useful mixins to Stylus. Compatible with axis, nib and other mixins libraries.
Roots is a awesome toolkit that contains a CSS library for Stylus that provides the benefits of Nib and more. It is essentially a collection of mixins that add a variety of enhancements to the Stylus workflow.
Pro Convert files to base64
Stylus can also convert files to base64 which provides the following advantages:
- Easier to maintain
- Gives you the cleanliness of a URL link resource as well the benefits of base64 encoding
- Reducing the number of requests
Pro Easier to learn than some of its competitors
Pro Can do rgba(#hex, alpha)
Pro Great documentation
Pro Large set of built-in functions
Functions like max(), min(), sum(), all collour handling functions are all there.
Pro It has the biggest feature set. Can do more then less or sass
Pro Overall very useful
It takes all of your tabs (choose between all/all-except-current/current/all-to-right/all-to-left) and turns them into links in a special OneTab tab where you can further manage your tabs by dividing them into groups, removing duplicates and securing them so that they can't be removed unless unsecured.
Pro You can organize links by dragging and dropping them
You can drag and drop links/tabs to reorder them by relevance, or to move them from one list to another.
Pro Non-invasive
The OneTab dashboard only appears the first time you open your browser after quitting, although you can also make it appear through the extension button in the extensions bar. This is less invasive behavior than the Chrome extensions that appear every time you open a new browser tab.
Pro Provides just enough information
OneTab provides just the right amount of meta-info about the tabs you've saved. It groups them by session, and tells you how many tabs are in each session, as well as the date the session was created. Every saved tab includes the bookmarked favicon and page title.
Pro Management & sharing of saved sessions
OneTab makes it very easy to restore, delete, share, lock, rename, and favorite your saved tab sessions. OneTab also makes it easy to share, export and import URLs into your OneTab dashboard as a whole.
Cons
Con Not under active development
Development of stylus has stagnated, there are lots of known bugs and it does not work well newer features like CSS Grid or custom poperties. See https://github.com/stylus/stylus/issues
Con Ambiguous syntax
The Stylus syntax is very loose and that leads to ambiguity where some definitions can mean different things. For example, hashed objects cannot be used when you choose to omit colons in your definitions, because the dot notated object getters could also be a nested class selector. As a result, you lose being able to use hashed object getters if you decided to write Stylus without colons.
Con Community is weak, feels more like a pet project
Con Not as popular as Less and Sass
Stylus is younger than both Less and Sass, and not yet at the same level of popularity. As a result, Stylus currently has a smaller and less active community than the two more popular options.
Con Inconsistent style/flavour in different projects
Due to having such a loose syntax, the coding style can vary between different Stylus projects, making it hard to apply styles from other projects that use a different syntax style — at least if you care for consistency.
Con Heavily reliant on whitespaces
Stylus relies heavily on whitespaces to separate and define code blocks. While this makes for a cleaner syntax, it's also easier to make mistakes when indenting stuff, especially when working with someone else's code where you don't use the same style of indentation.
Con Can get messy
The OneTab tab has everything in a list format with just simple headings describing what you have in this or that list. It isn't comfortable to manage it when you have quite a lot of tabs in there.
Con Slightly confusing UX
It's easy to forget that clicking on the OneTab button in the extensions bar doesn't show you options – it saves your current session by closing all your tabs in the given browser window. That might be slightly annoying if you were trying to access the OneTab dashboard or view OneTab options instead of trying to save your current session in OneTab, but this is only a minor inconvenience given how easy it is to restore your session.
Con Clicking on a tab/link to re-open it automatically deletes it from a session
This is not so much a con as much as it is a heads up for those who use OneTab as a form of transient digital bookmarking (like me!). When you click on a tab/link in any given OneTab session, that will cause it to disappear from the list of tabs in that section. It would be nice if there was an interim period or separate place where the link is still visible/accessible. That or it would be nice to have a version history of past closed tabs/links and sessions.
Con Data loss
When you run ccleaner or CleanMyMac, all OneTab data may vanish.