Chief Technology Strategist

Ignite 1.0


A sink can only hold so much

"You can't catapult a project to success - every project is a climb in the right direction.  The best thing we could do is be the co-pilot"


Connecting Strangers

From Readme.md

To App

The Daniel Kehoe Experience


How does this work?

  • No yeoman
  • No lock in

Just an ideal plugin experience

const NPM_MODULE_NAME = 'react-native-vector-icons'
const EXAMPLE_FILE = 'vectorExample.js'

 * Add ourself to the project.
const add = async function (context) {
  const { ignite } = context

  // install a npm module
  await ignite.addModule(NPM_MODULE_NAME, { link: true })

  // copy the example file (if examples are turned on)
  await ignite.addComponentExample(EXAMPLE_FILE, { title: 'Vector Icons' })

 * Remove ourself from the project.
const remove = async function (context) {
  const { ignite } = context

  // remove the npm module
  await ignite.removeModule(NPM_MODULE_NAME, { unlink: true })

  // remove the component example
  await ignite.removeComponentExample(EXAMPLE_FILE)

 * Expose an ignite plugin interface.
module.exports = { add, remove }

built with gluegun

The gluegun logo

We're there as needed

  • Examples stay out of your way
  • You can use our dev screens, too!
  • We don't/can't limit your plugins
  • Your plugin can be slightly modified per-project!

"It would be cool if I could easily fork and modify templates from plugins that I liked."

- Brent Vatne



Like fork but just for the templates

We use this!

We will continue to write plugins you can use!

Steve Kellock

Kevin Vangelder

Software Engineer

Senior Software Engineer

I stole credit from...



Cindy Nguyen

Justin Huskey

Design Lead


I stole credit from...


Come Meet Me

React JS Conf

Come Meet Me


Thank You

& Thank You