@cirrus@mstdn.social
@cirrus@mstdn.social avatar

cirrus

@cirrus@mstdn.social

#DesignSystems aficionado. Classically trained #webmaster. Slayer of pixels. DTCG spec editor.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

cirrus, to random
@cirrus@mstdn.social avatar

Due to all the streaming services, we had barely been using our DVDs and BluRays for a long time. So, to free up shelf space, we packed them away into boxes and put them in the loft.

Literally minutes later our broadband provider had an outage. No Netflix / Prime Video / Disney+ 🤦‍♂️

cirrus, to random
@cirrus@mstdn.social avatar

In other #DesignTokens news, Sketch recently added a direct export to DTCG files: https://www.sketch.com/updates/design-tokens/ ❤️

As one of the spec editors, I really love seeing support for the DTCG file format ( https://tr.designtokens.org/ ) appearing in tools. The dream of seamless interoperability for design tokens edges a step closer each time.

Have you made a tool / lib / thing that supports the format too? Share it with the community here: https://github.com/design-tokens/community-group/issues/211

cirrus,
@cirrus@mstdn.social avatar

@nhoizey Yup, I'm aware. Bring on Style Dictionary v4! 💪

cirrus, to random
@cirrus@mstdn.social avatar

Our #DesignSystem's #DesignToken pipeline has become more of a hydra...

Figma vars & styles
|
+-> DTCG file
|
+-> CSS custom properties
+-> CSS utility classes
+-> Storybook stories for util classes
+-> TS code
+-> TS interface

...and there's more to come: React Native components, docs, etc.

Also, longterm I want to make Figma an output from the DTCG file (or have some kind of 2 way sync), rather than it being the source.

zachleat, (edited ) to random
@zachleat@zachleat.com avatar

google.com search results (on a desktop web browser) have a horizontal scrollbar < 1162px viewport width and don’t use responsive design.

Sometimes the biggest web properties in the world make decisions with a completely different set of priorities, goals, budget (etc.) and those decisions wouldn’t make sense to apply to your project (with your own goals, team, and tech stack).

Their best practices are not your best practices!

cirrus,
@cirrus@mstdn.social avatar

@zachleat ...because who would ever resize their browser window? That would be madness! 🙄

DavidDarnes, to random
@DavidDarnes@mastodon.design avatar

Does anyone have any #WebComponents “gotchas” that they wish they knew when getting into them?

cirrus,
@cirrus@mstdn.social avatar

@DavidDarnes Yes: Despite what https://custom-elements-everywhere.com says, compatibility with Angular is not great. While custom elements will work when you set CUSTOM_ELEMENTS_SCHEMA, it also disables type checking (and IDE autocomplete) for your Angular templates. So the developer experience is seriously degraded. See: https://manuel-rauber.com/2021/02/23/youre-using-custom_elements_schema-wrong/

That's totally an Angular problem, and not the fault of web components. But if, like me, your motivation is to build a bunch of UI components once and have them...

cirrus,
@cirrus@mstdn.social avatar

@DavidDarnes ...run anywhere, then it's good to be aware of framework limitations like that up front.

cirrus, to webdev
@cirrus@mstdn.social avatar

Started writing a decision log for our #DesignSystem. Documenting why we chose to build plain ol' #HTML and #CSS where we can and #WebComponents where client-side #JS is needed is turning into a bit of a manifesto. Essentially we're using (and encouraging others to use) #ProgressiveEnhancement 😉

cirrus, to random
@cirrus@mstdn.social avatar

Spent this afternoon wrangling NPM dependencies in our #DesignSystem's monorepo. Managed to nuke a few and also eliminate all the vulnerable package versions being reported by npm audit.

I am so ready for the weekend!

cirrus, to random
@cirrus@mstdn.social avatar

Just prepping a few props for a #DesignSystem demo I'm doing at work tomorrow. 😅

heydon, to random
@heydon@front-end.social avatar

I think Angular users may even be worse than React users, on the whole, for using the wrong markup for stuff. Looking at a page with background images on &lt;div&gt;s instead of, well, images and a form made out of &lt;li&gt; and &lt;a&gt; elements with button roles instead of checkboxes and radios. Oh and not even in a &lt;form&gt; element, just a &lt;div&gt;.

cirrus,
@cirrus@mstdn.social avatar

@heydon Yup. ...and don't even get me started on the faux web-component elements and weird ng* attributes that Angular spews out into the DOM as well.

slightlyoff, to random
@slightlyoff@toot.cafe avatar

MSFT words I have to unpack in every meeting:

  • "ask" == "request"
  • "inbox" == "include"
  • "double click" == "discuss in detail"
  • "learnings" == "lessons"
  • "delighter" == "feature" (apologies to Kano)
cirrus,
@cirrus@mstdn.social avatar

@dletorey @slightlyoff @zachleat I think there are some valuable learnings here that we should socialize with the team at the next town hall.

cirrus, to javascript
@cirrus@mstdn.social avatar

Grumble. is doing my head in. Why do Angular packages create a new package.json in the dist folder and expect you to cd into there before running npm publish?!?!

I have a monorepo with lots of other non-Angular packages. I use Changesets to manage versioning and releases.

Now, because Angular can't just use npm like it's meant to be used, I'm stuck.

cirrus,
@cirrus@mstdn.social avatar

@shaknais Unfortunately, I don't think that'll help in my case.

mikemai2awesome, to CSS
@mikemai2awesome@mastodon.social avatar

This is the way.

@ media (hover: hover)  
 a:hover { ... }  
}  

#a11y #WebDev

cirrus,
@cirrus@mstdn.social avatar

@mikemai2awesome I'm curious why that is. Does this avoid a first tap activating a faux hover state on touch devices or something like that?

cirrus,
@cirrus@mstdn.social avatar

@mikemai2awesome Got it, thanks.

This is the way.

cirrus, to typescript
@cirrus@mstdn.social avatar

Been going down a rabbit hole today trying to get #Lit, #TypeScript, #CustomElement manifests and #Storybook to all hold hands and sing kumbaya.

Send help.

How's your day going?

cirrus, to javascript
@cirrus@mstdn.social avatar

Every day is #JS Naked Day on my site: https://cirrus.twiddles.com/ 😜

More info: https://js-naked-day.org/

mattwilcox, to random
@mattwilcox@mstdn.social avatar

Genuine question, because I'm starting to second guess myself.

Sites like this: https://buttermax.net/

I can't use them, and I ... I'm not sure why. I have no idea what the site was about, I literally (somehow) did not realise you could scroll the page so missed a ton of content. My eyes bounce around and I can't focus on anything to read it.

Is it just me?

cirrus,
@cirrus@mstdn.social avatar

@mattwilcox I'd say that's just poor usability. Yes, it's eye-catching but they've way overindexed on that. Classic form over function IMHO.

Took me a while to realise what their business actually is.

To be fair, a memorable first impression is probably what they're going for. But the trouble is that kinda thing gets old real fast. Even if you go "wow" the first time, when you come back for the 2nd, 3rd, nth time to just look something up, the fluff just gets in the way and slows you down.

cirrus, to webdev
@cirrus@mstdn.social avatar

Went down a rabbit hole today trying to share some CSS between a document (i.e. "light DOM") and the shadow DOMs of some #HTML custom elements (aka #WebComponents).

This article by Eisenberg Effect was super useful: https://eisenbergeffect.medium.com/

I ended up building something along similar lines, but customised for my specific needs. Needs a bit of polish, but it works.

It really shouldn't be that hard to do though. Really hope a native way to do this ends up in the #web platform someday.

sturobson, to random
@sturobson@front-end.social avatar

If you had Philip’s hue and were going to watch Alien with your teenage youngling this evening what colour would you set the lights?

Dark green, right?

cirrus,
@cirrus@mstdn.social avatar

@sturobson Maybe turn the lights off completely?

cirrus, to random
@cirrus@mstdn.social avatar

I know it's been done a million times (incl. a few by my past self), but it still feels like magic when demoing a #DesignToken pipeline.

In our case, the demo was:

  • Static HTML, React & Angular web apps are all open in browser windows, displaying some of p
    our #DesignSystem components
  • An Android emulator running a React Native app, also using DS components, is open too.
  • I open a Figma library, edit the color of a variable
    ...
cirrus,
@cirrus@mstdn.social avatar

...

  • I use the Tokens Brücke Figma plugin to save out the variables as a DTCG file in our #DesignSystem's git repo
  • I run an npm command to rebuild our themes from the updated DTCG file
  • Seconds later all browser windows and the Android app auto-refresh and the color of the buttons has changed 🤘
cirrus, to random
@cirrus@mstdn.social avatar

Current status:

cirrus,
@cirrus@mstdn.social avatar

@sturobson Yeah, I should've said "Permanent status:"

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • mdbf
  • ngwrru68w68
  • cubers
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • InstantRegret
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • megavids
  • tacticalgear
  • osvaldo12
  • normalnudes
  • tester
  • cisconetworking
  • everett
  • GTA5RPClips
  • ethstaker
  • anitta
  • Leos
  • provamag3
  • modclub
  • lostlight
  • All magazines