The Ember Times - Issue No. 174
šĀ Emberistas! š¹ Podcast on native apps and Ember, keep up with the latest in template linting with the Tailwind CSS linter, release of ember-browser-services, and real-world Ember roundup.
Building native apps with Ember.jsĀ šļø
The firstĀ Ember Report podcastĀ isĀ live! You can find it on all the podcast platforms, likeĀ SpotifyĀ andĀ Apple Podcasts.Ā Kenneth Larsen (@kennethlarsen)Ā andĀ Jan Butschen (@buschtoens)Ā tell you all about the ins and outs of building native apps with Ember.js. Kenneth asks all the critical questions, you as a listener might have, and Jan shares his expertise on how they embedded their Ember.js app inĀ Capacitor, the successor toĀ Cordova.
With practical examples and a ton of show notes, this podcast will get you started in the world of native apps as an Ember developer. From discussing the technology and the developer experience to discussing the future of native apps vs PWAās, theyāve got you covered.
Rediscover class sanity with Tailwind CSS linter for Ember templates v2.xĀ š¬
Know what's cool? Respectful, emotionally responsible pull request reviews! A great way to do that is with linting tools to let the computer gently push collaborators towards codebase consistency instead of having to enforce standards through comments and suggestions.
Ember has a wonderful suite of linting tools and hot off the presses is the chill plugin forĀ ember-template-lintĀ for all of thoseĀ Tailwind CSSĀ users out there, v2.x ofĀ ember-template-lint-plugin-tailwindcss!
Tailwind classes can become quite verboseĀ so it can be nice to encourage some standards for how so many classes can be cleanly added to the DOM. This latest version of the linter gives maintainers full control ofĀ class ordering and when line breaks should occurĀ (both forĀ classes per lineĀ and optionally byĀ class grouping).
Release of ember-browser-servicesĀ āļø
TheĀ ember-browser-servicesĀ addon is officially released! The addon provides a collection ofĀ Ember ServicesĀ that allow for consistent interaction with browser APIs. This provides consistent interaction with browser APIs and easier testing.
For tests, you can stub out the Ember Service from ember-browser-services with your own implementation in order to verify the behavior you were testing. Any changes to a service's implementation during a test are discarded after the test finishes, thereās even a shorthand way of doing so using theĀ setupBrowserFakes
Ā export.
Try outĀ ember-browser-servicesĀ today by checking out their code on GitHub!
Real-world Ember roundupĀ š
The blog postĀ Track performance of your web application with JavaScriptĀ discusses howĀ Forest AdminĀ used JavaScript'sĀ Performance APIĀ to implement tracking of app load time in their Ember web app. They're also monitoring the time of requests made by customers on their admin backend. They've implemented the functionality of react-addons-perf (now deprecated in React 16) in Ember. Check out the article for implementation details to track performance, with the goal of improving the user experience.
Have you been missing meetups since the pandemic? Looking for some pre-EmberConf talks for learning and inspiration? Mark your calendar's forĀ Ember LA'sĀ VirtualĀ March Meetup. This month,Ā Ava Gaiety Wroten (@hergaiety)Ā will be giving a presentation calledĀ Achieving A11y Automation Testing, about an Ember success story with lessons that can be applied to any framework or project. Folks from anywhere are encouraged to attend! P.S. Feel free to submit a talkĀ š, anything from a five minute lightning talk to a full-length presentation is welcome.
Contributors' cornerĀ š
This week we'd like to thankĀ Ava Gaiety Wroten (@hergaiety),Ā Melanie Sumner (@MelSumner),Ā Igor Terzic (@igorT),Ā Andrey Mikhaylov (lolmaus) (@lolmaus),Ā Matthew Edwards (@wondersloth),Ā Cristin O'Connor (@cnocon),Ā Charles Pierce (@charlespierce),Ā Matthew Beale (@mixonic),Ā Ricardo Mendes (@locks),Ā Pat O'Callaghan (@patocallaghan),Ā Sam Van Campenhout (@Windvis),Ā Sabin Hertanu (@herzzanu),Ā Chris Manson (@mansona),Ā Bert De Block (@bertdeblock),Ā Katie Gengler (@kategengler),Ā Ben Demboski (@bendemboski),Ā Brenden Palmer (@brendenpalmer),Ā Kelly Selden (@kellyselden),Ā Jeff Daley (@jeffdaley),Ā James C. Davis (@jamescdavis),Ā Zhan Wang (@zhanwang626),Ā Christopher Gammie (@lindyhopchris),Ā Raido Kuli (@raido),Ā Thomas Wang (@xg-wang),Ā Travis Hoover (@thoov),Ā Andrew A Lee (@drewlee),Ā Vadim Kazakov (@yads),Ā Isaac Lee (@ijlee2),Ā Peter Wagenet (@wagenet),Ā Bouke Haarsma (@Bouke),Ā Godfrey Chan (@chancancode),Ā Chris Garrett (@pzuraq),Ā Chris Ng (@chrisrng),Ā Robert Wagner (@rwwagner90),Ā Amy Lam (@amyrlam),Ā Anne-Greeth van Herwijnen (@MinThaMie),Ā Jared Galanis (@jaredgalanis),Ā Nick Schot (@nickschot),Ā Edward Faulkner (@ef4),Ā @NullVoxPopuli, andĀ Robert Jackson (@rwjblue)Ā for their contributions to Ember and related repositories!Ā š
Connect with usĀ š¤
Wondering about something related to Ember, Ember Data, Glimmer, or addons in the Ember ecosystem, but don't know where to ask? Readersā Questions are just for you!
Submit your ownĀ short and sweetĀ questionĀ underĀ bit.ly/ask-ember-core. And donāt worry, there are no silly questions, we appreciate them all - promise!Ā š¤
Want to write for the Ember Times? Have a suggestion for next week's issue? Join us atĀ #support-ember-timesĀ on theĀ Ember Community DiscordĀ or ping usĀ @embertimesĀ on Twitter.
Keep on top of what's been going on in Emberland this week by subscribing to ourĀ e-mail newsletter! You can also find our posts on theĀ Ember blog. See you in two weeks!
That's another wrap!Ā āØ
Be kind,
Anne-Greeth van Herwijnen, Ava Wroten, Chris Ng, Amy Lam, and the Learning Team