diff --git a/README.md b/README.md index 48a402f..bb25b15 100644 --- a/README.md +++ b/README.md @@ -1 +1,47 @@ -# litmus \ No newline at end of file +# Litmus - an A/B testing(Split) framework at Navi + +Litmus, +is an A/B testing platform created by LOS team. +It can be used for running experiments, feature toggle, configuration managements in microservices-based distributed systems: + +* Feature experimentation +* Experiment analysis +* Feature toggle +* Product optimization/improvements + +### Architecture +![Alt text](readme/A_B.png) + +## Get Involved + +Litmus is an open source project with open governance. We welcome contributions from the Navi community, and we’d love your help to improve and extend the +project. Here are [some ideas](https://github.cmd.navi-tech.in/medici/litmus/issues) for how to get involved. Many of them don’t even require any coding. + +## Contributing + +See [CONTRIBUTING](./readme/DEVELOPER_CONTRIBUTION.md). + + +## Related Repositories + +### Documentation + +* Code walk through: https://drive.google.com/file/d/1oKLPnfQXzDOSQNe8l95fBgxAh_ViJI1L/view?usp=sharing +* Source: https://github.cmd.navi-tech.in/medici/litmus + +### Maintainers + +Below are the official maintainers of the Litmus project. + +* [@chandresh-pancholi](https://github.cmd.navi-tech.in/chandresh-pancholi) + +## Get in Touch + +Have questions, suggestions, bug reports? Reach the project community via these channels: + +* [Slack chat room][slack] +* GitHub [issues](https://github.cmd.navi-tech.in/medici/litmus/issues) + + +[unleash]: https://www.getunleash.io/ +[slack]: https://go-navi.slack.com/archives/C02L2AA89L0 \ No newline at end of file diff --git a/readme/A_B.png b/readme/A_B.png new file mode 100644 index 0000000..97453b7 Binary files /dev/null and b/readme/A_B.png differ diff --git a/readme/DEVELOPER_CONTRIBUTION.md b/readme/DEVELOPER_CONTRIBUTION.md new file mode 100644 index 0000000..4ede6d1 --- /dev/null +++ b/readme/DEVELOPER_CONTRIBUTION.md @@ -0,0 +1,50 @@ +# How to Contribute to Litmus + +We'd love your help! + +We gratefully welcome improvements to documentation as well as to code. + +Table of Contents: + +* [How to set up locally](#how-to-set-up-locally) +* [Making a Change](#making-a-change) +* [Branches](#branches) + +## How to set up locally +* Install Java 17 +* Install Postgres, Redis with bloom filter module, Kafka + +## Making a Change + +**Before making any significant changes, please open an issue**. Each issue +should describe the following: + +* Requirement - what kind of business use case are you trying to solve? +* Problem - what in Litmus blocks you from solving the requirement? +* Proposal - what do you suggest to solve the problem or improve the existing + situation? +* Any open questions to address + +Discussing your proposed changes ahead of time will make the contribution +process smooth for everyone. Once the approach is agreed upon, make your changes +and open a pull request (PR). Each PR should describe: + +* Which problem it is solving. Normally it should be simply a reference to the + corresponding issue, e.g. `Resolves #13`. +* What changes are made to achieve that. + +Your pull request is most likely to be accepted if **each commit**: + +* Has a [good commit message][good-commit-msg]. In summary: + * Separate subject from body with a blank line + * Limit the subject line to 50 characters + * Capitalize the subject line + * Do not end the subject line with a period + * Use the imperative mood in the subject line + * Wrap the body at 72 characters + * Use the body to explain _what_ and _why_ instead of _how_ + +## Branches + +Upstream repository should contain only maintenance branches (e.g. `release-1.0`). For feature +branches use forked repository.