# Goose Project Licensing Details: Apache 2.0 Open Source License

> Understand Goose project licensing details including the Apache 2.0 open source license. Discover its permissive terms and explicit patent protection.

- Repository: [goose/goose](https://github.com/aaif-goose/goose)
- Tags: licensing-details
- Published: 2026-04-07

---

**The Goose project is released under the Apache License 2.0, a permissive open-source license with explicit patent protection, as declared in the [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml) manifest, `LICENSE` file, and [`README.md`](https://github.com/aaif-goose/goose/blob/main/README.md) badge of the aaif-goose/goose repository.**

The aaif-goose/goose repository provides a scalable load testing framework written in Rust. Understanding the **Goose project licensing details** is essential for developers integrating the library into proprietary tools or contributing modifications upstream. The Apache License 2.0 governs all code, documentation, and assets, granting broad usage rights while protecting contributors against patent litigation.

## Where License Information Is Declared in Goose

The aaif-goose/goose repository declares its licensing terms in three canonical locations, ensuring transparency for both human readers and automated tooling.

### Cargo.toml Package Metadata

In the core crate's [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml) file at line 13, the license is explicitly specified as `Apache-2.0`:

```toml
license = "Apache-2.0"

```

This metadata enables automated license scanners and the crates.io registry to identify the project's permissive licensing status immediately upon inspection.

### LICENSE File Contents

The repository root contains a `LICENSE` file spanning lines 1 through 191, which reproduces the full Apache License 2.0 text. The document begins with the standard Apache boilerplate:

```text
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

```

This file serves as the legal basis for all copyright and patent grants associated with the Goose codebase.

### README.md License Badge

At line 10 of [`README.md`](https://github.com/aaif-goose/goose/blob/main/README.md), the project displays a license badge linking to the official Apache 2.0 license page. This visual indicator reinforces the project's open-source status for casual browsers and potential contributors evaluating repository compatibility with their organizational requirements.

## Apache 2.0 Permissions and Implications

The **Apache License 2.0** applied to the Goose project offers several key provisions:

- **Commercial Use** — You may use Goose in proprietary applications without disclosing your source code.
- **Modification Rights** — Forking and modifying the codebase is permitted provided you retain the original license and copyright notices.
- **Patent Protection** — The license includes an explicit patent grant from contributors, protecting users against patent infringement claims related to the covered code.
- **Distribution** — Binary and source distributions must include a copy of the `LICENSE` file or a link to the Apache 2.0 text.

Unlike copyleft licenses, Apache 2.0 does not impose requirements to release derivative works under the same license, making it suitable for enterprise load testing infrastructure.

## Compliance Guidelines for Goose Users

When integrating Goose into your projects or contributing to the repository, follow these standards to maintain license compliance.

### Adding License Headers to New Files

For new Rust source files contributed to the Goose ecosystem, include the standard Apache 2.0 header:

```rust
// Copyright © <year> <author>
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

fn main() {
    println!("Hello, Goose!");
}

```

### Referencing the License in Extension Crates

If you publish a crate extending Goose functionality, declare the compatible license in your [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml):

```toml
[package]
name = "my_goose_extension"
version = "0.1.0"
authors = ["Your Name <you@example.com>"]
edition = "2021"
license = "Apache-2.0"   # ← matches the project's license

```

Aligning your package metadata with the Goose project's licensing details ensures ecosystem consistency and legal clarity.

## Summary

- The aaif-goose/goose repository is licensed under the **Apache License 2.0**.
- License declarations appear in [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml) (line 13), the `LICENSE` file (lines 1–191), and [`README.md`](https://github.com/aaif-goose/goose/blob/main/README.md) (line 10).
- Apache 2.0 permits commercial use, modification, and patent-protected distribution without copyleft requirements.
- Contributors should preserve license headers and declare `Apache-2.0` in derivative crate metadata.

## Frequently Asked Questions

### What license does the Goose project use?

The Goose project uses the **Apache License 2.0**. This permissive open-source license is declared in the repository's [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml) manifest and documented in the root `LICENSE` file, covering all source code, documentation, and related assets.

### Can I use Goose in commercial applications?

Yes. The Apache 2.0 license explicitly permits commercial use, allowing you to integrate Goose into proprietary load testing systems or SaaS platforms without releasing your source code. You must include the original copyright notices and a copy of the Apache 2.0 license text in your distributions.

### Where is the license information stored in the Goose repository?

The aaif-goose/goose repository declares licensing in three locations: the [`Cargo.toml`](https://github.com/aaif-goose/goose/blob/main/Cargo.toml) file specifies `license = "Apache-2.0"` at line 13, the `LICENSE` file contains the full license text from lines 1–191, and the [`README.md`](https://github.com/aaif-goose/goose/blob/main/README.md) displays a license badge at line 10 linking to the official Apache license page.

### Do I need to include license headers when contributing to Goose?

While the Apache 2.0 license does not strictly require headers in every file, the project convention uses the standard Apache header for new Rust source files. You should include the copyright notice and license boilerplate shown in the compliance examples above when submitting pull requests to the aaif-goose/goose repository.