Skip to content

Commit f10c7fb

Browse files
committed
Initial public release of JLaunch
0 parents  commit f10c7fb

57 files changed

Lines changed: 11517 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.editorconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
insert_final_newline = true
7+
indent_style = space
8+
indent_size = 2
9+
trim_trailing_whitespace = true
10+
11+
[*.md]
12+
trim_trailing_whitespace = false

.gitattributes

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
* text=auto eol=lf
2+
3+
*.png binary
4+
*.ico binary
5+
*.icns binary
6+
*.dmg binary
7+
*.zip binary
8+
*.exe binary

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @LearnAIHubC
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Bug report
2+
description: Report a reproducible JLaunch problem
3+
title: "[Bug]: "
4+
labels: [bug]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: Thanks for taking the time to help improve JLaunch. Remove private paths, credentials, and proprietary logs before submitting.
9+
- type: input
10+
id: version
11+
attributes:
12+
label: JLaunch version
13+
placeholder: v1.0.0
14+
validations:
15+
required: true
16+
- type: dropdown
17+
id: os
18+
attributes:
19+
label: Operating system
20+
options: [macOS Apple Silicon, macOS Intel, Windows x64, Linux, Other]
21+
validations:
22+
required: true
23+
- type: dropdown
24+
id: mode
25+
attributes:
26+
label: Launch mode
27+
options: [Spring Boot Maven, Spring Boot JAR, Tomcat, Maven tool window, Application UI]
28+
validations:
29+
required: true
30+
- type: textarea
31+
id: reproduction
32+
attributes:
33+
label: Reproduction steps
34+
placeholder: Tell us the smallest sequence that reproduces the issue.
35+
validations:
36+
required: true
37+
- type: textarea
38+
id: expected
39+
attributes:
40+
label: Expected behavior
41+
validations:
42+
required: true
43+
- type: textarea
44+
id: logs
45+
attributes:
46+
label: Relevant logs
47+
description: Paste only sanitized logs. Do not include secrets or proprietary source.
48+
render: shell

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Security vulnerability
4+
url: https://github.com/LearnAIHubC/JLaunch/security/advisories/new
5+
about: Report vulnerabilities privately instead of opening a public issue.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Feature request
2+
description: Propose a focused improvement
3+
title: "[Feature]: "
4+
labels: [enhancement]
5+
body:
6+
- type: textarea
7+
id: problem
8+
attributes:
9+
label: Problem
10+
description: What workflow is difficult today?
11+
validations:
12+
required: true
13+
- type: textarea
14+
id: proposal
15+
attributes:
16+
label: Proposed solution
17+
description: Describe the smallest useful behavior and expected UI.
18+
validations:
19+
required: true
20+
- type: textarea
21+
id: alternatives
22+
attributes:
23+
label: Alternatives considered

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: npm
4+
directory: /
5+
schedule:
6+
interval: monthly
7+
open-pull-requests-limit: 5
8+
- package-ecosystem: github-actions
9+
directory: /
10+
schedule:
11+
interval: monthly
12+
open-pull-requests-limit: 5

.github/pull_request_template.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
## What changed
2+
3+
<!-- Describe the focused change. -->
4+
5+
## Why
6+
7+
<!-- Explain the user or developer impact. -->
8+
9+
## Verification
10+
11+
- [ ] `npm run check`
12+
- [ ] Manually verified the affected Run / Debug / Maven workflow
13+
- [ ] No private paths, credentials, proprietary logs, or generated release files included

.github/workflows/ci.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
test:
13+
name: Check · ${{ matrix.os }}
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
os: [macos-latest, windows-latest]
18+
runs-on: ${{ matrix.os }}
19+
steps:
20+
- name: Checkout
21+
uses: actions/checkout@v7
22+
- name: Set up Node.js
23+
uses: actions/setup-node@v7
24+
with:
25+
node-version: 22
26+
cache: npm
27+
- name: Install dependencies
28+
run: npm ci
29+
- name: Lint and test
30+
run: npm run check

.github/workflows/release.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "v*"
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
build:
13+
name: Build · ${{ matrix.name }}
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
include:
18+
- name: macOS
19+
os: macos-latest
20+
artifact: macos
21+
- name: Windows
22+
os: windows-latest
23+
artifact: windows
24+
runs-on: ${{ matrix.os }}
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v7
28+
- name: Set up Node.js
29+
uses: actions/setup-node@v7
30+
with:
31+
node-version: 22
32+
cache: npm
33+
- name: Install dependencies
34+
run: npm ci
35+
- name: Lint and test
36+
run: npm run check
37+
- name: Build macOS Apple Silicon
38+
if: runner.os == 'macOS'
39+
run: npm run dist -- --mac --arm64
40+
- name: Build macOS Intel
41+
if: runner.os == 'macOS'
42+
run: npm run dist -- --mac --x64
43+
- name: Build Windows x64
44+
if: runner.os == 'Windows'
45+
run: npm run dist -- --win --x64
46+
- name: Upload packages
47+
uses: actions/upload-artifact@v7
48+
with:
49+
name: release-${{ matrix.artifact }}
50+
path: |
51+
release/*.dmg
52+
release/*.zip
53+
release/*.exe
54+
if-no-files-found: error
55+
retention-days: 7
56+
57+
publish:
58+
name: Publish GitHub Release
59+
needs: build
60+
runs-on: ubuntu-latest
61+
steps:
62+
- name: Checkout release notes
63+
uses: actions/checkout@v7
64+
- name: Download packages
65+
uses: actions/download-artifact@v8
66+
with:
67+
path: artifacts
68+
merge-multiple: true
69+
- name: Generate checksums
70+
working-directory: artifacts
71+
run: sha256sum -- * > SHA256SUMS.txt
72+
- name: Create release
73+
env:
74+
GH_TOKEN: ${{ github.token }}
75+
run: gh release create "$GITHUB_REF_NAME" artifacts/* --repo "$GITHUB_REPOSITORY" --verify-tag --title "JLaunch $GITHUB_REF_NAME" --notes-file RELEASE_NOTES.md

0 commit comments

Comments
 (0)