ES6 introduced a new global object Reflect that exposes low-level methods for object reflection, specifically Introspection - the ability to inspect, interact and manipulate object properties programmatically at runtime.

Like the global Object, Reflect is a static object so it cannot be instantiated with a constructor and the keyword new nor can it invoked as a function. All Reflect methods are also static.

Some introspection methods already exist in ES5 such as Object.keys() and Object.getOwnPropertyNames so one may ask why introduce the Reflect object in ES6 if many of the same Object methods are also present as Reflect methods? …


Introduction to Vue Object-Relational Mapping (ORM)

Quite often applications use data that needs to be continually duplicated throughout the data store to provide referenced context to the data relationships inherent in the data.

For example, a Question and Answer website (like Quora and Stack Overflow for example) will have many questions posted by many authors, together with many answers posted by many authors to each individual question.

Author data such as author name can be associated with both asking questions and providing answers that needs to be repeatedly nested with each individual question or answer.

Apart from data redundancy, nested data in typical CRUD applications can…


The Vue reactivity system was given a complete overall in Vue 3 using ES6 Proxies. Although not as well known as other ES6 additions and enhancements, ES6 proxies ‘virtualize’ an object to control both the default and subsequently modified behavior of the object as required.

Similar to using a proxy server in a hosting environment, one can create a proxy object that wraps an existing object and intercepts low-level object operations (such as .set(), .get(), .deleteProperty()) to redefine their current behavior without modifying the original object.

Known as a form of meta-programming whereby code is developed to manipulate itself, the…


Written by Matias Oveja Smith, Full Stack Developer, XOOR

Destructuring is an excellent way to extract data stored in object s and arrays. Is very useful to read a complete structure in only one line.

Destructuring assignment

Is supported in node since ~v6.4.0, Chrome #49 and Firefox #41

Let’s start!

Array destructuring

In array destructuring each variable name on the array maps to the corresponding item at the same index on the destructured array.

This is our right side array.

const bar = ["mate without sugar", "empanadas de carne", "milanesas", "asado well done"];

Back in time, we use a few lines to assign different…


Written by Matias Oveja Smith, Full Stack Developer, XOOR

ES2018 (ES9)

ECMAScript 2018 was released in June 2018, adds fewer features than major editions (ES2016, ES2017) used to. These new changes are Asynchronous Iteration, Rest/Spread Properties, new features to Regular Expressions and a revision to template literals.

Asynchronous Iteration

With synchronous iterations, we are able to iterate data from a synchronous source, but not when data is from an asynchronous source, for example https fetch.

We will recap synchronous iteration and then asynchronous iteration.

Synchronous iteration

Synchronous iteration was introduced with ES6 and have the following components

  • Iterable: Is an object that can be iterated via…


Even though many companies keep it behind curtains, everybody in the industry knows that during the past decade the nearshore software development business grew considerably. The top reason that pushes companies in the US or Europe to outsource their software development efforts to other countries is money. Hiring a team in-house is way more expensive than hiring a team in other (cheaper) countries. But… (there’s always a but) more often than not, cheaper means poor quality.


Photo by NeONBRAND on Unsplash

During the last few weeks we’ve been working along with our friends at DogTown Media on an open API that anybody can use in their Sign Up forms to check against passwords that have been breached in the past + dictionary words and commonly used sequences of characters like 1234abcd and similar.

TL;DR

Head over to https://nist.badpasswordcheck.com/ and start using the API :)

What we built

The biggest corpus was taken from the awesome 9GB (compressed) file from Have I Been Pwned website. …


Photo by Bryan Goff on Unsplash

Using ES6/7 powered by Babel

Written by Maximiliano Duthey, Full Stack Developer @ XOOR

GraphQL has been gathering a lot of attention lately and at XOOR we don’t like to let things pass by. So in some of our latest projects we started experimenting with it and even started using it in production for some projects. In this post we’ll see how to build a very simple API using Express and Apollo as the GraphQL server. If you’re not familiar with GraphQL yet, in a few words it can be described as:

GraphQL is a query language for APIs and a runtime for fulfilling those…


Photo by Gerrie van der Walt on Unsplash

A hello world example using GitHub as a source

On our latest post we’ve learnt how to deploy a Node.js app to AWS ElasticBeanstalk using a single command on our console. Today we’ll move one step forward and create an automated deployment pipeline that will automatically detect any code pushes we do to our GitHub repo and will grab that code an generate a new build that will be deployed to our ElasticBeanstalk environment. For this purpose we’ll be using AWS CodePipeline, which is a service that wraps other services from AWS like CodeCommit, CodeBuild and CodeDeploy among others.

CodePipeline is a tool aiming to provide Continuous Integration and…


“Code on a computer” by Markus Spiske on Unsplash

A simple Hello World example using the EB CLI

Hi there! Today we’ll show you how to create an Elastic Beanstalk environment and deploy your Node.js application to it with a single eb deploy command. We’ll assume you already have a Node.js application working locally. If you don’t, you can use the app code we prepared for this post which is a very simple express app created with the express generator package as stated here.

Let’s first explain what that Elastic Beanstalk thing is. According to AWS docs:

With Elastic Beanstalk, you can quickly deploy and manage applications in the AWS Cloud without worrying about the infrastructure that runs…

XOOR

Pushing Forward Great Ideas — Visit us at https://xoor.io and contact for a free tech consultation about your next project!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store