Articles

Create a Code of Conduct Incident Line with Node.js

Having a Code of Conduct as a community organizer is only one part of the story—having well-thought-out ways to report and respond to bad behavior is also vital. At events I've run in the past, a phone number has been one way provided to attendees—they can either call or text the number and it forwards on to several organizers who have the responsibility to be available to deal with any issues...

29th December 2020 Vonage Developer Blog

Add Overlay To Video With the Vonage Video API

When creating a Vonage Video publisher, the video stream can be sourced directly from a user camera, from a <video> element, or a HTML <canvas> element. Once pixels get drawn to the canvas, they can be easily manipulated before being used in a Video API session...

25th August 2020 Vonage Developer Blog

How to Add Two-Factor Authentication with Node.js and Express

Two-factor authentication refers to a pattern of users needing both something they know, like a password, and something they have, like a verification token from a mobile device. This tutorial will cover how to implement a verification token system with the Vonage Verify API and Express.js...

17th July 2020 Vonage Developer Blog

Use a Green Screen With Vonage Video

When creating a Vonage Video publisher, the stream can be sourced directly from a user camera, from a <video> element, or a HTML <canvas> element. Once pixels get drawn to the canvas, they can be easily manipulated before being used in a Video API session. In this tutorial, you'll learn how to remove a green screen and replace it with a new, custom image that you can include in your video calls...

24th June 2020 Vonage Developer Blog

Build a Serverless Eurovision Voting System with Node.js and Vonage

I'm a massive Eurovision fan, and thought it would be a fun project to build a fully-working voting system using the Vonage Number Insights API to validate the origin of a number...

17th June 2020 Vonage Developer Blog

Accessing MongoDB Atlas From Netlify Functions

I recently tried to use a MongoDB Atlas instance with Netlify Functions and couldn't seem to connect to the database (I could locally). Here's why, and how I fixed it...

5th June 2020

Build a Basic Video Call Platform with Netlify Functions

While you can get started with the Vonage Video API with very little code, you will still require a server to handle session and token generation. If you have a server to host a basic Express.js application, we have a delightful blog post on building a basic video chat, but not everyone does...

22nd May 2020 Vonage Developer Blog

Running AV at the Women of React Conference

On April 25 the first Women of React Conference took place online. Ten speakers and two six-person panels happened over the 6 hours, and the whole event went from inception to delivery in about 5 weeks. As of writing the stream has had 22,000 views both live and on-demand, with a peak concurrent viewership of 1360 people...

10th May 2020

Manage a Pool of Phone Numbers With Node.js

You may not always be near your office phone, and when this is the case, customers may struggle to get in touch with you. In this tutorial, we’ll be building an application that uses the Number Management API for Vonage APIs to manage multiple masked phone numbers. Each number will redirect calls to another number, such as a private mobile that can be used from home...

23rd April 2020 Vonage Developer Blog

Build a Video Conversation Platform for Online Gatherings With Nuxt.js

During a time where many events are going online, one challenge we still face as community organizers is how to facilitate conversations between attendees during breaks and after talks have ended...

9th April 2020 Vonage Developer Blog

Taking Your Teaching Online

Over the weekend I was asked by some lecturers at my alma mater about taking lectures online following my blog post last week about running my first online meetup. Having researched options for a few hours, here are my thoughts on how to get going on a minimal or zero budget...

16th March 2020

Running My First Online Meetup

A month ago I'd never considered running online events. With recent news around COVID-19, many event organizers are being forced to find quick solutions to still bring people together and provide valuable content to their communities. London CSS was one of them, making the decision to go online-only just a few days before our event...

14th March 2020

Save Received SMS Messages With Airtable and Node.js

Airtable is an online database tool that allows you to create linked datasets with a friendly interface. Instead of needing to build admin dashboards for your data, Airtable lets you query, sort, and filter data through it’s accessible, collaborative, and (dare I say) fun interface. By the end of this tutorial, you’ll be able to store SMS messages sent in from your users in an Airtable base and reply to them using the Nexmo Messages API...

5th March 2020 Vonage Developer Blog

Understanding Heroku Pipelines

For years Heroku has been the choice platform for developers looking to host their web applications. With just a new pushed commit, the Heroku Platform handles everything from deployment and scaling to integrating with ecosystem partners...

28th January 2020 Heroku Developer Blog

Styling Range Sliders with CSS

In this post I will cover how to custom style a HTML range input (the slider). You can also get this to work in Internet Explorer, but this guide will just cover Webkit-based browsers and Firefox...

5th January 2020

Persisting Data Between App Launches With NativeScript Vue

Having users re-login on every app launch is probably not what you want. In this post I'll be covering how to setup a Vuex store in your NativeScript-Vue app and persist app data between launches. While this pattern will work for any data, we'll be setting it up specifically in the context of user authentication...

2nd January 2020

Tell stories with friends with Programmable Chat and JavaScript

One of my favourite icebreakers is to play a game called Once Upon a Time, which is popular enough to have its own card game. When playing, friends get to write one line of a story at a time and each player can only see the one immediately before theirs. The results are always hilarious as stories go off in all kinds of directions. I wanted the ability to play anytime with friends, where all they need is an internet-connected device. In this post I’ll show you how to create a basic online version of the game using Twilio Programmable Chat...

14th July 2017 Twilio Blog

Playing a Twitter adventure game using SMS and Twilio on Glitch

A few years ago, Terence Eden created @wnd_go, a “choose your own adventure” style game using a series of Twitter accounts which link to one another. I thought it’d be fun to show you how to build an application which makes this more accessible by replicating the gameplay via SMS. For this we’ll be using Node.js and an online editor called Glitch. Greg has previously written a post on receiving SMS using Glitch (then HyperDev)...

6th April 2017 Twilio Blog

Collecting Meaningful Event Feedback

It’s often said that the sign of a good events organiser is how they respond to difficult situations. If you want to hear more about ‘managing chaos’, my good friend Joshua Simpson gave an amazing and funny overview at Hackcon IV — the recording is here...

16th August 2016

Introducing Programming to Others

A few days ago I wrote a post on sharing your hobbies with others. I gave some examples which weren't related to programming, using my hobby of board gaming, but I wanted to follow that up with this post - where I want to give more specific examples to ensure that you can enable budding programmers to be as awesome as possible...

2nd May 2016

Sharing Your Hobby With Others

Most people have a primary hobby which falls outside of their professional lives. For me, that hobby is board and card gaming. People have weird and wonderful hobbies of all kinds — from making cheese to geocaching — we all have our reasons for enjoying these activities, and generally want to share our love of them with our friends and family...

28th April 2016