1.0.2 • Published 8 years ago

technology-stack v1.0.2

Weekly downloads
3
License
GPL-2.0
Repository
github
Last release
8 years ago

Technology Stack Join the chat at https://gitter.im/dwyl/chat

This document describes the full technology stack we are using in dwyl.

If you have any questions please ask

Overview

The following diagram is an overview of our stack:

dwyl-stack-with-postgres

Note: To edit/improve this diagram: https://github.com/dwyl/technology-stack/issues/1

We have produced a complete beginners guide for each of the components in our stack. (see below)

Open Source Projects We Use

For Us By Us

We craft code to scratch our own itch and everything we do is always Open Source

ProjectUsed ForBuild StatusTest CoverageDependency StatusTutorial
env2Loading Environment VariablesBuild StatusTest Coveragedependencies Statuslearn-environment-variables
estaElasticSearch CRUDBuild StatusTest Coveragedependencies Statuslearn-elasticsearch
hapi-auth-jwt2Authentication & SessionsBuild StatusTest Coveragedependencies Statuslearn-json-web-tokens
hapi-errorHuman-Friendly Error MessagesBuild StatusTest Coveragedependencies Statushapi-error#why
hapi-postgres-connectionPostgres Connection PoolingBuild StatusTest Coveragedependencies Statuslearn-postgresql
hapi-riotServer-side (Fast) Rendering of Riot TagsBuild StatusTest Coveragedependencies Statuslearn-riot
hapi-redis-connectionSimplify Redis ConnectionBuild StatusTest Coveragedependencies Statuslearn-redis

Note: to update this table, use the script: generate_dependency_table.js

Dependencies (projects built by people we trust)

  • Node.js - the most popular JavaScript runtime for easily building fast, scalable network applications. Lightweight and efficient, perfect for data-intensive real-time apps. http://nodejs.org/
  • Hapi.js - A rich web framework for building applications and services. https://github.com/dwyl/learn-hapi
  • Socket.io - a JavaScript library for realtime web applications. It enables realtime, bi-directional communication between web clients and server. Socket.io lets us send data to/from everyone connected to our app(s) without having to refresh the web page. http://socket.io/
  • Riot.js - is the most light-weight user-interface (UI) framework available which is compatible with IE 8/9 and has good server-side rendering (which means pages load faster for slow devices like budget smart phones). see: https://github.com/dwyl/learn-riot
  • Redis - the most popular in-memory data store which is essential
    for building the fastest possible apps. read more: https://github.com/dwyl/learn-redis
  • ElasticSearch - the most feature-rich search engine. we use it to find things fast. Learn more: https://github.com/dwyl/learn-elasticsearch

Development Dependencies

We carefully select and only use well-maintained "pure" JavaScript modules in our development toolchain:

Continuous Integration

We use and recommend Travis-CI for Continuous Integration (CI). If you or anyone on your team are new to Travis-CI, checkout our beginners guide: https://github.com/dwyl/learn-travis