Thibault Maekelbergh
thibmaek
Recent Tech Decisions
112 points

Following

  • Mapbox

    thibmaek Silent Schiedam


    Serves a nice looking map on the detail page of the application.

  • Microsoft Azure

    thibmaek Lab9 Bot


    Azure is used for deploying the bot to the cloud as a fallback to hardware device deployment.

  • Webpack

    thibmaek Silent Schiedam


    All ES6 was transpiled trough the babel-loader. CSS was prefixed and minified with postcss-loader. Images optimized with imageoptim.

  • Heroku

    thibmaek Silent Schiedam


    Main platform of deployment. This proved to be the easiest with our React + Node stack.

    We had the develop branch deployed on a staging subdomain and master on the rootdomain.

  • Firebase

    thibmaek Silent Schiedam


    Our DBaaS and backend. All database operations run trough Firebase and requests/responses arrive in realtime.

  • PostCSS

    thibmaek Silent Schiedam


    We wrote a lot of flexbox and css that needed prefixing. PostCSS + Webpack was the best option here.

  • npm

    thibmaek Silent Schiedam


    Task runner for building, serving and deploying

  • Mocha

    thibmaek Silent Schiedam


    Simple assertions in combination with Enzyme.

  • React

    thibmaek Silent Schiedam


    All frontend logic consisted of a plain React app without state management of some sort.

  • Enzyme

    thibmaek Silent Schiedam


    Component and DOM testing for React integrated with Mocha.

  • Resin.io

    thibmaek Lab9 Bot


    This is the main deployment platform. The bot is deployed on a Rasbperry Pi B+ and runs in a Docker container.

  • Botkit

    thibmaek Lab9 Bot


    The backbone of the application. Takes care of application logic and bot responses.

  • Node.js

    thibmaek Lab9 Bot


    Runs on Node v6+ as a standalone server. Optionally uses nodemon for monitoring of server process.

  • JavaScript

    thibmaek Silent Schiedam


    The whole application consists of both a Javascript frontend and backend.

  • hapi

    thibmaek Silent Schiedam


    Serves static content. Was added to make it more easy to transition to serverside view templating and API.

  • Babel

    thibmaek Silent Schiedam


    Write next generation js

  • Slack

    thibmaek Silent Schiedam


    Get notified of build status, deployment status, github changes and internal communication for the team.

  • Yarn

    thibmaek bpost


    Fetching modules from the npm registry in local development

  • ESLint

    thibmaek bpost


    Enforce code-style and non error-prone code for maintaining the module

  • Babel

    thibmaek bpost


    Transpile a little ES2015+ stuff down to valid ES5/ES6/CommonJS/UMD

  • npm

    thibmaek bpost


    Module is published as bpost on the npm registry. Tasks for the module are also defined as npm run tasks with commit hooks for git