Issue No 24

The default Skrift banner

Extracting High Contrast Colors from Images

Making a delightful experience for content editors is one of the primary functions of Umbraco. With that in mind, Anders teaches us how to pull the primary colors from images and use a custom property editor to select which colors to use on their pages straight from the back office.

The default Skrift banner

Food and Friction

The websites we create can cause unintended consequences for our users, as some may encounter points of friction from barriers and setbacks that we may be unaware of from our own life experience. Kyle shares his recent challenges with eating, and how that has made him more thoughtful about the human cost of decisions we make with our code and design.

Issue No 23

The default Skrift banner

Seek and Ye Shall Find

Ismail has a good deal of experience with Examine and Umbraco's search and is partnering up with Umbraco HQ to provide the new Umbraco Examine course. In this article he shares his history with Umbraco and Examine, and what you can learn about in the upcoming course.

The default Skrift banner

AMP up your Website with Umbraco

40% of people will abandon a website that takes more than three seconds to load. That could be a lot of missed conversions for your company or client! Google's Accelerated Mobile Pages (AMP) can help with that, and Alex Vilmur is here to help us get up to speed with AMP.

Issue No 22

The default Skrift banner

Diversity in tech communities

The Umbraco community, with its tight-knit nature, can be fairly intimidating at first glance for those on the outside looking in. But as Carole learned last year in her first CodeGarden attendance the community is great once you give it a chance, and she's here with advice on how to break the ice and get involved, and for veterans on how to approach newbies looking to join.

The default Skrift banner

Strongly typed models in the Umbraco Grid

The grid, one of our favorite tools, gets better by making it beautifully strongly typed, more extensible, and incredibly searchable. Anders is here to walk us through how to set up our models, render them, extend them, and use them with Examine.

Issue No 21

The default Skrift banner

Why Community Matters When Planning an Umbraco Festival

As the force behind the Umbraco UK and Umbraco Poland festivals, The Cogworks has learned a lot about what is needed to run an Umbraco Festival. Their very own Sam Bailey shares their experiences in running festivals, the role of community in them, and gives advice for those looking to operate their own.

The default Skrift banner

Make 2017 Great by Attending a Festival!

It's a new year, and that means a new round of festivals to plan on attending. Erica walks us through why festivals are important, how you benefit from attending them, and tips on how to convince your boss to send you (or why you should send yourself!).

Issue No 20

The default Skrift banner

Building Umbraco Websites with Archetype Widgets and Ditto

Umbraco lets us build sites virtually any way we please, which can be both a blessing and a curse with an overwhelming range of choices. Nicholas is here to help with a technique he thinks virtually everybody can make use of: making websites with widgets using Archetype and Ditto.

The default Skrift banner

Creating A UI Layer For Custom Content With UI-O-Matic 2

The simplicity of Umbraco's backoffice UI can be quickly lost when we step outside of standard website content and into custom territory and "bespoke" development where inconsistent Bootstrap-based UIs and buggy editors raise their ugly heads. Thankfully, UI-O-Matic, now at version 2.0, is here to help, with Matt showing how we can all save us from ourselves.

Issue No 19

The default Skrift banner

Segmented A/B testing in Umbraco

Adding personalisation to your site can be hard, creating an obstacle of time and money that keep many from attempting it. Ondrej walks us through some of the difficulties and shows us how to quickly set up A/B testing in Umbraco-hosted sites using Personalisation Groups and uSplit.

The default Skrift banner

How to Quickly Add eCommerce to Your Existing Website

Adding an eCommerce store to an Umbraco website has become even easier thanks to FastTrack, a starter kit for Merchello, the open source ecommerce solution. Lee Messenger takes us through the steps to get a store quickly up and running using these two packages.

Issue No 18

The default Skrift banner

Add Your Own Icons to Umbraco, Automatically

Importing custom icons into the Umbraco backoffice isn't difficult, but updating your icon fonts can be a tedious procedure. Søren shows us how to use the Gulp task runner to do the heavy lifting when creating and maintaining your custom icon fonts.

Issue No 17

The default Skrift banner

Decluttering Your Remote Work Life

Working remote can seem like a dream to a cubicle coder. No commute. No pants. No boss over your shoulder. But when you work where you live, your "office" and your life can become a cluttered mess. Janae gives practical advice on how to declutter your remote work life in order to safeguard both your productivity and sanity.

The default Skrift banner

Stop Mapping, Start Adapting

Lars-Erik thinks developers might be too addicted to mapping content to view models, creating headaches in the process that we could avoid by using the adapter pattern instead. Follow along as he makes his case, showing how we can use adapters and stop mapping in Umbraco.

Issue No 16

The default Skrift banner

Sections and Trees in Umbraco 7

Sometimes a project's Umbraco back office requires a good deal of extra functionality. So much so that you'd like it to have its own section. But how? Anders walks us through adding custom sections and trees step by step, with a little help from some familiar Umbraco animals.

Issue No 15

The default Skrift banner

How to Get Started with #webperf

Optimizing your site's web performance can be intimidating and sounds difficult. But as Matt shows us, there's several techniques that you and your organization can start implementing today to improve performance and make a faster, better web.

The default Skrift banner

Umbraco Migrations Viewer: My First Step Into Package Creation

Umbraco Migrations aren't new, but since v7.3.0 custom migrations have allowed for more exciting use of them. Follow along as Jamie describes how fellow Umbraco community members inspired and helped him in the creation of his Umbraco Migrations Viewer package to track custom migrations without logging into a server.

Issue No 14

The default Skrift banner

The Real Value of Open Source

For some potential clients, the perception can exist that open source software's value is as low as its free price. Andy helps turn around that misunderstanding by describe the real source of value in products like Umbraco to clients.

Issue No 13

The default Skrift banner

Bulletproof Interface Deserialization in Json.NET

Deserialization is hard, with a lot of tricky situations that can arise. Nicholas Westerby has walked through this dark land and faced its dangers firsthand, and fortunately for us he's willing to share the techniques he used to defeat the deserialization beast.

The default Skrift banner

Unit Testing Umbraco - Plausible

Third party solutions can make unit testing a painful experience for any developer. Umbraco is no different in this regard. But thanks to Umbraco's open source nature, there are some less restrictive solutions available than in many other projects, and Sam Sussman shows us how to make them.

Issue No 12.5

The default Skrift banner

uWestFest Reviewed: An American Perspective

From boots on the ground in San Diego, to the pre-party, and summaries of the sessions she attended, Kendra shares with us her first experience attending uWestFest from the attendee perspective, as well as from the perspective of the coordinating organization, Scandia.

Issue No 12

The default Skrift banner

Best practises can kill your work life balance

There's something about code and a life in development that makes us strive for perfection. Sometimes, however, that way of thinking just makes us miserable. Pete shares how to find peace with yourself and put aside the craft of the industry to get projects out the door and have a happier view of your own measure.

The default Skrift banner

How to Make Your Umbraco Site SEO Agency Friendly

It's no secret that many developers twitch at the thought of working with an SEO agency, and Tim won't deny it either. But what he will show you is how to painlessly set up an Umbraco site to be friendly towards these agencies and minimize their pain (and yours) when optimizing in Umbraco.

Issue No 11


Separation of Authoring & Delivery Environments

Creating an Umbraco project with separate authoring and delivery environments is no easy task. But once accomplished, it provides clients with benefits such as added security and quick recovery from a site being compromised. Thankfully, Brittany Dufort is here to walk us through the process step by step, telling us why, what, and how to set it up.

Issue No 10

The default Skrift banner

Collector of Great Moments

As we face challenges and accumulate failures, it can be easy (especially in the dark winter season) to become negative, both to ourselves and to others. Chriztian Steinmeier shares his technique for combating this mentality, by collecting his successes and speaking positively.

The default Skrift banner

Technology & Our Daughters

In the U.S., 74% of elementary girls are interested in STEM. By the end of high school, less than 1% plan on pursuing a CS career. Sydney Cole shares her experience helping establish a junior high girls robotics club, and its incredible results, illustrating the impact that STEM role models and the removal of obstacles can have.

Issue No 9

The default Skrift banner

Automating Umbraco Package Creation

Manually building a package to share your snazzy code with the Umbraco community can be a major pain. Thankfully, Tom is here in time for the holidays to show us how to automate the package process using grunt-umbraco-package.

The default Skrift banner

Skrift Spotlight: Fuji Kusaka

The Skrift Team interviews LUX* Resorts & Hotels' online development manager Fuji Kusaka about what its like being an Umbraco developer in the Indian Ocean nation of Mauritius.

Issue No 8

The default Skrift banner

Custom Property Value Converters

Kyle shows us how to make a custom property value converter, which makes it easy to implement the values from a custom property editor in the razor with strongly typed models without having to manually parse the JSON. It's easier than sacrificing a chicken and ten times more effective!

The default Skrift banner

Umbraco Upgrade Strategies

Tim runs us through some of the dos and don'ts when it comes to upgrading Umbraco sites. He offers advice on common gotchas and pitfall, advice on when to upgrade versus when to scrap and rebuild, and resources from others who've been there, done that.

Issue No 7

Issue No 6

The default Skrift banner

Surviving in the Wild as an Umbraco Lone Wolf

Many Umbracians don't work in agencies, and instead are part of companies where software isn't directly making the money. As such the team is often small, even just one person toiling all alone. Kevin teaches us how to survive as a lone Umbraco wolf.

The default Skrift banner

Selling Umbraco

You've mastered how to code in Umbraco, creating complex websites with an easy-to-use back office experience. But do you know how to sell them? Theo dives into the strategy behind selling Umbraco to clients, from one business to another.

Issue No 5


Building Blocks

Every project has a starting point, and Jeavon gives back to the Umbraco community by sharing Crumpled Dog's project structure and starting process for anyone to use.

The default Skrift banner

Automating Your Umbraco Deployments

Deploying Umbraco sites can be a pain thanks to content in the database that is outside of source control. Aaron introduces Chauffeur, an Umbraco CLI that can help automate and improve your Umbraco deployments.

Issue No 4


Keeping the Flame Alive

The assistant organizer of the London Umbraco Meetup, Ravi Motha discusses the combination of passion, hard work, and craziness that it takes to operate a meetup for the Umbraco community.


Introduction to Personalisation

Personalisation of website content is a theme Andy is hearing more and more from both his clients and in his project team conversations. Whether it be an e-commerce site looking to put the right products in front of customers or a charity looking to lead with the appropriate content for a given user persona, there's regularly a need to go beyond just a single view of content per page.

Issue No 3


Remote Control

The remote working style is not for everyone. Some of us live it, some of us desire it, and some of us are skeptical of it. Bob Baty-Barr breaks down a typical day in his life, and why it's the right fit for him.

Issue No 2


Ten Grids Later

The Grid editor is one of the biggest new features to be added to the Umbraco 7 backend, providing flexibility for content editors. As one one of the creators of the Grid editor, Antoine Giraud walks us through lessons on using the grid through the experience of developing ten client sites with it. He also shows us LePainter, a new package that provides the ability to preview Grid editor content in the backend.


Getting Supercharged With React

They say a new JavaScript is born every hour. React, by Facebook, is one of the current frameworks growing in popularity thanks to its ability to create blindingly fast dynamically bound user interfaces for large applications. Stephen Roberts breaks down the basics of using React, introduces us to Offroadcode's SuperchargedReact.NET, and provides a working demo for making your own React application that takes advantage of React's isomorphic rendering.

The default Skrift banner

Letter from the Editor: Fellowship of the U

At Skrift we can't get enough of what it means to be in a community as connected and friendly as Umbraco's. Our own Janae Cram discusses her own past struggles to find a group to belong to, and what community, especially the Umbraco community, means personally to her.

Issue No 1

Issue 1: The King Is Dead

The King is Dead... Long Live the King

Back before Umbraco 7, uComponents provided us with a cornucopia of useful datatypes and features. However, Umbraco 7's new backend ended uComponents' reign, and with it the handy tools many had come to rely upon. Dave Woestenborghs will show us that not all is lost, though, thanks to the nuPickers package and its new set of property editors.

Issue 1: No Regrets

No Regrets

The best years of our lives are spent doing work. But is the work we're doing satisfying, or are we just working for money? The most common regret people have at the end of their lives is to not have had the courage to live a life life true to themselves. Doug Robar shares his own struggle with transforming a busy life into a meaningful one, in the process sharing advice we can all learn from.