BriteCore's Technology

BriteCore is built on modern technology. Below is an overview of the current technology stack, architecture, key technology components, languages used, and API protocols employed in BriteCore.
 

 Frontend

  • Javascript

    • knockout.js for newer pages

    • Mootools.js for older pages (Migrating to Knockout.js)

  • HTML

    • JINJA2 - Deliverables Templating

    • Mako - Screen Renders

  • CSS

    • CSS3 with backwards compatibility to IE9

    • SCSS preprocessor

 

Backend

  • Scripting: Python 2.7.9 / Slow migration to Python 3.5+ underway.

  • Reports: Pandas / Jupyter

  • Database: MySQL / Aurora

  • Key/Value Store: Redis

  • Messaging: Rabbit MQ

  • Documents

    • JINJA2 - newer configurable documents

    • LATEX - older stock documents (Migrating to JINJA2)

  • Tests

    • Unit Tests - pytest

    • Integration Tests - Selenium with our own published open source wrappers

  • Framework: Web.py

 

Devops

  • Servers: ECS

  • Database: RDS

  • File Storage: S3

  • Search: Elastic Search

  • Reporting: Autoscale Group

  • Caching: Elasticache

  • Logs: Kibana 4

  • Monitoring: Icinga

  • Testing: Jenkins

  • Sitewide query: RunDeck

  • Repo: GitHub

  • Access: IAM

  • Provisioning:

    • Salt Stack: Development Environment

    • Puppet: Deployment Environment (Migrating to Salt)