Coolfire Core Developer Resources

Welcome to the Coolfire Core Developer Hub!

Here you will find comprehensive guides and documentation to help you start working with our Core APIs and application source code as quickly as possible, as well as support if you get stuck. Enjoy!

Guides    API Docs

Core Technology Overview

The down and dirty details behind the Coolfire technology stack.

Key Core Technologies

Amazon Web Services

  • VPC (Virtual Private Cloud)
  • EKS (Elastic Container Services for Kubernetes)
  • EC2 (Elastic Compute Cloud)
  • S3 (storage)
  • EBS (Elastic Block Store)
  • ELB (Elastic Load Balancing)
  • SES (Simple Email Service)
  • Route53 (Cloud DNS)
  • CloudWatch (monitoring)
  • Rekognition (Image and Video Analysis)
  • Cognito (Federated Authentication)

Kubernetes (Container Orchestration)

  • Kubernetes Ingress Controller (nginx)
  • Helm (Package Manager)
  • Terraform (infrastructure management & deployment)
  • Consul (configuration management)
  • Vault (kms)
  • Nginx (web server)
  • Docker
  • SSL / HTTPS
  • TLS 1.2
  • RSA 2048 bit keys
  • Mongo Atlas Db
  • GeoJSON Geospatial Data
  • Node.js 8.11+
  • ASP.NET CORE 2.2+
  • Identity & Identity Server
  • Multi-factor authentication (TOTP)
  • Redis 4.0+ (caching)
  • Socket.io 2.0+ (realtime communications)
  • GraphQL API
  • Datadog (monitoring & analytics)

Core Platform / Hosting

AWS Cloud (CFS Hosted Kubernetes EKS Cluster)

  • AWS Elastic load balancing & scaling
  • Automated Deployments
  • Self healing/scaling Kubernetes cluster
  • When cpu/memory thresholds are reached, new nodes are added to the cluster automatically
  • Then new service container instances are spun up to utilize the new nodes and handle increasing traffic
  • Dedicated minimum container counts to each customer instance on the cluster

Data Security

  • Transport Layer Security (TLS 1.2)
  • All data sent to/from Coolfire Services is encrypted in transport via TLS 1.2 (RSA 2048 bit) encryption
  • State-of-the-art Authentication protocols
  • OAuth2 Support
  • Multi-factor authentication (otp, totp, etc)
  • Data Encryption at REST
  • Mongo Atlas Encrypted Database Storage
  • EC2 EBS Volume Storage Encryption (where applicable)
  • Continuous Database Backups (Mongo Atlas)

Core Components & Services

REST API

  • Standardized JSON entities Interface
  • Create (POST)
  • Read (GET)
  • Update (PUT/PATCH)
  • Delete (DELETE)
  • Postman API Documentation
  • Basic query-string filtering, sorting, and pagination of data entities
  • Geospatial querying of data entities
  • bbox ($geoWithin)
  • near ($near)
  • IoT API

GraphQL API

  • All Coolfire Objects accessible via GraphQL endpoint with strongly typed schema
  • Client driven query shaping
  • Unified query filtering syntax with
  • https://graphql.org/learn/

Realtime API

  • WebSocket based realtime messaging via Socket.io
  • DDP style Coolfire Unified Messaging Protocol for realtime data entity synchronization
  • Socket.io "rooms" implementation for subscribing to limited/targeted realtime events as needed

GraphQL realtime Subscriptions

  • Realtime bridge with REST and GraphQL APIs
  • Create, Update, or Delete operations result in an equivalent realtime message
  • Push Notifications

GeoSpatial Services

  • Latitude/Longitude GeoSpatial indexing
  • GeoJSON location data indexing
  • GeoFences
  • Realtime triggering of ingress/egress of devices into user defined geoFences
  • Drawable geolocated shapes, text, etc.

MicroServices

  • Authentication Services
  • Identity
  • OAuth
  • Two Factor (TOTP)
  • Facial Recognition
  • Main Coolfire Objects API
  • Sessions
  • Networks
  • Things
  • etc.

Updated 2 months ago


Core Technology Overview


The down and dirty details behind the Coolfire technology stack.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.