1. Assert Your Style - Testing CSS in Ember Apps

    Sometimes you really want to make sure that your web application looks good; and that it keeps doing so in the future. Automated tests are an important foundation for making your application's appearance future-proof and this may involve the integration of a screenshot-based testing tool like Percy.io or PhantomCSS.

  2. Open Source Maintenance

    People often ask us how we can handle maintaining a large number of open-source projects. In this blog post we will introduce you to some of out internal best practices we have developed or discovered to simplify and speed up working on open-source and other projects.

  3. From SPA to PWA

    Progressive Web Apps are the next level of browser based applications. While Single Page Apps (SPAs) have already meant a giant leap forward, PWAs are taking things even one step further. They offer a rich user experience that parallels what users know and expect from native apps and combine that with the benefits that browser based applications provide. In this post, we'll look at how to turn a Single Page App into a Progressive Web App.

  4. Building a PWA with Glimmer.js

    We recently set out to build a progressive web app with Glimmer.js. Instead of building it with Ember.js, which is our standard framework of choice, we wanted to see how suitable for prime-time Glimmer.js is and what we'd be able to accomplish with it. To put it short, we are really happy with how building the app went and the result that we were able to achieve. In this series of posts, we will give some insights into how we built the app, why we made particular decisions and what the result looks like.

  5. actix – a basic TCP client

    In our last post about actix we introduced you to the Rust programming language and the actix actor framework. This week we will build a basic TCP client with actix.

  6. ember-intl data loading patterns

    At simplabs we ❤️ ember-intl and use it for all our projects where translations or other localizations are needed. ember-intl is based on the native Intl APIs that were introduced in all newer browsers a while ago. Unfortunately some users are still using browsers that don't support them and this blog post will show you our preferred way to load the necessary polyfill and the associated data.

  7. actix – an actor framework for the Rust programming language

    While we mostly focus our work around [Ember.js][ember], Rails and Elixir, we sometimes experiment with other technologies for internal projects. This time we tried out Rust, and more specifically the actix actor framework. This blog post is a short intro into what we've discovered so far.

  8. Autodiscovery for the Ember.js component playground

    In our previous post about ember-freestyle we have setup a component playground for our Ember.js application. In this post we will discuss how to implement "convention over configuration" for it by automatically discovering new components and showing them in the playground.

  9. A Little Encouragement Goes a Long Way in 2018

    In May 2018, Ember Core team member Katie Gengler published Ember's 2018 Roadmap: A Call for Blog Posts. With this call-to-action she invites the community to give feedback on their hopes and wishes for Ember moving forward. In this context, I also want to share some of my own thoughts on Ember and what I'd be excited to see in its nearest future.

  10. Handling Webhooks in Phoenix

    I recently had to implement a controller, which took care of receiving and processing webhooks. The thing is, the application had to handle webhooks which often contained very different information, and they were all going to one route and one controller action. This didn't really seem to fit with my goal of keeping controller actions concise and focused. So I set out to find a better solution.

  11. Using ember-freestyle as a component playground

    A component playground is an application that you can use to test out and play around with your custom components in isolation from the rest of your project. In the React and Vue ecosystem Storybook is a quite popular project that implements such a component playground as part of your app. In the Ember ecosystem we have the ember-freestyle addon that can be used for this purpose. This blog post will show you how to install ember-freestyle in your app and how to use it to build and test components in isolation.

  12. Enginification

    We recently improved the initial load time of an Ember.js app for mobile clients, by using Ember Engines and leveraging that to lazily loaded parts of the app's code. In this blog post we're going to show how we extracted the engine out of the app and discuss some smaller issues we ran into along the way and how we solved them. So let's dive right in!