Skip to content

Commit cca6c47

Browse files
authored
[Doc] Repository documentation (#117)
1 parent 47839cf commit cca6c47

File tree

7 files changed

+277
-11
lines changed

7 files changed

+277
-11
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Bug Report
2+
description: Create a report to help reproduce and fix the issue
3+
title: "Bug: "
4+
labels: [ bug ]
5+
body:
6+
- type: input
7+
attributes:
8+
label: Version
9+
description: What version of imgui-java did you use?
10+
validations:
11+
required: true
12+
- type: textarea
13+
attributes:
14+
label: What happened?
15+
description: Also tell us, what did you expect to happen?
16+
placeholder: Tell us what you see!
17+
value: A bug happened!
18+
validations:
19+
required: true
20+
- type: textarea
21+
attributes:
22+
label: Reproduction
23+
description: How did you manage to make the error happen?
24+
placeholder: How did you do it?
25+
validations:
26+
required: true
27+
- type: textarea
28+
attributes:
29+
label: Relevant log output
30+
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
31+
render: bash
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Missing Bindings
2+
description: Create a report to help reproduce and fix the issue
3+
title: "Missing Bindings: "
4+
labels: [ "missing binding" ]
5+
body:
6+
- type: input
7+
attributes:
8+
label: Version
9+
description: What version of imgui-java did you use?
10+
validations:
11+
required: true
12+
- type: dropdown
13+
attributes:
14+
label: What part of the binding has gaps?
15+
options:
16+
- Dear ImGui
17+
- ImNodes
18+
- imgui-node-editor
19+
- ImGuizmo
20+
- implot
21+
- ImGuiColorTextEdit
22+
- ImGuiFileDialog
23+
- ImGui Club MemoryEditor
24+
validations:
25+
required: true
26+
- type: textarea
27+
attributes:
28+
label: What is missing?
29+
description: Tell us, what part of the API is missing?
30+
placeholder: Tell us what you are missing!
31+
value: Something is missing!
32+
validations:
33+
required: true
34+
- type: markdown
35+
attributes:
36+
value: |
37+
Please, provide additional references like links to a source code of the missing API.
38+
If there are several ways to implement the API, provide a pov of yourself.

.github/pull_request_template.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Description
2+
3+
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
4+
5+
Fixes # (issue)
6+
7+
## Type of change
8+
9+
Please check options that are relevant.
10+
11+
- [ ] Minor changes or tweaks (quality of life stuff)
12+
- [ ] Bug fix (non-breaking change which fixes an issue)
13+
- [ ] New feature (non-breaking change which adds functionality)
14+
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
15+
- [ ] This change requires a documentation update
16+
17+
# Checklist:
18+
19+
- [ ] My code follows the style guidelines of this project
20+
- [ ] I have performed a self-review of my own code
21+
- [ ] I have commented my code, particularly in hard-to-understand areas
22+
- [ ] I have made corresponding changes to the documentation
23+
- [ ] My changes generate no new warnings
24+
- [ ] I have added tests that prove my fix is effective or that my feature works
25+
- [ ] New and existing unit tests pass locally with my changes
26+
- [ ] Any dependent changes have been merged and published in downstream modules

.github/workflows/ci.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
name: CI
2-
on: [push, pull_request]
2+
on: [push]
33
jobs:
44
build-java:
55
strategy:
66
matrix:
7-
os: [ubuntu-20.04, macos-10.15]
7+
os: [ubuntu-latest, macos-latest]
88
name: Build Java
99
runs-on: ${{ matrix.os }}
1010
steps:
@@ -25,7 +25,7 @@ jobs:
2525
FREETYPE_URL: https://download.savannah.gnu.org/releases/freetype/freetype-2.10.4.tar.gz
2626
strategy:
2727
matrix:
28-
os: [ubuntu-20.04, macos-10.15]
28+
os: [ubuntu-latest, macos-latest]
2929
type: [win, linux, mac]
3030
freetype: [true, false]
3131
include:
@@ -36,11 +36,11 @@ jobs:
3636
- type: mac
3737
expected: /tmp/imgui/libsNative/macosx64/libimgui-java64.dylib
3838
exclude:
39-
- os: ubuntu-20.04
39+
- os: ubuntu-latest
4040
type: mac
41-
- os: macos-10.15
41+
- os: macos-latest
4242
type: win
43-
- os: macos-10.15
43+
- os: macos-latest
4444
type: linux
4545
name: Build Native (type=${{ matrix.type }}, freetype=${{ matrix.freetype }})
4646
runs-on: ${{ matrix.os }}
@@ -58,22 +58,22 @@ jobs:
5858
- name: Ant Version
5959
run: ant -version
6060

61-
- if: matrix.os == 'ubuntu-20.04'
61+
- if: matrix.os == 'ubuntu-latest'
6262
name: Install MinGW-w64/GCC/G++
6363
run: sudo apt install mingw-w64
6464

65-
- if: matrix.os == 'ubuntu-20.04' && matrix.type == 'linux' && matrix.freetype == true
65+
- if: matrix.os == 'ubuntu-latest' && matrix.type == 'linux' && matrix.freetype == true
6666
name: FreeType - Install
6767
run: sudo apt install libfreetype6-dev
6868

69-
- if: matrix.os == 'ubuntu-20.04' && matrix.type == 'win' && matrix.freetype == true
69+
- if: matrix.os == 'ubuntu-latest' && matrix.type == 'win' && matrix.freetype == true
7070
name: FreeType - Download
7171
run: |
7272
sudo wget -O /freetype.tar.gz ${{ env.FREETYPE_URL }}
7373
sudo mkdir /freetype
7474
sudo tar -xzf /freetype.tar.gz -C /freetype --strip-components=1
7575
76-
- if: matrix.os == 'ubuntu-20.04' && matrix.type == 'win' && matrix.freetype == true
76+
- if: matrix.os == 'ubuntu-latest' && matrix.type == 'win' && matrix.freetype == true
7777
name: FreeType - Compile & Install
7878
working-directory: /freetype
7979
run: |

.github/workflows/update_natives.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
uses: dawidd6/action-download-artifact@v2
1010
with:
1111
workflow: ci.yml
12-
branch: master
12+
branch: main
1313
event: push
1414
path: /tmp/artifacts
1515

CODE_OF_CONDUCT.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
We as members, contributors, and leaders pledge to make participation in our
6+
community a harassment-free experience for everyone, regardless of age, body
7+
size, visible or invisible disability, ethnicity, sex characteristics, gender
8+
identity and expression, level of experience, education, socio-economic status,
9+
nationality, personal appearance, race, religion, or sexual identity
10+
and orientation.
11+
12+
We pledge to act and interact in ways that contribute to an open, welcoming,
13+
diverse, inclusive, and healthy community.
14+
15+
## Our Standards
16+
17+
Examples of behavior that contributes to a positive environment for our
18+
community include:
19+
20+
* Demonstrating empathy and kindness toward other people
21+
* Being respectful of differing opinions, viewpoints, and experiences
22+
* Giving and gracefully accepting constructive feedback
23+
* Accepting responsibility and apologizing to those affected by our mistakes,
24+
and learning from the experience
25+
* Focusing on what is best not just for us as individuals, but for the
26+
overall community
27+
28+
Examples of unacceptable behavior include:
29+
30+
* The use of sexualized language or imagery, and sexual attention or
31+
advances of any kind
32+
* Trolling, insulting or derogatory comments, and personal or political attacks
33+
* Public or private harassment
34+
* Publishing others' private information, such as a physical or email
35+
address, without their explicit permission
36+
* Other conduct which could reasonably be considered inappropriate in a
37+
professional setting
38+
39+
## Enforcement Responsibilities
40+
41+
Community leaders are responsible for clarifying and enforcing our standards of
42+
acceptable behavior and will take appropriate and fair corrective action in
43+
response to any behavior that they deem inappropriate, threatening, offensive,
44+
or harmful.
45+
46+
Community leaders have the right and responsibility to remove, edit, or reject
47+
comments, commits, code, wiki edits, issues, and other contributions that are
48+
not aligned to this Code of Conduct, and will communicate reasons for moderation
49+
decisions when appropriate.
50+
51+
## Scope
52+
53+
This Code of Conduct applies within all community spaces, and also applies when
54+
an individual is officially representing the community in public spaces.
55+
Examples of representing our community include using an official e-mail address,
56+
posting via an official social media account, or acting as an appointed
57+
representative at an online or offline event.
58+
59+
## Enforcement
60+
61+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
62+
reported to the community leaders responsible for enforcement at
63+
64+
All complaints will be reviewed and investigated promptly and fairly.
65+
66+
All community leaders are obligated to respect the privacy and security of the
67+
reporter of any incident.
68+
69+
## Enforcement Guidelines
70+
71+
Community leaders will follow these Community Impact Guidelines in determining
72+
the consequences for any action they deem in violation of this Code of Conduct:
73+
74+
### 1. Correction
75+
76+
**Community Impact**: Use of inappropriate language or other behavior deemed
77+
unprofessional or unwelcome in the community.
78+
79+
**Consequence**: A private, written warning from community leaders, providing
80+
clarity around the nature of the violation and an explanation of why the
81+
behavior was inappropriate. A public apology may be requested.
82+
83+
### 2. Warning
84+
85+
**Community Impact**: A violation through a single incident or series
86+
of actions.
87+
88+
**Consequence**: A warning with consequences for continued behavior. No
89+
interaction with the people involved, including unsolicited interaction with
90+
those enforcing the Code of Conduct, for a specified period of time. This
91+
includes avoiding interactions in community spaces as well as external channels
92+
like social media. Violating these terms may lead to a temporary or
93+
permanent ban.
94+
95+
### 3. Temporary Ban
96+
97+
**Community Impact**: A serious violation of community standards, including
98+
sustained inappropriate behavior.
99+
100+
**Consequence**: A temporary ban from any sort of interaction or public
101+
communication with the community for a specified period of time. No public or
102+
private interaction with the people involved, including unsolicited interaction
103+
with those enforcing the Code of Conduct, is allowed during this period.
104+
Violating these terms may lead to a permanent ban.
105+
106+
### 4. Permanent Ban
107+
108+
**Community Impact**: Demonstrating a pattern of violation of community
109+
standards, including sustained inappropriate behavior, harassment of an
110+
individual, or aggression toward or disparagement of classes of individuals.
111+
112+
**Consequence**: A permanent ban from any sort of public interaction within
113+
the community.
114+
115+
## Attribution
116+
117+
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118+
version 2.0, available at
119+
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
120+
121+
Community Impact Guidelines were inspired by [Mozilla's code of conduct
122+
enforcement ladder](https://github.com/mozilla/diversity).
123+
124+
[homepage]: https://www.contributor-covenant.org
125+
126+
For answers to common questions about this code of conduct, see the FAQ at
127+
https://www.contributor-covenant.org/faq. Translations are available at
128+
https://www.contributor-covenant.org/translations.

CONTRIBUTING.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Contributing to imgui-java
2+
We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
3+
4+
- Reporting a bug
5+
- Discussing the current state of the code
6+
- Submitting a fix
7+
- Proposing new features
8+
- Becoming a maintainer
9+
10+
## We Develop with Github
11+
We use github to host code, to track issues and feature requests, as well as accept pull requests.
12+
13+
## We Use [Github Flow](https://docs.github.com/en/get-started/quickstart/github-flow), So All Code Changes Happen Through Pull Requests
14+
Pull requests are the best way to propose changes to the codebase (we use [Github Flow](https://docs.github.com/en/get-started/quickstart/github-flow)). We actively welcome your pull requests:
15+
16+
1. Fork the repo and create your branch from `main`.
17+
2. Make sure your code lints.
18+
3. Issue that pull request!
19+
20+
## Any contributions you make will be under the Apache License 2.0
21+
In short, when you submit code changes, your submissions are understood to be under the same [Apache-2.0 License](https://choosealicense.com/licenses/apache-2.0/) that covers the project. Feel free to contact the maintainers if that's a concern.
22+
23+
## Report bugs using Github's [issues](https://github.com/SpaiR/imgui-java/issues)
24+
We use GitHub issues to track public bugs. Report a bug by [opening a new issue](); it's that easy!
25+
26+
## Write bug reports with detail, background, and sample code
27+
**Great Bug Reports** tend to have:
28+
29+
- A quick summary and/or background
30+
- Steps to reproduce
31+
- Be specific!
32+
- Give sample code if you can.
33+
- What you expected would happen
34+
- What actually happens
35+
- Notes (possibly including why you think this might be happening, or stuff you tried that didn't work)
36+
37+
People *love* thorough bug reports. I'm not even kidding.
38+
39+
## Use a Consistent Coding Style
40+
You can run `./gradlew check` to verify your changes beforehand.
41+
42+
## License
43+
By contributing, you agree that your contributions will be licensed under its Apache-2.0 License.

0 commit comments

Comments
 (0)