Category: TypeScript

  • Add CarPlay to your React Native App

    Add CarPlay to your React Native App

    Tom Dye | April 8, 2021

    What is CarPlay? CarPlay is an Apple car integration standard that allows you to display content from your iPhone onto your compatible car head unit and control your phone. Common uses for this include casting music from services such as Spotify or Apple Music or for trip navigation using a map application.

    Read More
  • What’s new in TypeScript 4.0?

    What’s new in TypeScript 4.0?

    Sam Menza | September 29, 2020

    The recent release of TypeScript 4.0 offers a smorgasbord of improvements including improvements to coding editor experience, build scenarios and support for variadic tuple types. Let’s take a closer look at some of these improvements a developer can make use of in this latest release. Support for Variadic Tuple Types TypeScript 4.

    Read More
  • The Definitive TypeScript 4.0 Guide

    The Definitive TypeScript 4.0 Guide

    Jason Cheatham | September 18, 2020

    Originally published October 2018. Updated September 2020. This article describes the features and functionality of TypeScript 4.0.  One of the most interesting languages for large-scale application development is Microsoft’s TypeScript. TypeScript is unique in that it is a superset of JavaScript, but with optional types, interfaces, generics, and more.

    Read More
  • TypeScript 4.0 Cheat Sheet

    TypeScript 4.0 Cheat Sheet

    Jason Cheatham | September 18, 2020

    This cheat sheet is an adjunct to our Definitive TypeScript Guide. Originally published November 2018. Updated September 2020 for TypeScript 4.0.

    Read More
  • Advanced TypeScript 4.0 Concepts: Classes and Types

    Advanced TypeScript 4.0 Concepts: Classes and Types

    Nick Nisi | September 18, 2020

    Originally published November 2018. Updated September 2020. This article describes the features and functionality of TypeScript 4.0. While TypeScript is very simple to understand when performing basic tasks, having a deeper understanding of how its type system works is critical to unlocking advanced language functionality.

    Read More
  • Progressively Adopting TypeScript in a Dojo Toolkit Application

    Progressively Adopting TypeScript in a Dojo Toolkit Application

    Rory Mulligan | June 3, 2020

    TypeScript has become a mainstay of modern web development libraries. Consuming functions and widgets written by a third party can be error-prone without some type of guidance. Introducing static typing to the interfaces doesn’t just reduce misuse, it has added benefits including intelligent code completion.

    Read More
  • Disciplined Engineering – Part 2: Creating Code Confidence

    Disciplined Engineering – Part 2: Creating Code Confidence

    Paul Shannon | May 21, 2020

    This is part 2 of the Disciplined Engineering series. It focuses on improving the confidence of the code produced by your team. If you haven’t already, we recommend reading Part 1: Building an Engineering Process as a prerequisite for these practices. You can also check out Part 3: Refining Your Engineering Process.

    Read More
  • Sensible Improvements in TypeScript 3.9

    Sensible Improvements in TypeScript 3.9

    Nick Nisi | May 15, 2020

    The recent TypeScript 3.9 release primarily focuses on performance and stability, but it does include some language updates that are worth a closer look. Expansion of uncalled function checks Continuing its quest to save you from yourself, TypeScript 3.9 expands on the uncalled function checks that were introduced in version 3.7.

    Read More
  • Progressively Adopting TypeScript in an Application

    Progressively Adopting TypeScript in an Application

    Paul Shannon | April 30, 2020

    SitePen is a huge advocate for TypeScript and the benefits of having well typed code. TypeScript is especially powerful when used by medium and large teams that want to find ways to increase their overall confidence in their code.

    Read More
  • New TypeScript Features that Improve the Developer Experience

    New TypeScript Features that Improve the Developer Experience

    Nick Nisi | March 18, 2020

    In many ways TypeScript is more like a powerful linting and documentation tool to author better JavaScript, rather than a separate programming language. One significant benefit of TypeScript is its deliberate support for some of the latest ECMAScript language features.

    Read More
  • Why did we start TSConf?

    Why did we start TSConf?

    Nick Nisi | March 6, 2020

    The ubiquity of JavaScript is undeniable; it’s the universal language of the web — a position that no other languages hold. JavaScript is flexible, able to adapt and grow as the web grows.

    Read More
  • Augmented Reality on the Web in 2019

    Augmented Reality on the Web in 2019

    James Milner | May 21, 2019

    Augmented Reality (AR) brings digital information or media and interweaves it with our experience of the real-world. In recent years Augmented Reality has become apparent in the consumer space in two major formats: head mounted displays such as the Microsoft HoloLens and the Magic Leap along with more widely available experiences on mobile devices.

    Read More
  • Getting Started with AssemblyScript

    Getting Started with AssemblyScript

    James Milner | April 23, 2019

    In a previous post we looked at how to compile the popular programming language Go to WebAssembly. WebAssembly is a new programming language which provides a compact binary format for the web. In this post we’ll explore another WebAssembly target language called AssemblyScript.

    Read More
  • Updating the Decorators Proposal for the Holidays

    Updating the Decorators Proposal for the Holidays

    Anthony Ciccarello | January 3, 2019

    Photo by Annie Spratt on Unsplash The Ecma TC39 committee, which standardizes the JavaScript language (officially known as ECMAScript), has been discussing a decorators proposal for several years.

    Read More
  • Cats vs Dogs: Answering the Important Questions

    Cats vs Dogs: Answering the Important Questions

    Paul Shannon | December 19, 2018

    SitePen participates in a number of conferences around the world presenting new technology and ideas to engineers and designers. Recently Dylan Schiemann and Tom Dye spoke at the HalfStack Conference in London and Paul Shannon spoke at Phoenix TypeScript meetup.

    Read More
  • Node+JS Interactive 2018: From Accessibility to JS Interoperability

    Node+JS Interactive 2018: From Accessibility to JS Interoperability

    Dylan Schiemann | October 23, 2018

    The 2018 edition of the Node+JS Interactive conference featured nearly 1,000 JavaScript and Node.js enthusiasts at the first combined event organized by the Node.js Foundation and JS Foundation. The event included nearly 100 sessions, panels, and community events designed to help grow and foster the JavaScript ecosystem.

    Read More
  • FullStack London 2018: Choosing a Framework

    FullStack London 2018: Choosing a Framework

    Lisa Flood | July 26, 2018

    At this month’s FullStack London 2018, our CEO, Dylan Schiemann, presented the talk “Choosing a Framework”, based on our Choosing a Framework blog series. Given our long history in web development, we’ve seen JavaScript evolve from an obscure simplistic scripting language to the language of the internet.

    Read More
  • Exploring the Resize Observer Proposal

    Exploring the Resize Observer Proposal

    Dylan Schiemann | June 4, 2018

    Resize Observer allows developers to receive notifications when the size of an element’s content rectangle changes. This helps manage a variety of application layout scenarios including responsive application layout, flexible layouts such as split panes, or dynamic changes in content within an element in a page.

    Read More
  • A Quick Look at Nest

    A Quick Look at Nest

    Paul Shannon | May 9, 2018

    Nest is a scalable framework for building server-side applications. It is authored in TypeScript and relies on the Express framework. It leans heavily on modern language features such as async/await and decorators to reduce cruft and place the focus cleanly on route-handling business logic.

    Read More
  • Escape the Office: Designing Interfaces for Other Developers

    Escape the Office: Designing Interfaces for Other Developers

    Dylan Schiemann | May 4, 2018

    At the recent TSConf, SitePen engineer Sarah Higley delivered a talk titled Escape the Office: Designing Interfaces for Other Developers. The moment you step into any large project or open source venture you must accept that code you write gets used in ways you did not originally intend.

    Read More
  • Introduction to WebAssembly

    Introduction to WebAssembly

    Dylan Schiemann | April 13, 2018

    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

    TSConf: The First TypeScript Conference

    Dylan Schiemann | April 12, 2018

    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.

    Read More
  • Testing TypeScript with Intern 4

    Testing TypeScript with Intern 4

    Jason Cheatham | February 12, 2018

    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 and Strict Functions

    Kit Kelly | November 2, 2017

    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

    Common TypeScript Error Messages

    Sarah Higley | November 1, 2017

    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.

    Read More
  • Web Frameworks: Soundness

    Web Frameworks: Soundness

    Kit Kelly | October 3, 2017

    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

    Efficient testing of Angular with Intern

    Dylan Schiemann | September 22, 2017

    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

    Rethinking Inheritance

    Paul Bouchon | September 19, 2017

    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.

    Read More
  • Getting started with Intern 4

    Getting started with Intern 4

    Dylan Schiemann | August 30, 2017

    Unless you have a time machine or a TARDIS, it’s pretty rare to have solid documentation in place before an open source project is released! While we’re getting close to a beta release with the Intern 4 and while we still have a fair amount of documentation and refinements to complete, a number of people

    Read More
  • Web Frameworks: Testing

    Web Frameworks: Testing

    Kit Kelly | August 29, 2017

    Test early, test often, and test some more. Why put our heart and soul into our web applications only to be let down because we are not completely testing them. Let’s explore how the different web frameworks approach testing.

    Read More
  • Web Frameworks: Common Usage

    Web Frameworks: Common Usage

    Kit Kelly | August 10, 2017

    Previously on Web Frameworks, we looked at how various frameworks deal with the concept of applications. Akin to listening to the whole album, we got a sense of how the frameworks pull it all together.

    Read More
  • Web Frameworks: Applications

    Web Frameworks: Applications

    Kit Kelly | August 3, 2017

    Applications built with web technologies, something that was a curiosity a few short years ago, have emerged onto the scene as a must have for most organizations. Transcending websites and providing users with a more open and unbounded experience, web applications are everywhere.

    Read More
  • Web Frameworks: Foundational Technologies

    Web Frameworks: Foundational Technologies

    Kit Kelly | July 6, 2017

    We have previously discussed the look and feel of web frameworks. While we often become interested in a framework based on the stylishness of the widgets and applications it can create, this may lead to a similar approach to how we have historically selected music.

    Read More
  • TypeScript 2.4: Dynamic imports and weak types

    TypeScript 2.4: Dynamic imports and weak types

    Anthony Gubler | June 28, 2017

    The TypeScript 2.4 release might be a minor update in terms of not requiring substantial changes within our open source work and customer projects, but it provides some major benefits that we are already leveraging throughout the Dojo 2 codebase.

    Read More
  • Web Frameworks: User Experience Design

    Web Frameworks: User Experience Design

    Kit Kelly | June 27, 2017

    While instruments such as guitar and drums are part of a band, how they are used by the musicians define the style of the band’s music. Similarly, the elements of an application user interface connected together define the user experience.

    Read More
  • Intern and JavaScript Testing in 2017

    Intern and JavaScript Testing in 2017

    Jason Cheatham | June 22, 2017

    Since we released Intern in 2013, the state of JavaScript testing has changed substantially. The JavaScript world was a very different place. Node.js was at version 0.8, and core modules like http were still being heavily developed! Popular tools like webpack, React, and TypeScript were still in the early stages of development.

    Read More
  • Web Frameworks: User Interface Development

    Web Frameworks: User Interface Development

    Kit Kelly | June 16, 2017

    Whether it is Top 40 or classical or R&B, artists and music have a recognizable look and feel. When looking at frameworks, some simply provide us with a bag of instruments, while others provide us with chord progressions and album covers we can customize.

    Read More
  • If we chose our JavaScript Framework like we chose our music…

    If we chose our JavaScript Framework like we chose our music…

    Kit Kelly | June 13, 2017

    …we would all be using justin-bieber.js. We as an organization have been working with JavaScript since 2000. We have seen frameworks rise and fall, including being responsible for some of them. We have seen trends come and go. We have seen browser dominance ebb and flow. We have seen winners and losers.

    Read More
  • TypeScript 2.3: The Sexy Default Type Argument

    TypeScript 2.3: The Sexy Default Type Argument

    Dylan Schiemann | May 9, 2017

    TypeScript 2.3 is the latest version in the quarterly release cycle from the TypeScript team. This release contains several useful additions to TypeScript which we have already started to leverage within some of our current projects.

    Read More
  • Typings for dojox/gfx

    Typings for dojox/gfx

    Dylan Schiemann | April 25, 2017

    dojox/gfx is Dojo 1.x’s vector graphics library, with support for SVG, Canvas, and other legacy rendering environments through a drawing API based on the semantics of SVG. This API also provides the foundation for dojox/charting. Often the biggest challenge in working with vector graphics is the large number of possible configuration settings and permutations.

    Read More
  • Making TypeDoc better

    Making TypeDoc better

    Nick Nisi | April 20, 2017

    Over the past several months, the SitePen team has been hard at work on Dojo 2 along with the tools and infrastructure to support it. Part of that infrastructure, and one of the major priorities for Dojo 2, is to have top notch developer documentation, complete with examples, tutorials, and API documentation.

    Read More
  • TC39: Open and Incremental Approach Improves Standards Process

    TC39: Open and Incremental Approach Improves Standards Process

    Dylan Schiemann | April 6, 2017

    In our recent post about the key features in ES2017, I was reminded just how much the standards process has changed in the past 15 years. As someone who tried to get involved early to improve standards, the process was broken and I was quickly discouraged.

    Read More
  • What TypeScript can offer to Dojo 1.x

    What TypeScript can offer to Dojo 1.x

    Kit Kelly | March 29, 2017

    As many of you know, Dojo 2 is being built on TypeScript. Many of us involved in Dojo 2 believe that TypeScript brings several advantages to developing with web technologies these days.

    Read More
  • The 5 features of ES8 and a wishlist for ES9

    The 5 features of ES8 and a wishlist for ES9

    Dylan Schiemann | March 21, 2017

    As we near the finalization of the proposal, it’s looking like ES8 is going to deliver much more than the simple updates of its ES7 predecessor! We wanted to take a few moments to highlight our 5 favorite things about the upcoming 2017 release.

    Read More
  • Mixins and more in TypeScript 2.2

    Mixins and more in TypeScript 2.2

    Dylan Schiemann | February 22, 2017

    The TypeScript team recently announced the TypeScript 2.2 release candidate which will contain key improvements to the TypeScript language. Most notably, are the introduction of the object type and improved support for mixins and composable classes.

    Read More
  • Moving 4-ward with Intern

    Moving 4-ward with Intern

    Jason Cheatham | February 10, 2017

    The motivation for Intern 4 is to make it easier to author tests with ES6+ features within tests, with or without transpilation. Want to skim? Here’s the Intern Roadmap which lists our high level status for each Intern release going forward.

    Read More
  • Intern Visual Regression Plugin

    Intern Visual Regression Plugin

    Paul Shannon | December 15, 2016

    Thanks to a generous Mozilla Open Source Support program award, Intern has expanded its testing ecosystem to include new and robust sets of tools. Engineers can now easily write tests to benchmark sections of code, test for accessibility (a11y) support, and test for visual differences.

    Read More
  • Intern 3.4 Released

    Intern 3.4 Released

    Jason Cheatham | December 8, 2016

    Today we’re pleased to announce the release of Intern 3.4. This release brings usability enhancements and bugfixes, including a new benchmarking mode! We’ve outlined some of the features below, but as always, visit the release notes for more details. A number of contributors made this release possible.

    Read More
  • Exploring WebVR

    Exploring WebVR

    Dylan Schiemann | October 26, 2016

    This October, we delivered meetup talks on WebVR in London and Phoenix on the same day to share our early efforts in exploring WebVR with TypeScript, Dojo 2, Intern, and A-Frame.

    Read More
  • Improving TypeScript modules

    Improving TypeScript modules

    Dylan Schiemann | September 29, 2016

    One of the main challenges with creating modern JavaScript web applications is the relatively incomplete approach to ES modules. As an interim solution until all necessary use cases are solved, many developers create source code with ESM, and then transpile to either AMD, CJS, or UMD for easy usage within today’s browsers.

    Read More
  • Inside Answers: Intern and async functional testing

    Inside Answers: Intern and async functional testing

    Paul Bouchon | September 20, 2016

    SitePen Support is a service used by companies to improve the productivity and efficiency of their enterprise development teams. Our customers often ask questions about best practices when using various development tools for modern JavaScript and TypeScript development. Recently, we were asked to better explain some of the asynchronous syntax used by Intern.

    Read More
  • The long and winding road to Dojo 2

    The long and winding road to Dojo 2

    Kit Kelly | August 24, 2016

    Recently on GitHub, someone accused Dojo 2 of being vapourware. This opinion came from a position of misinformation. I was glad the individual then engaged with the Dojo 2 project to understand where we are today. We are making swift progress and a beta is on the horizon.

    Read More
  • FullStack 2016

    FullStack 2016

    Dylan Schiemann | July 20, 2016

    FullStack is a large London JavaScript conference hosted at the Skills Matter CodeNode. The conference brings together an impressive line-up of speakers and workshops covering five tracks over three full days of festivities. We were invited to speak at FullStack, and also enjoyed many of the other sessions and met many great engineers.

    Read More
  • Building Better Enterprise Web Applications Part 3: SitePen solutions

    Building Better Enterprise Web Applications Part 3: SitePen solutions

    Dylan Schiemann | June 30, 2016

    In this installment of our series on building web applications, we look at the SitePen approach to solving challenges in web application development. We employ all of the solutions described in part 2 of the blog series. Additionally, we have some overarching principles we apply to our work.

    Read More
  • Building Better Enterprise Web Applications: Challenges

    Building Better Enterprise Web Applications: Challenges

    Dylan Schiemann | June 28, 2016

    Web applications provide many benefits. Most organizations seek to improve the efficiency and effectiveness of business processes through the use of software. The benefits of web applications include: Simple distribution model for end users (e.g. no installation required) Instant propagation of changes Unified code base to support many platforms (desktop, tablet, mobile, etc.

    Read More
  • Dojo is Doing it Again

    Dojo is Doing it Again

    Kit Kelly | June 9, 2016

    Peter Higgins, former project lead for Dojo, gave an excellent talk at JSConf in 2013 titled “Dojo Already Did That” (which reflected a humorous meme started at the first JSConf). It was highly informative about how Dojo had already solved problems that the JavaScript community were solving again in 2013.

    Read More
  • ES6 Symbols: Drumroll Please!

    ES6 Symbols: Drumroll Please!

    Paul Shannon | April 13, 2016

    Symbols are a new, unique, primitive type introduced in ECMAScript 6 (ES6). They were added to the language in order to solve the problem of extending the functionality of Object while maintaining backwards-compatibility with code written in earlier versions of JavaScript.

    Read More
  • On the leading Edge

    On the leading Edge

    Kit Kelly | April 7, 2016

    I attended the Microsoft Edge Web Summit in San Francisco. I will be honest, outside of meeting a few people, I wasn’t expecting much. Instead, I found myself face-to-face with the “new” Microsoft.

    Read More
  • HalfStack Conference Recap

    HalfStack Conference Recap

    Dylan Schiemann | December 10, 2015

    Picture this: 100+ developers and their phones and laptops making crashing noises playing a live-created clone of Flappy Bird. Now picture the same devices working together to create a live MIDI concert, followed by a challenging and fun JavaScript pub quiz.

    Read More
  • TypeScript Decorators

    TypeScript Decorators

    Paul Shannon | October 20, 2015

    One of the main benefits of working in TypeScript is that it lets developers use modern standards within their source code today. Tools like destructuring, rest and spread operations, and classes make it easier to define structures and work with data. TypeScript also provides support for ES.

    Read More
  • Connect-JS: Quickie Recap

    Connect-JS: Quickie Recap

    Dylan Schiemann | October 19, 2015

    I had the pleasure of attending Connect-JS in Atlanta this past weekend and had a great time speaking, attending talks and meeting some very talented people. Connect-JS totes itself as being a low-cost, community conference that brings in recognized experts from around the world.

    Read More
  • Stronger JavaScript?

    Stronger JavaScript?

    Kit Kelly | October 8, 2015

    The V8 team (the JavaScript engine that powers Chrome, Opera, Node.js, MongoDB, etc…) are moving forward with an experiment in defining a stronger version of JavaScript that ensures that code being run is behaving well, and introducing run-time typing based on TypeScript’s typings.

    Read More
  • Code Coverage for TypeScript and Other Transpiled Languages

    Code Coverage for TypeScript and Other Transpiled Languages

    Kit Kelly | September 29, 2015

    Transpiling or compiling code has become a necessity today for JavaScript-based web development. Whether you are using TypeScript, Babel, Dart, Traceur, or CoffeeScript to provide additional language features, or trying to optimise your code with the likes of UglifyJS, r.

    Read More
  • Recent TypeScript talks

    Recent TypeScript talks

    Dylan Schiemann | September 8, 2015

    SitePen is a huge supporter of TypeScript. It allows our developers to write using modern standards support for ES6 and some ES7 features while still targeting ES5 browsers. It also includes a type system that adds to our code’s integrity and makes it easier to write good software.

    Read More
  • Multi-Platform Distribution with TypeScript

    Multi-Platform Distribution with TypeScript

    Ken Franqueiro | June 1, 2015

    Over the past several years, JavaScript has grown to be relevant not only for rich browser applications, but also for server and console applications. Many types of JavaScript libraries can be useful on both ends of this spectrum.

    Read More
  • Testing TypeScript with Intern

    Testing TypeScript with Intern

    Dylan Schiemann | March 24, 2015

    This post has been updated to cover Intern 3.4 and TypeScript 2.3. Read our Intern 4 and TypeScript testing article for more recent information. Intern is a popular JavaScript testing framework, because of its extensive, modular feature set.

    Read More
  • Advanced TypeScript concepts: Classes and types

    Advanced TypeScript concepts: Classes and types

    Colin Snover | August 22, 2014

    This article describes the features and functionality of TypeScript 2.5. While TypeScript is very simple to understand when performing basic tasks, having a deeper understanding of how its type system works is critical to unlocking advanced language functionality.

    Read More
We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.Privacy Policy