Skip to content

Commit 0b96015

Browse files
committed
Merge branch 'release/0.9.0' into master
2 parents 0c3fc30 + 3fb0f10 commit 0b96015

File tree

2 files changed

+156
-1
lines changed

2 files changed

+156
-1
lines changed

CONTRIBUTING.md

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# 💁 Contributing to this project
2+
3+
4+
> First off, thank you for considering contributing to this project.
5+
> It’s [people like you][ref-contributors] that keep this project alive and make it great!
6+
> Thank you! 🙏💜🎉👍
7+
8+
The following is a set of **guidelines for contributing** to this project.
9+
Use your best judgment and feel free to propose changes to this document in a pull request.
10+
11+
**Working on your first Pull Request?** You can learn how from this *free* series [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github)
12+
13+
### 💡 Your contribution - the sky is the limit 🌈
14+
15+
This is an open source project and we love to receive contributions from our community — [**you**][ref-contributors]!
16+
17+
There are many ways to contribute, from writing __tutorials__ or __blog posts__, improving the [__documentation__][ref-documentation], submitting __bug reports__ and __feature requests__ or
18+
__writing code__ which can be incorporated into the repository itself.
19+
20+
When contributing to this project, please feel free to discuss the change you wish to make via issue with the repository owners before making a change.
21+
22+
<!--Note that we have a [code of conduct][ref-code-of-conduct], please follow it in all your interactions with the project.-->
23+
24+
### 🐞 You want to report a bug or file an issue?
25+
26+
1. Ensure that it was **not already reported** and is being worked on by checking [open issues][ref-issues].
27+
2. Create a [new issue][ref-issues-new] with a **clear and descriptive title**
28+
3. Write a **detailed comment** with as much relevant information as possible including
29+
- *how to reproduce* the bug
30+
- a *code sample* or an *executable test case* demonstrating the expected behavior that is not occurring
31+
- any *files that could help* trace it down (i.e. logs)
32+
33+
### 🩹 You wrote a patch that fixes an issue?
34+
35+
1. Open a [new pull request (PR)][ref-pull-request-new] with the patch.
36+
2. Ensure the PR description clearly describes the problem and solution.
37+
3. Link the relevant **issue** if applicable ([how to link issues in PRs][ref-pull-request-how-to]).
38+
4. Ensure that [**no tests are failing**][ref-gh-actions] and **coding conventions** are met
39+
5. Submit the patch and await review.
40+
41+
### 🎁 You want to suggest or contribute a new feature?
42+
43+
That's great, thank you! You rock 🤘
44+
45+
If you want to dive deep and help out with development on this project, then first get the project [installed locally][ref-readme].
46+
After that is done we suggest you have a look at tickets in our [issue tracker][ref-issues].
47+
You can start by looking through the beginner or help-wanted issues:
48+
- [__Good first issues__][ref-issues-first] are issues which should only require a few lines of code, and a test or two.
49+
- [__Help wanted issues__][ref-issues-help] are issues which should be a bit more involved than beginner issues.
50+
These are meant to be a great way to get a smooth start and won't put you in front of the most complex parts of the system.
51+
52+
If you are up to more challenging tasks with a bigger scope, then there are a set of tickets with a __feature__, __enhancement__ or __improvement__ tag.
53+
These tickets have a general overview and description of the work required to finish.
54+
If you want to start somewhere, this would be a good place to start.
55+
That said, these aren't necessarily the easiest tickets.
56+
57+
For any new contributions please consider these guidelines:
58+
1. Open a [new pull request (PR)][ref-pull-request-new] with a **clear and descriptive title**
59+
2. Write a **detailed comment** with as much relevant information as possible including:
60+
- What your feature is intended to do?
61+
- How it can be used?
62+
- What alternatives where considered?
63+
- Has this feature impact on performance or stability of the project?
64+
65+
#### Your contribution responsibilities
66+
67+
Don't be intimidated by these responsibilities, they are easy to meet if you take your time to develop your feature 😌
68+
69+
- [x] Create issues for any major changes and enhancements that you wish to make. Discuss things transparently and get community feedback.
70+
- [x] Ensure (cross-)platform compatibility for every change that's accepted. An addition should not reduce the number of platforms that the project supports.
71+
- [x] Ensure **coding conventions** are met. Lint your code with the project's default tools.
72+
- [x] Add tests for your feature that prove it's working as expected. Code coverage should not drop below its previous value.
73+
- [x] Ensure none of the existing tests are failing after adding your changes.
74+
- [x] Document your public API code and ensure to add code comments where necessary.
75+
76+
77+
### ⚙️ How to set up the environment
78+
79+
Please consult the [README][ref-readme] for installation instructions.
80+
81+
<!-- REFERENCES -->
82+
83+
[ref-code-of-conduct]: t.b.d.
84+
[ref-contributors]: https://github.com/fireblade-engine/ecs/graphs/contributors
85+
[ref-documentation]: https://github.com/fireblade-engine/ecs/wiki
86+
[ref-gh-actions]: https://github.com/fireblade-engine/ecs/actions
87+
[ref-issues-first]: https://github.com/fireblade-engine/ecs/issues?q=is%3Aopen+is%3Aissue+label%3A"good+first+issue"
88+
[ref-issues-help]: https://github.com/fireblade-engine/ecs/issues?q=is%3Aopen+is%3Aissue+label%3A"help+wanted"
89+
[ref-issues-new]: https://github.com/fireblade-engine/ecs/issues/new/choose
90+
[ref-issues]: https://github.com/fireblade-engine/ecs/issues
91+
[ref-pull-request-how-to]: https://docs.github.com/en/github/writing-on-github/autolinked-references-and-urls
92+
[ref-pull-request-new]: https://github.com/fireblade-engine/ecs/compare
93+
[ref-readme]: https://github.com/fireblade-engine/ecs/blob/master/README.md

README.md

Lines changed: 63 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,70 @@
22

33
[![license](https://img.shields.io/badge/license-MIT-brightgreen.svg)](LICENSE)
44
[![github CI](https://github.com/fireblade-engine/math/workflows/CI/badge.svg)](https://github.com/fireblade-engine/math/actions?query=workflow%3ACI)
5+
[![swift version](https://img.shields.io/badge/swift-5.1+-blue.svg)](https://swift.org/download)
6+
[![platforms](https://img.shields.io/badge/platforms-%20macOS%20|%20iOS%20|%20tvOS%20-blue.svg)](#)
7+
[![platforms](https://img.shields.io/badge/platforms-linux-blue.svg)](#)
8+
[![platform-webassembly](https://img.shields.io/badge/Platform-WebAssembly-blue.svg)](https://github.com/swiftwasm/swift#swiftwasm)
59

6-
A dependency free, lightweight, fast math library for 2D and 3D vectors, quaternions and matrices in Swift with (optional) SIMD support.
10+
11+
A dependency free, lightweight, fast math library for 2D and 3D vectors, quaternions and matrices in Swift with (optional) SIMD support. It is developed and maintained as part of the [Fireblade Game Engine project](https://github.com/fireblade-engine).
12+
13+
14+
## 🚀 Getting Started
15+
16+
These instructions will get you a copy of the project up and running on your local machine and provide a code example.
17+
18+
### 📋 Prerequisites
19+
20+
* [Swift Package Manager (SPM)](https://github.com/apple/swift-package-manager)
21+
* [Swiftlint](https://github.com/realm/SwiftLint) for linting - (optional)
22+
* [SwiftEnv](https://swiftenv.fuller.li/) for Swift version management - (optional)
23+
24+
### 💻 Installing
25+
26+
Fireblade Math is available for all platforms that support [Swift 5.1](https://swift.org/) and higher and the [Swift Package Manager (SPM)](https://github.com/apple/swift-package-manager).
27+
28+
Extend the following lines in your `Package.swift` file or use it to create a new project.
29+
30+
```swift
31+
// swift-tools-version:5.1
32+
33+
import PackageDescription
34+
35+
let package = Package(
36+
name: "YourPackageName",
37+
dependencies: [
38+
.package(url: "https://github.com/fireblade-engine/math.git", from: "0.9.0")
39+
],
40+
targets: [
41+
.target(
42+
name: "YourTargetName",
43+
dependencies: ["FirebladeMath"])
44+
]
45+
)
46+
47+
```
48+
49+
## 💁 How to contribute
50+
51+
If you want to contribute please see the [CONTRIBUTION GUIDE](CONTRIBUTING.md) first.
52+
53+
To start your project contribution run these in your command line:
54+
55+
1. `git clone [email protected]:fireblade-engine/math.git fireblade-math`
56+
2. `cd fireblade-math`
57+
3. `make setupEnvironment`
58+
59+
Before commiting code please ensure to run:
60+
61+
- `make precommit`
62+
63+
This project is currently maintained by [@ctreffs](https://github.com/ctreffs).
64+
See also the list of [contributors](https://github.com/fireblade-engine/math/contributors) who participated in this project.
65+
66+
## 🔏 License
67+
68+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
769

870
## ♻ Alternatives
971

0 commit comments

Comments
 (0)