Giter VIP home page Giter VIP logo

spark-joy's Introduction

image

Easy ways to add design flair, user delight, and whimsy to your product!

Table of Contents

Web Design in 4 minutes

Keep it simple: https://jgthms.com/web-design-in-4-minutes/

UI frameworks

Spacing

More. Spacing. Please.

Double your whitespace

Layout

Typography

For speed, use System Font Stacks (incl. Segoe and Roboto)

(what are these?)

  html {
    font-family:
      system-ui,
      /* macOS 10.11-10.12 */ -apple-system,
      /* Windows 6+ */ Segoe UI,
      /* Android 4+ */ Roboto,
      /* Ubuntu 10.10+ */ Ubuntu,
      /* Gnome 3+ */ Cantarell,
      /* KDE Plasma 5+ */ Noto Sans,
      /* fallback */ sans-serif,
      /* macOS emoji */ "Apple Color Emoji",
      /* Windows emoji */ "Segoe UI Emoji",
      /* Windows emoji */ "Segoe UI Symbol",
      /* Linux emoji */ "Noto Color Emoji";
  }
  code, kbd, pre, samp {
    font-family:
      /* macOS 10.10+ */ Menlo,
      /* Windows 6+ */ Consolas,
      /* Android 4+ */ Roboto Mono,
      /* Ubuntu 10.10+ */ Ubuntu Monospace,
      /* KDE Plasma 5+ */ Noto Mono,
      /* KDE Plasma 4+ */ Oxygen Mono,
      /* Linux/OpenOffice fallback */ Liberation Mono,
      /* fallback */ monospace;
  }
Premium fonts and some examples

you can learn more about proofing premium fonts here https://www.typography.com/blog/text-for-proofing-fonts

Font-size things you might try:

Note: vw has known a11y issues: Preserve Zooming. Sara Soueidan recommends wrapping with calc, e.g. font-size: calc(16px + .3vw);

You may wish to use max-width: 60ch on content. Note on the ch unit not being EXACTLY 60 chars

Color Picking

Pick a primary color to match your personality:

  • Blue: safe, familiar
  • Gold: expensive, sophisticated (Examples)
  • Pink: fun, not so serious

You can also have a grey for secondary content, and lighter grey for tertiary content.

Don't use system default/named colors, too brutal. Soften it a bit.

Example blueish palette
  • Black: #1d1d1d.
  • purple: #b066ff;
  • blue: #203447;
  • lightblue: #1f4662;
  • blue2: #1C2F40;
  • yellow: #ffc600;
  • pink: #EB4471;
  • white: #d7d7d7;
Use generic names if you want it swappable for dark mode. Example [yellowish palette](https://codepen.io/oliviale/full/XyqQYL):
  • primary-light: #FFD151 mustard
  • primary-dark: #FFAE03 UCLA gold
  • secondary-success: #20A39E light sea green
  • secondary-warning: #EF5B5B sunset orange
  • secondary-info: #08D377 dark cerulean
  • grays: #E8E9E9, #D1D3D4, #BABDBF, #808488, #666A6D, #4D5052, #333537, #1C1D1E

One liner dark mode (careful about perf!): filter: invert(100%) hue-rotate(180deg);

But here are tools to help generate palettes:

Color knowledge

Not tools but still important so here they are

Icons and Favicons

Favicons

Don't forget them!

Icons

premium/paid icons

Graphics and SVG Illustrations

Hipster Logo Generator? any others?

Diagramming - when describing something prefer pictures over words. Make pictures.

Backend entity/ ERD /SQL diagramming

Mocking your browser/phone

Illustrations

DIY Graphic Design

Stock Photos and Videos

Avatars

Pure CSS

MAKE SURE TO CHECK OUT https://components.ai

Pure CSS Tricks

border-radius: 50px;
background: #f3d2c3;
box-shadow:  20px 20px 22px #cfb3a6, 
             -20px -20px 22px #fff2e0;

SVG/Canvas Masking

Background Gradients and Patterns

Not just for background backgrounds - applying gradients and background images to text is super underrated. Examples:

Background Gradients

background-image: linear-gradient(
  120deg,
  hsl(200 50% 90%) 0%,
  hsl(200 100% 90%) 100%
);

Background Patterns

Misc Backgroundy Stuff

Spinners

Animations & Transitions

Animating Individual Elements

Styling Forms

Sound

Lightweight Charts/Dataviz

Misc Weird fun stuff

Design Software

Canvas

Page Transitions

WebGL

ThreeJS

React

Simple Animation

Page transitions

Nice React Components

Fun React UI frameworks

  • Arwes - Futuristic Sci-Fi and Cyberpunk Graphical User Interface Framework for Web Apps https://arwes.dev/

Toasting

Gamification

Icons

Video

Onboarding

Misc Genres (Handwriting, Pixel, ASCII styles)

RoughJS Tools

Pixel Art

ASCII Art

Other Lists like this one

Helpful podcasts and talks

  • How do I learn design? (CodeNewbie)
  • Design foundations for developers (Syntax)
  • Design tips for developers (Syntax)
  • Tactical design advice for developers (The Changelog)
  • UI Design for Developers (Meng To)
  • Learning How to Design (ShopTalk)
  • Simple Layout checklist
    • Clear idea of purpose, target audience, where/how long it will be seen
    • Information hierarchy (vary size, contrast, position)
    • Clear visual structure - pick the most suitable way to group elements
    • Space - leave enough whitespace. Too much > too little
    • Alignment - use as few lines as possible
  • Steve Schoger - little details of visual ui design
    • add a bit of color to your greys
    • saturate greys when using a colored background
    • consider temp when saturating greys
    • use a consistent corner radius
    • use consistent icon set
    • use font size to emphasize impt info
    • use color to create a hierarchy
    • use consistent spacing scale
    • use color to draw attention
    • offset box-shadows
    • easy on the link styles
    • use contrast to create balance
    • pick an appropriate line height
    • use alignment to clean up your design
    • give actions hierarchy
    • consider spacing instead of borders
    • use color to create depth and hierarchy
    • use good fonts
  • Buffer Design tips
    • Color: emotion, personality
    • Balance: symmetry, asymmetry
    • Lines: straight lines for harmony, curved for movement. guide the eyes
    • Typography: 3 max, san-serif for web, kerning for headlines
    • Add Contrast with shapes, color, element sizes
    • Scale: size elemnts differently to draw attention or demonstrate concept
    • Proximity: group related items together. connect colors, fonts, shapes
    • Hierarchy: most impt elements first
    • Repetition: consistency of fonts, colors, logos
    • Direction: F, E, Z pattern. Put key info in left
    • Space: use space to amplify other objects
  • Refactoring UI
    • Starting from Scratch
      • Choose a personality
      • Don't design too much
      • Detail comes later
    • Hierarchy
      • Size isn't everything
      • Emphasize by de-emphasizing
    • Layout and Spacing
      • Establish a spacing/sizing system
    • Designing Text
      • Keep your line length in check
    • Working with Color
      • Ditch hex for HSL
    • Creating Depth
      • (to be continued)
    • Emulate a light source
      • (to be continued)
    • Working with Images
      • (to be continued)
    • Finishing Touches
      • (to be continued)
  • Tracy Osborn Checklist
    • Reduce Clutter
      • use ColourLovers for color palettes
      • Fonts - max 2. Use fancy fonts sparingly
      • more whitespace
      • break up walls of text with bullet points
      • big clear CTA buttons
    • Headlines: talk benefits not details. short.
  • Design Details: Principles of Design - Design Details' most downloaded episode of all time!
  • 7 Rules for Creating Gorgeous UI
    • Light comes from the sky
    • Black and white first
    • Double your whitespace
    • Learn the methods of overlaying text on images
    • Make text pop — and un-pop
    • Use only good fonts
    • Steal like an artist

More Free Stuff

Narratives

Interaction/Design Inspo

spark-joy's People

Contributors

swyxio avatar sw-yx avatar panabee avatar eriectanijaya avatar dance2die avatar ajbinky avatar brianlovin avatar erikdkennedy avatar jerodsanto avatar joshk2 avatar luizcieslak avatar melanieseltzer avatar patrickojeh avatar hasparus avatar sh4hids avatar thosil avatar wgao19 avatar montylounge avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.