# Contributing and Fundamentals

To talk about cloud native applications and systems, we need to define cloud native. CNCF provides a high-level overview of what it means to be cloud native and lists some implementations and the benefits they provide in the [CNCF Cloud Native Definition v1.0](https://github.com/cncf/toc/blob/master/DEFINITION.md).

The [cloud native principles](https://github.com/cloud-native-principles/cloud-native-principles) seek to clarify further the underlying fundamental concepts of what it means to be cloud native.

NOTE: This is a work in progress.

## Fundamental Concepts

* Service discovery
* Loose coupling
* Microservices
* Low overhead/coarse-grained packaging&#x20;
  * examples: containers, unikernel
* Declarative consumption model
  * includes APIs and configuration
  * applies to all layers: infra, workloads, platform, and components
* Designed for automation
  * applies to testing, deployment, application and platform autoscaling, infra and network provisioning
* Immutable infrastructure&#x20;

Each of these concepts is covered in more depth in [cloud-native-principles.md](https://github.com/cloud-native-principles/cloud-native-principles/blob/master/cloud-native-principles.md).

When these principles are implemented, they lead to benefits such as:

* Increased interoperability
* Increased resilience
* Increased scalability
* Lowered risk

Defining these concepts help in applying cloud native methodologies to different technology domains. For instance, in the networking and communication service provider spaces, the [Cloud Native Networking papers](/cloud-native-networking-preamble-1.md) illustrate this.

## Contributing to and Using this content

**CONTRIBUTING**

We encourage civil discourse and debate about the principles. It's not only acceptable but desirable for the points to be discussed and adapted to where the community as a whole feels we are. In other words, it is ok to disagree with a principle and propose an alternative.

How to contribute:

* [Add ideas and comments to existing issues](https://github.com/cloud-native-principles/cloud-native-principles/issues)
* [create a new issue](https://github.com/cloud-native-principles/cloud-native-principles/issues/new)
* Make changes to documents by:
  * [fork the repo](https://github.com/cloud-native-principles/cloud-native-principles/fork)
  * make your change in your fork (+branch)
  * [create a PR](https://github.com/cloud-native-principles/cloud-native-principles/pulls)

**LICENSE**

This work is licensed under a [Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/).

You are free to:

* Share — copy and redistribute the material in any medium or format
* Adapt — remix, transform, and build upon the material for any purpose, even commercially.

Under the following terms:

* Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
* No additional restrictions — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://networking.cloud-native-principles.org/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
