Here's a list of technologies that we prefer to use based on this scale:
Experimental - We're still playing around with this, and we feel very optimistic about it. Try it out!
Recommended - We'd use this hotness on all projects if we can!
Good - It's still a good choice, but consider better solutions for newer projects.
Sunsetting - We maintain projects with these, but don't start new projects with this anymore.
Avoid - Our poor experience with this tell us to stay away unless absolutely necessary.
RSCSS
A very sane solution to making sense of CSS for large-scale projects. RSCSS makes a lot of sense, and is being used in many of our projects.
BEM
BEM (Block-element-modifier) is quite popular, but is overly-verbose. Consider RSCSS instead, which is a lighter alternative to BEM with a cleaner syntax.
React
Yep.
No frameworks
Vanilla ftw!
Elm
We're still playing around with this.
Bootstrap
Overly-reliant on jQuery, avoid this.
jQuery
Nope.
Figma
Good cross-platform alternative to Sketch. Works in Mac, Windows and Linux. Comes with many collaboration features. Free!
Sketch
Gold standard of design tools, but we prefer Figma for its collaboration features.
Photoshop
Good, but avoid it for UI work.
npm registry
Get your frontend JS/CSS packages via npm packages. Works with Webpack!
rails-assets.org
Avoid this. Unreliable at times, and Bower is now deprecated. Use the npm registry instead.
/vendor/javascript
Avoid putting external JS in the repos, use npm packages instead!