Repositories Overview
The KillrVideo application consists of multiple repositories which implement the various architecture layers (see the architecture page for a review of the layers).
Web Tier Repositories
- The Web Client and Web Server code is implemented in the killrvideo-web repository.
Microservices Tier Repositories
There are multiple implementations of the KillrVideo microservices tier in various languages:
- The Java implementation is found in the killrvideo-java repository.
- The Node.js implementation is found in the killrvideo-nodejs repository.
- The C# implementation is found in the killrvideo-csharp repository.
- The Python implementation is found in the killrvideo-python repository.
These repositories contain Dockerfile
definitions to build Docker images for the various service
implementations for the KillrVideo application. These repos are linked to Travis CI, which builds the
Docker images and publishes them to DockerHub.
Each of these implementations has dependencies on the following common repository which is implemented as a Git subtree:
- The killrvideo-service-protos contains the gRPC service definitions.
The killrvideo-generator repository contains a test data generator which exercises the microservices to insert data into the KillrVideo database. This repository has the same dependencies as the various microservice tier implementations. This would only require changes in cases where there are changes to the killrvideo-service-protos.
Data Tier Repositories
- The killrvideo-data repository defines schema used by the KillrVideo application, including CQL for Cassandra tables, DSE Search schema, and Graph schema.
- The killrvideo-cdm repository contains a sample data set for the Cassandra Dataset Manager which can be used with the KillrVideo application.
Infrastructure Repositories
The following repositories are used to build up infrastructure elements such as Docker images which are used in the deployed KillrVideo application.
The killrvideo-all-in-one repository provides the simplest possible configuration for starting the KillrVideo application in Docker on your desktop.
The killrvideo-docker-common repository provides composable set of Docker Compose scripts for running KillrVideo in various configurations useful for development and testing, including adding [OpsCenter][opscenter], metrics collection, security, and swapping between the various microservice tier implementations.
The killrvideo-dse-config provides scripts for loading the schema defined in killrvideo-data into a DataStax Enterprise node running in Docker, or a remote cluster, as described in Setting up the Docker Environment
Documentation Repositories
- The killrvideo.github.io repository creates this documentation site.