Table of Contents
Overview
This page provides guidance to those wanting to contribute to the project.
Here is a video on contributing to opensource.
Here is a course on how to contribute to open source: https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github
There is also a readme.md file at the top level that guides common activities.
The application components run in kubernetes. As a result, they must be packaged as images that can be picked up by the deployment specs.
Local development works differently for this than for production uat and production releases.
The flow of activities is something like this:
Development Flow
- pull or clone the repo
- create a new branch
- make the necessary changes
- test locally
- test out of that directory following directions in the local readme.md file
- write and run tests using chai
- build the docker image
- update the helm chart to point to temporary image location
- test with local reference implementation
- follow instructions for the reference impl in the root readme.md file
- deploy to cloud ?? how to do this?
- pull request for production ?? how to do this?
- distribute to distributed nodes ?? how to do this?
Getting Started
First pull or fork the latest from the develop branch.
Make a branch of for your changes.
Developing
Each subdirectory has a readme.md file that helps with the details of local development.
Developing the UI
Developing the APIs
Developing Common Code
Standard object notation is JSON. Keys/Attributes will be named using PascalCase example: {'Foo': 'val'},{'FooBar': 'val2'}
Objects will have singular names. Lists of objects will be names as plural form of singular object. ex: {"Foos" : [{"Foo":"val3"},{"Foo":"val4"}]