Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .github/scripts/prepare-pages-site.sh
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
#!/usr/bin/env bash
set -euo pipefail
export LANG=C.UTF-8 LC_ALL=C.UTF-8

# Builds _site/ for GitHub Project Pages (https://<org>.github.io/Oswl/).
# Landing HTML lives in landing/ (not served by the Spring Boot app).
# Usage: .github/scripts/prepare-pages-site.sh [owner/repo]

REPO="${1:-}"
ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
cd "$ROOT"

mkdir -p _site
cp src/main/resources/static/landing/index.html _site/index.html
cp landing/index.html _site/index.html
cp landing/landing-i18n.js _site/
cp -r landing/i18n _site/
cp -r src/main/resources/static/css _site/
cp -r src/main/resources/static/icon _site/
cp -r src/main/resources/static/graphic _site/
Expand All @@ -27,10 +31,14 @@ sed -i \
-e 's|src="/icon/|src="icon/|g' \
-e 's|src="/graphic/|src="graphic/|g' \
-e 's|src="/img/|src="img/|g' \
-e 's|src="/landing-i18n.js"|src="landing-i18n.js"|g' \
-e "s|href=\"/oss-notices\"|href=\"${LICENSE_LINK}\"|g" \
_site/index.html

test -f _site/index.html
test -f _site/landing-i18n.js
test -f _site/i18n/en.json
test -f _site/i18n/ko.json
test -f _site/css/tailwind.css
test -f _site/icon/icon-logo.svg
test -f _site/graphic/symbol_w.svg
Expand Down
130 changes: 130 additions & 0 deletions _site/i18n/en.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
{
"meta": {
"title": "OsWL - Enterprise SCA Platform",
"description": "OsWL is an enterprise-grade Software Composition Analysis platform that continuously tracks CVE vulnerabilities and license risks across your open source dependencies."
},
"nav": {
"features": "Features",
"platform": "Platform",
"howItWorks": "How It Works",
"themeToggle": "Toggle light/dark theme"
},
"hero": {
"badge": "Enterprise SCA Platform",
"title": "Know Every Vulnerability<br>in Your <span class=\"gradient-text\">Open Source Stack</span>",
"subtitle": "OsWL continuously scans your dependencies for CVEs, license obligations, and transitive risks — giving security and compliance teams complete SBOM visibility from a single self-hosted platform.",
"ctaPrimary": "Explore Capabilities",
"ctaSecondary": "See the Platform"
},
"stats": {
"multiSource": "Multi-source",
"multiSourceLabel": "GHSA · OSV Advisories",
"ecosystemsLabel": "Package Ecosystems",
"onDemand": "On-demand",
"onDemandLabel": "deps.dev Enrichment",
"cvssLabel": "Scoring Supported",
"gitNative": "Git-native",
"gitNativeLabel": "GitHub · GitLab · Bitbucket"
},
"features": {
"label": "Core Capabilities",
"title": "End-to-End Software<br>Composition Analysis",
"subtitle": "From dependency ingestion to remediation, OsWL covers the full SCA lifecycle with enterprise-grade accuracy and auditability.",
"cveTitle": "CVE Vulnerability Tracking",
"cveDesc": "On-demand enrichment from deps.dev and OSV. Every component is cross-referenced against CVSS 3.x scores and patch availability.",
"cveTag": "deps.dev · OSV · GHSA",
"licenseTitle": "License Risk Management",
"licenseDesc": "Automatic SPDX classification of OSS licenses — copyleft, permissive, proprietary — with obligation rules, conflict detection, and NOTICE / SPDX SBOM export per scan.",
"licenseTag": "GPL · LGPL · Apache · MIT · AGPL · MPL",
"riskTitle": "Risk Trend Analysis",
"riskDesc": "Track your security posture across scans. Visualize critical, high, medium, and low severity trends over time, with optional AI-generated deviation insights when an LLM provider is configured.",
"riskTag": "Version-over-version delta",
"transitiveTitle": "Transitive Dependency Traversal",
"transitiveDesc": "Uncover vulnerabilities hidden deep in your dependency graph. DependencyPath analysis traces both direct and transitive exposure across every supported manifest.",
"transitiveTag": "Maven · npm · PyPI · Go · Cargo · NuGet · RubyGems",
"gitTitle": "Git-Native Repository Integration",
"gitDesc": "Connect GitHub, GitLab, or Bitbucket via Personal Access Token. Branch-aware imports, per-version snapshots, and per-project scan history out of the box.",
"gitTag": "GitHub · GitLab · Bitbucket",
"cliTitle": "CLI & CI/CD Pipeline Scanning",
"cliDesc": "Integrate OsWL into any build pipeline with a single CLI command. Only parsed manifest metadata is uploaded — no source code leaves your build host. Bearer-token API keys per project or organization-wide.",
"cliTag": "Manifest-only upload"
},
"platform": {
"label": "Live Platform",
"title": "Built for Security &<br>Compliance Teams",
"subtitle": "Every screen is engineered for actionability — from CVE triage to remediation tracking, no context switching required.",
"tabSc": "Security Center",
"tabProjects": "Projects",
"tabLicense": "License Analysis",
"tabRisk": "Risk Trend",
"altSc": "OsWL Security Center — CVE triage with CVSS scores",
"altProjects": "OsWL Projects Dashboard — multi-project risk overview",
"altLicense": "OsWL License Analysis — copyleft and compliance risk tracking",
"altRisk": "OsWL Risk Trend — scan-over-scan security posture"
},
"vuln": {
"label": "Vulnerability Intelligence",
"title": "Prioritize What<br>Actually Matters",
"desc": "OsWL surfaces exploitable, patchable vulnerabilities first. CVSS scores, exploit maturity, and fix availability are enriched automatically from deps.dev and OSV advisory feeds.",
"bullet1": "<strong style=\"color:var(--text-primary)\">Critical &amp; High</strong> vulnerabilities flagged with patch targets",
"bullet2": "<strong style=\"color:var(--text-primary)\">Fix version surfaced</strong> — know if a patched release exists before triaging",
"bullet3": "<strong style=\"color:var(--text-primary)\">Transitive exposure</strong> traced to root dependency paths",
"bullet4": "<strong style=\"color:var(--text-primary)\">Bulk status updates</strong> — mark findings reviewed or ignored in one action",
"demoTitle": "backend-api · v3.2.0 — Security Center"
},
"table": {
"component": "Component",
"cveId": "CVE ID",
"cvss": "CVSS",
"severity": "Severity"
},
"severity": {
"critical": "Critical",
"high": "High",
"medium": "Medium"
},
"licCard": {
"gpl2Type": "Copyleft · Strong",
"lgplType": "Copyleft · Weak",
"apacheType": "Permissive",
"mitType": "Permissive",
"mplType": "Copyleft · File-level",
"proprietaryType": "Commercial",
"restricted": "Restricted",
"caution": "Caution",
"permitted": "Permitted",
"unknown": "Unknown"
},
"license": {
"label": "License Intelligence",
"title": "Eliminate<br>Compliance Blind Spots",
"desc": "Automatically classify every SPDX license across your dependency tree. Identify copyleft obligations, license conflicts, and components that need manual legal review before they reach production.",
"bullet1": "Copyleft licenses requiring full source disclosure",
"bullet2": "Weak copyleft or dual-licensed — legal review recommended",
"bullet3": "Permissive licenses — safe for commercial use"
},
"workflow": {
"label": "Workflow",
"title": "Up and Scanning<br>in Minutes",
"subtitle": "OsWL integrates directly into your existing development workflow. No agents, no heavyweight setup.",
"step1Title": "Connect Your Repository",
"step1Desc": "Add a GitHub, GitLab, or Bitbucket Personal Access Token. OsWL discovers repositories and branches and imports manifests — no source code upload required.",
"step2Title": "Run a Dependency Scan",
"step2Desc": "OsWL parses your lock files and build manifests, resolves the transitive dependency graph, and cross-references every component against deps.dev, OSV, and your license policy.",
"step3Title": "Triage & Remediate",
"step3Desc": "Review findings in the Security Center, filter by severity, bulk-update statuses, and track your risk posture scan-over-scan in the Risk Trend dashboard.",
"step4Title": "Automate in CI/CD",
"step4Desc": "Gate pull requests with the OsWL CLI. Bearer-token API keys enable automated scanning in any pipeline — Jenkins, GitHub Actions, GitLab CI, or custom build servers."
},
"cta": {
"title": "Secure Your<br><span class=\"shimmer-text\">Open Source Stack</span>",
"sub": "Deploy OsWL on-premise and gain full SBOM visibility across every project, team, and dependency in your organization.",
"primary": "See How It Works →",
"secondary": "Explore Features"
},
"footer": {
"copyright": "Copyright © 2026 OsWL, Licensed under the MIT License.",
"ossNotices": "Open Source Notices",
"langLabel": "Language"
}
}
130 changes: 130 additions & 0 deletions _site/i18n/ko.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
{
"meta": {
"title": "OsWL - 엔터프라이즈 SCA 플랫폼",
"description": "OsWL은 오픈소스 의존성의 CVE 취약점과 라이선스 리스크를 지속적으로 추적하는 엔터프라이즈급 소프트웨어 구성 분석(SCA) 플랫폼입니다."
},
"nav": {
"features": "기능",
"platform": "플랫폼",
"howItWorks": "사용 방법",
"themeToggle": "라이트/다크 테마 전환"
},
"hero": {
"badge": "엔터프라이즈 SCA 플랫폼",
"title": "<span class=\"gradient-text\">오픈소스 스택</span>의<br>모든 취약점을 파악하세요",
"subtitle": "OsWL은 의존성의 CVE, 라이선스 의무, 전이적 리스크를 지속적으로 스캔하여 보안·컴플라이언스 팀이 단일 자체 호스팅 플랫폼에서 완전한 SBOM 가시성을 확보할 수 있게 합니다.",
"ctaPrimary": "기능 살펴보기",
"ctaSecondary": "플랫폼 보기"
},
"stats": {
"multiSource": "다중 소스",
"multiSourceLabel": "GHSA · OSV Advisories",
"ecosystemsLabel": "패키지 생태계",
"onDemand": "온디맨드",
"onDemandLabel": "deps.dev 보강",
"cvssLabel": "점수 산정 지원",
"gitNative": "Git 네이티브",
"gitNativeLabel": "GitHub · GitLab · Bitbucket"
},
"features": {
"label": "핵심 기능",
"title": "엔드투엔드<br>소프트웨어 구성 분석",
"subtitle": "의존성 수집부터 조치까지, OsWL은 엔터프라이즈급 정확도와 감사 추적 가능성으로 전체 SCA 라이프사이클을 커버합니다.",
"cveTitle": "CVE 취약점 추적",
"cveDesc": "deps.dev와 OSV에서 온디맨드로 보강합니다. 모든 컴포넌트를 CVSS 3.x 점수 및 패치 가능 여부와 교차 검증합니다.",
"cveTag": "deps.dev · OSV · GHSA",
"licenseTitle": "라이선스 리스크 관리",
"licenseDesc": "OSS 라이선스의 SPDX 자동 분류 — 카피레프트, 허용적, 독점 — 의무 규칙, 충돌 감지, 스캔별 NOTICE / SPDX SBOM 출력을 제공합니다.",
"licenseTag": "GPL · LGPL · Apache · MIT · AGPL · MPL",
"riskTitle": "리스크 트렌드 분석",
"riskDesc": "스캔 간 보안 상태를 추적합니다. Critical, High, Medium, Low 심각도 추이를 시각화하고, LLM 프로바이더 설정 시 AI 생성 편차 인사이트를 선택적으로 제공합니다.",
"riskTag": "버전 간 델타",
"transitiveTitle": "전이적 의존성 탐색",
"transitiveDesc": "의존성 그래프 깊숙이 숨은 취약점을 발견합니다. DependencyPath 분석이 지원되는 모든 매니페스트에서 직접·전이적 노출을 추적합니다.",
"transitiveTag": "Maven · npm · PyPI · Go · Cargo · NuGet · RubyGems",
"gitTitle": "Git 네이티브 저장소 연동",
"gitDesc": "Personal Access Token으로 GitHub, GitLab, Bitbucket을 연결합니다. 브랜치 인식 임포트, 버전별 스냅샷, 프로젝트별 스캔 히스토리를 기본 제공합니다.",
"gitTag": "GitHub · GitLab · Bitbucket",
"cliTitle": "CLI & CI/CD 파이프라인 스캔",
"cliDesc": "단일 CLI 명령으로 모든 빌드 파이프라인에 OsWL을 통합합니다. 파싱된 매니페스트 메타데이터만 업로드되며 소스 코드는 빌드 호스트를 벗어나지 않습니다. 프로젝트별 또는 조직 전체 Bearer 토큰 API 키를 지원합니다.",
"cliTag": "매니페스트 전용 업로드"
},
"platform": {
"label": "라이브 플랫폼",
"title": "보안 &amp;<br>컴플라이언스 팀을 위해",
"subtitle": "모든 화면은 실행 가능성을 위해 설계되었습니다 — CVE 트리아지부터 조치 추적까지, 컨텍스트 전환 없이 작업할 수 있습니다.",
"tabSc": "보안 센터",
"tabProjects": "프로젝트",
"tabLicense": "라이선스 분석",
"tabRisk": "리스크 트렌드",
"altSc": "OsWL 보안 센터 — CVSS 점수 기반 CVE 트리아지",
"altProjects": "OsWL 프로젝트 대시보드 — 다중 프로젝트 리스크 개요",
"altLicense": "OsWL 라이선스 분석 — 카피레프트 및 컴플라이언스 리스크 추적",
"altRisk": "OsWL 리스크 트렌드 — 스캔 간 보안 상태"
},
"vuln": {
"label": "취약점 인텔리전스",
"title": "진짜 중요한 것부터<br>우선순위를 정하세요",
"desc": "OsWL은 악용 가능하고 패치 가능한 취약점을 먼저 표면화합니다. CVSS 점수, 익스플로잇 성숙도, 수정 가능 여부가 deps.dev와 OSV 권고 피드에서 자동으로 보강됩니다.",
"bullet1": "<strong style=\"color:var(--text-primary)\">Critical &amp; High</strong> 취약점을 패치 대상과 함께 표시",
"bullet2": "<strong style=\"color:var(--text-primary)\">수정 버전 표시</strong> — 트리아지 전에 패치된 릴리스 존재 여부 확인",
"bullet3": "<strong style=\"color:var(--text-primary)\">전이적 노출</strong>을 루트 의존성 경로까지 추적",
"bullet4": "<strong style=\"color:var(--text-primary)\">일괄 상태 업데이트</strong> — 한 번에 검토 완료 또는 무시 처리",
"demoTitle": "backend-api · v3.2.0 — 보안 센터"
},
"table": {
"component": "컴포넌트",
"cveId": "CVE ID",
"cvss": "CVSS",
"severity": "심각도"
},
"severity": {
"critical": "Critical",
"high": "High",
"medium": "Medium"
},
"licCard": {
"gpl2Type": "카피레프트 · 강력",
"lgplType": "카피레프트 · 약함",
"apacheType": "허용적",
"mitType": "허용적",
"mplType": "카피레프트 · 파일 단위",
"proprietaryType": "상용",
"restricted": "제한",
"caution": "주의",
"permitted": "허용",
"unknown": "미확인"
},
"license": {
"label": "라이선스 인텔리전스",
"title": "컴플라이언스<br>사각지대를 제거하세요",
"desc": "의존성 트리의 모든 SPDX 라이선스를 자동 분류합니다. 카피레프트 의무, 라이선스 충돌, 프로덕션 배포 전 법무 검토가 필요한 컴포넌트를 식별합니다.",
"bullet1": "전체 소스 공개가 필요한 카피레프트 라이선스",
"bullet2": "약한 카피레프트 또는 이중 라이선스 — 법무 검토 권장",
"bullet3": "허용적 라이선스 — 상업적 사용에 안전"
},
"workflow": {
"label": "워크플로",
"title": "몇 분 안에<br>스캔을 시작하세요",
"subtitle": "OsWL은 기존 개발 워크플로에 직접 통합됩니다. 에이전트나 무거운 설정이 필요 없습니다.",
"step1Title": "저장소 연결",
"step1Desc": "GitHub, GitLab, Bitbucket Personal Access Token을 등록합니다. OsWL이 저장소와 브랜치를 탐색하고 매니페스트를 임포트합니다 — 소스 코드 업로드는 필요 없습니다.",
"step2Title": "의존성 스캔 실행",
"step2Desc": "OsWL이 lock 파일과 빌드 매니페스트를 파싱하고 전이적 의존성 그래프를 해석한 뒤, 모든 컴포넌트를 deps.dev, OSV, 라이선스 정책과 교차 검증합니다.",
"step3Title": "트리아지 & 조치",
"step3Desc": "보안 센터에서 결과를 검토하고, 심각도별로 필터링하며, 상태를 일괄 업데이트하고, 리스크 트렌드 대시보드에서 스캔 간 보안 상태를 추적합니다.",
"step4Title": "CI/CD 자동화",
"step4Desc": "OsWL CLI로 Pull Request를 게이트합니다. Bearer 토큰 API 키로 Jenkins, GitHub Actions, GitLab CI 또는 커스텀 빌드 서버 등 모든 파이프라인에서 자동 스캔이 가능합니다."
},
"cta": {
"title": "<span class=\"shimmer-text\">오픈소스 스택</span>을<br>안전하게 보호하세요",
"sub": "OsWL을 온프레미스에 배포하고 조직의 모든 프로젝트, 팀, 의존성에 대한 완전한 SBOM 가시성을 확보하세요.",
"primary": "사용 방법 보기 →",
"secondary": "기능 살펴보기"
},
"footer": {
"copyright": "Copyright © 2026 OsWL, Licensed under the MIT License.",
"ossNotices": "오픈소스 고지",
"langLabel": "언어"
}
}
Loading
Loading