Category: TypeScript

Introduction to WebAssembly

WebAssembly is an emerging standard for a low-level assembly-like language in a compact binary format that runs with near-native performance, and is available as a compilation target for a variety of languages. We’ve heard significant misunderstanding around WebAssembly and what it means for the web and JavaScript.

Read More »

TSConf: The First TypeScript Conference

In case you missed it, SitePen was the presenting sponsor of the inaugural TSConf which took place in Seattle on March 12, 2018! The Backstory In 2017, we met the TypeScript team in person after years of being avid members and contributors to the TypeScript project. We asked them when the first TypeScript conference would be and they answered with: “Do you want to do it?” SitePen, along with various members of its team, has organized community meetups, sponsored conferences

Read More »

Intern Recorder 2 now supports TypeScript, ES Modules, and Intern 4

Intern Recorder is a Chrome extension that can kickstart the process of creating functional tests for Intern. It was initially released in 2015 users of Intern authored test suites as AMD modules. Intern has changed quite a bit since then; in particular, the standard suite module format has changed from AMD modules to ES Modules and ES5 code has been replaced by ES2015+ and TypeScript. Intern Recorder was due for an update.

Read More »

Testing TypeScript with Intern 4

Intern is a popular JavaScript testing framework with an extensive feature set. While Intern has traditionally been focused on testing applications written in standard JavaScript, it has also had great support for TypeScript. With version 4, Intern has been completely rewritten in TypeScript, allowing it to provide a more seamless testing experience for TypeScript projects.

Read More »

TypeScript 2.6 and strict functions

TypeScript 2.6 was released on the 31st of October. It is a moderately sized release like many of the other of the more rapid releases from the TypeScript team over the past year. TypeScript 2.6 include a few key and interesting features.

Read More »

Common TypeScript Error Messages

Whenever you start working with a new programming language or framework, you need to learn a new collection of error messages and how to resolve them. Sometimes those messages are obvious, and others only become obvious as you gain experience with the new technology. Here we look at some of the common warnings you might find when you first start working with TypeScript, what they mean, and how to fix the errors within your source code.

Read More »

Web Frameworks: Community

This entry is part 10 of 11 in the series Choosing a JS Framework

It is like the old proverb, “It takes a village to raise a web framework.” As we explored in the previous post, choosing a framework goes beyond the technical features of a framework and this is certainly true when it comes to the wider community, which includes considerations like licensing, how open the framework is, and where to turn for education and support.

Read More »

Web Frameworks: Soundness

This entry is part 9 of 11 in the series Choosing a JS Framework

For a web framework to be effective, it should offer you more than just functionality. It doesn’t matter how much hard work you put into your application if it breaks when people use it. Beyond testing, let’s explore how frameworks can help us build better code before we test it.

Read More »

Efficient testing of Angular with Intern

Intern is an incredibly powerful and feature-rich approach to all types of JavaScript and TypeScript testing. Intern 4 is a major update refactored in TypeScript and with much improved support for modern language features and support for ESM as well as bundlers like webpack.

Read More »

Rethinking Inheritance

Over the past year we’ve been heads-down working hard on Dojo 2 and its component architecture. The ability to change default component behavior is essential to a widget library, and several tactics exist for doing so. After extensive battle testing of different viable approaches to component modification, we decided to once again equip ES6 inheritance as our primary method of extending component functionality. Here’s why.

Read More »