Licensing Information for the Brush Project: Apache 2.0 Terms and Compliance
The Brush project is distributed under the Apache License 2.0, a permissive open-source license that allows commercial use, modification, and distribution provided you retain the original copyright notice and license text.
The Brush repository by Arthur Brussee (ArthurBrussee/brush) is a high-performance neural radiance field rendering library written in Rust. Understanding the licensing information for the Brush project is essential before integrating its Gaussian splatting and radiance field capabilities into commercial applications or derivative works. This guide explains the specific Apache 2.0 terms governing the codebase, compliance requirements for redistribution, and how to properly attribute the project in your own Rust applications.
Apache License 2.0 Overview
The Brush project is released under the Apache License, Version 2.0, as explicitly stated in the repository's root LICENSE file. This permissive open-source license allows you to use, modify, and distribute the code freely, even within proprietary or commercial projects, with minimal restrictions.
According to the LICENSE file in the ArthurBrussee/brush repository, the Apache 2.0 license grants broad permissions while requiring only that you include the original copyright notice and license text with any distribution. The license also provides an express grant of patent rights from contributors to users, protecting against patent litigation.
Key Permissions and Requirements
When using the Brush project under Apache 2.0, the following specific terms apply:
-
Permissive Commercial Use: You may use, modify, and distribute Brush code in commercial, closed-source, or open-source projects without paying royalties or seeking additional permission.
-
Attribution Obligations: All copies of the code—whether source or binary distributions—must retain the original copyright notice and include the full license text. The repository does not contain a separate
NOTICEfile, so no additional attribution beyond the license text is required. -
Patent Grant: Contributors provide a royalty-free patent license for any patents they own that cover their contributions to the project. This protects users from patent infringement claims related to the Brush codebase.
-
Modification Tracking: If you alter any source files from the repository, you must add a prominent notice stating that you have modified the files.
-
No Warranty Disclaimer: The software is provided "as-is" without warranties of any kind, as stated in the
LICENSEfile.
Implementing License Compliance
To comply with the licensing information for the Brush project when creating derivative works or redistributions, follow these implementation patterns:
Adding License Headers to Rust Source Files
When creating new files based on Brush code or adding the standard Apache 2.0 header to your own files in a fork, use this header block:
// 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() {
// Your code here…
}
Declaring the License in Cargo.toml
If you fork or repackage Brush components, ensure your Cargo.toml manifest correctly declares the SPDX license identifier to match the root LICENSE file:
[package]
name = "brush"
version = "0.1.0"
authors = ["Arthur Brussee <...>"]
edition = "2021"
license = "Apache-2.0" # <-- matches the LICENSE file
description = "A high‑performance neural‑radiance‑field rendering library"
Documenting the License in README Files
Include a clear license section in your project documentation linking to the LICENSE file:
## License
Brush is released under the **Apache License 2.0**. See the full license text in the [LICENSE file](https://github.com/ArthurBrussee/brush/blob/main/LICENSE).
Critical License Files in the Repository
The ArthurBrussee/brush repository contains several files that define and document the licensing information:
-
LICENSE(root): Contains the complete Apache License, Version 2.0 legal text governing the entire project. -
Cargo.toml: Declares the machine-readable SPDX license identifierlicense = "Apache-2.0"that package managers and automated tools use to detect compliance requirements. -
README.md: Provides a high-level project overview with a brief license notice directing users to the fullLICENSEfile. -
CHANGELOG.md: Tracks version history and modifications, which is useful for documenting significant changes that might affect licensing interpretations or attribution requirements.
Summary
- The Brush project (
ArthurBrussee/brush) uses the Apache License 2.0, a permissive license permitting commercial and private use. - You must retain the original copyright notice and include the license text when redistributing code or binaries from the repository.
- The
LICENSEfile in the repository root contains the full legal text, whileCargo.tomldeclares the SPDX identifier"Apache-2.0". - Modified versions require prominent notices stating that files have been altered from the original Brush codebase.
Frequently Asked Questions
What license covers the Brush project by Arthur Brussee?
The Brush project is distributed under the Apache License, Version 2.0. This information is explicitly stated in the LICENSE file at the root of the repository and confirmed by the license = "Apache-2.0" field in the Cargo.toml manifest file.
Can I use Brush code in a proprietary commercial application?
Yes. The Apache 2.0 license is permissive, allowing you to integrate Brush into closed-source commercial products without releasing your own source code. You must, however, include the original Brush LICENSE file and copyright notices in your distribution, and note any modifications you make to the original files.
Do I need to include the full Apache 2.0 license text when redistributing Brush?
Yes. All redistributions of Brush code—whether in source or binary form—must include the complete license text from the original LICENSE file. Additionally, you must preserve any copyright headers and state any changes you have made to the source files.
Where is the official licensing information declared in the repository?
The primary licensing information is located in the LICENSE file at the repository root. Secondary confirmations appear in Cargo.toml (declaring the SPDX identifier) and README.md (providing a summary notice). The CHANGELOG.md file tracks version changes but also serves as a reference for license-related updates over time.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →