Build. Document. Share.

When we work on a new project, we document what we learn along the way. This blog is our way to share what we’ve found valuable in designing and building software over the years.

The Echobind Blog

Bison Release 1.12.0

Bison Release 1.12.0

Kishan Gajera
August 9, 2022
Custom React Hook Guide: Build a Kanye Quote app with React Native

Custom React Hook Guide: Build a Kanye Quote app with React Native

Mickey Martinez
May 19, 2022
TypeScript - Generic Types

TypeScript - Generic Types

Dominic Sherman
March 30, 2022
Safely Alter Postgres Columns with USING

Safely Alter Postgres Columns with USING

Cully Larson
March 25, 2022
How To Get Your iOS App Into TestFlight and Test It, for Xcode 13

How To Get Your iOS App Into TestFlight and Test It, for Xcode 13

David Barkman
January 20, 2022
Creating Custom Icon Fonts in React Native and Expo

Creating Custom Icon Fonts in React Native and Expo

Alex Silcox
January 17, 2022
SectionedFetchRequest, sweet, sweet automagic goodness!

SectionedFetchRequest, sweet, sweet automagic goodness!

Echobind Team
January 7, 2022
Swift Concurrency

Swift Concurrency

David Barkman
August 12, 2021
Alexa Skills

Alexa Skills

Deloris Thompson
July 16, 2021
SwiftUI, is it ready?

SwiftUI, is it ready?

Echobind Team
June 10, 2021
NextAuth.js Intro [3 of 3]: Adding Access Control

NextAuth.js Intro [3 of 3]: Adding Access Control

Mike Cavaliere
May 20, 2021
Learning Rails after Bison’s JAMstack

Learning Rails after Bison’s JAMstack

Kim Wilkes
May 6, 2021
Why Should I Write Clean Code?

Why Should I Write Clean Code?

Mariah Grey
April 29, 2021
Docker Compose DB

Docker Compose DB

Matt Thompson
April 15, 2021
Revelio: Defer and Lazy-Load with the Intersection Observer API

Revelio: Defer and Lazy-Load with the Intersection Observer API

Deloris Thompson
April 8, 2021
NextAuth.js Intro [2 of 3]: Magic Link Email Authentication

NextAuth.js Intro [2 of 3]: Magic Link Email Authentication

Mike Cavaliere
March 25, 2021
Measure Twice Code Once

Measure Twice Code Once

Isaac Myman
March 17, 2021
NextAuth.js Intro [1 of 3]: One-Click Signup

NextAuth.js Intro [1 of 3]: One-Click Signup

Mike Cavaliere
March 11, 2021
Creating Your Own JAMStack Blog in No Time with Next.js and Bison

Creating Your Own JAMStack Blog in No Time with Next.js and Bison

Mike Cavaliere
October 19, 2020
A Guide for RESTful APIs with Node, Sequelize & Postgres

A Guide for RESTful APIs with Node, Sequelize & Postgres

Mickey Martinez
September 1, 2020
Next-Level Mobile App Debugging with a Network Proxy

Next-Level Mobile App Debugging with a Network Proxy

Ryan Atkinson
May 21, 2020
Feature Flipping with Rails and Rollout

Feature Flipping with Rails and Rollout

Gabriel Martin
March 24, 2020
React Native Fix: Jumping Screens in the React-Navigation TabNavigator

React Native Fix: Jumping Screens in the React-Navigation TabNavigator

Ryan Atkinson
February 17, 2020
How to Run React Native Apps on a Specific Device in the iOS Simulator

How to Run React Native Apps on a Specific Device in the iOS Simulator

Josh Buchea
February 10, 2020
React Native iOS Splash Screen with Storyboard

React Native iOS Splash Screen with Storyboard

Jenn Robison
February 5, 2020
Optimizing your Android Build for React Native

Optimizing your Android Build for React Native

Jenn Robison
January 21, 2020
Ruby on Rails — Importing Data from an Excel File

Ruby on Rails — Importing Data from an Excel File

Gabriel Martin
January 13, 2020
Static Sites without the Static

Static Sites without the Static

Chris Ball
December 31, 2019
Zero to Dark Mode in React Native

Zero to Dark Mode in React Native

Josh Buchea
December 13, 2019
React with TypeScript: Components as Function Declarations vs. Function Expressions

React with TypeScript: Components as Function Declarations vs. Function Expressions

Joe Previte
December 13, 2019
Clear the Clutter with Fragments

Clear the Clutter with Fragments

Jenn Robison
December 12, 2019
Reducing Costly Renders During Gesture Animations in React Native

Reducing Costly Renders During Gesture Animations in React Native

Isaiah Grey
December 9, 2019
Tides of the Tailwind

Tides of the Tailwind

Kory Tegman
December 5, 2019
Advantages Of Dark Theme User Interfaces

Advantages Of Dark Theme User Interfaces

Michael Dang
December 4, 2019
Up and Running: ZEIT Now Environments

Up and Running: ZEIT Now Environments

Matt Thompson
December 1, 2019
The Business Value of (& Precautions for) React Native

The Business Value of (& Precautions for) React Native

Mike Cavaliere
November 26, 2019
A Comparison of Three Methods for Styling Components in React Native

A Comparison of Three Methods for Styling Components in React Native

Ryan Atkinson
November 19, 2019
AllThingsOpen 2019 Recap

AllThingsOpen 2019 Recap

Joe Previte
November 12, 2019
This Month We Learned - September 2019

This Month We Learned - September 2019

Anne Tolmie
October 19, 2019
How to Mock Using Jest.spyOn (Part 2)

How to Mock Using Jest.spyOn (Part 2)

Jeffrey Zhen
October 16, 2019
8 Business Reasons to Adopt GraphQL and Apollo Server

8 Business Reasons to Adopt GraphQL and Apollo Server

Mike Cavaliere
October 15, 2019
A Reflection: Building a GraphQL API with Nest.js

A Reflection: Building a GraphQL API with Nest.js

Joe Previte
October 8, 2019
GraphQL — the Dev Edition

GraphQL — the Dev Edition

Matt Thompson
September 26, 2019
This Month We Learned - August 2019

This Month We Learned - August 2019

Anne Tolmie
September 6, 2019
Becoming More Proficient on the Back-End (Part 3)

Becoming More Proficient on the Back-End (Part 3)

Joe Previte
August 16, 2019
Becoming More Proficient on the Back-End (Part 2)

Becoming More Proficient on the Back-End (Part 2)

Joe Previte
August 15, 2019
How to Write Functional Tests in React (Part 1)

How to Write Functional Tests in React (Part 1)

Jeffrey Zhen
April 12, 2019
A Common Conditional Rendering Bug in React Native

A Common Conditional Rendering Bug in React Native

Ryan Atkinson
January 22, 2019
Lazy Loading Components in React

Lazy Loading Components in React

Jeffrey Zhen
January 22, 2019
What is this type?!

What is this type?!

Alvin Crespo
October 25, 2018
Automating CodePush deploys with Fastlane

Automating CodePush deploys with Fastlane

Chris Ball
August 27, 2018
A 12-Factor Approach to Environment-Specific Builds in React Native

A 12-Factor Approach to Environment-Specific Builds in React Native

Chris Ball
August 7, 2018
Productive Performance for Engineers

Productive Performance for Engineers

Jeffrey Zhen
June 18, 2018
Essential Customizations for VSCode

Essential Customizations for VSCode

Jeffrey Zhen
June 13, 2018
Improve Developer Productivity with Generators and Team Conventions

Improve Developer Productivity with Generators and Team Conventions

Chris Ball
May 8, 2018
Thanks for 2017!

Thanks for 2017!

Chris Ball
January 9, 2018
How to Engage a Community

How to Engage a Community

Robert Beene
December 29, 2017
The Graphcool Framework: A path to instant GraphQL greatness

The Graphcool Framework: A path to instant GraphQL greatness

Chris Ball
November 8, 2017
Headless Browser testing with CircleCI 2.0

Headless Browser testing with CircleCI 2.0

Alvin Crespo
September 25, 2017
Betting on React Native

Betting on React Native

Chris Ball
February 16, 2017
How to Easily Create Custom Skills for Alexa

How to Easily Create Custom Skills for Alexa

Chris Power
January 14, 2017
Why Your Company Should Contribute to Open Source

Why Your Company Should Contribute to Open Source

Robert Beene
January 9, 2017
Thanks for 2016!

Thanks for 2016!

Chris Ball
January 2, 2017
What Is JWT and Why Does It Matter

What Is JWT and Why Does It Matter

Robert Beene
November 30, 2016
Leveling Up With Echobind

Leveling Up With Echobind

Robert Beene
May 5, 2016
Recap of Ruby on Ales 2016

Recap of Ruby on Ales 2016

Michael Yared
April 10, 2016
The Real Costs of Not Keeping Software Current

The Real Costs of Not Keeping Software Current

Michael Yared
December 13, 2015

Interested in working with us?

Give us some details about your project, and our team will be in touch within a day or two.