Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
50d4940
feat(i18n): Implement full internationalization support for 9 languag…
Lib-LOCALE Feb 16, 2026
150d997
fix(i18n): Replace remaining hardcoded strings with t() calls in 12 c…
Lib-LOCALE Feb 16, 2026
07311bd
fix(i18n): Replace all remaining hardcoded strings in PizzInt, Playba…
Lib-LOCALE Feb 16, 2026
9dc64ed
fix(i18n): Replace all showLoading/showError hardcoded strings across…
Lib-LOCALE Feb 16, 2026
d0bc88f
fix(i18n): Final deep scan - translate panel-empty, export, and disab…
Lib-LOCALE Feb 16, 2026
58bcc1e
fix(i18n): Translate remaining title attributes and panel-empty strings
Lib-LOCALE Feb 16, 2026
c7d0658
fix(i18n): Propagate common keys to all 9 locale files & fix CountryB…
Lib-LOCALE Feb 16, 2026
23b20ba
i18n: restructure and translate popups section across all locales
Lib-LOCALE Feb 17, 2026
8236010
merge(main): update PR #86 and resolve merge conflicts
koala73 Feb 17, 2026
8823952
fix(i18n): close key coverage gaps and localize merged UI strings
koala73 Feb 17, 2026
be44332
fix(trending): add missing English stopwords to suppressed terms
koala73 Feb 17, 2026
a1355d9
fix(i18n): localize remaining UI literals and expand locale coverage
koala73 Feb 17, 2026
dfe9924
fix(i18n): localize remaining map/tooltips/popups and close locale gaps
koala73 Feb 17, 2026
adb22c0
feat(i18n): add Russian locale and fix key parity across all 10 langu…
koala73 Feb 17, 2026
7a72c38
fix(trending): add proper-noun heuristic fallback when ML unavailable
koala73 Feb 17, 2026
d7622a2
feat: add floating pill community discussion widget
koala73 Feb 17, 2026
1d01899
feat(i18n): add Arabic (RTL) and Chinese Simplified locales
koala73 Feb 17, 2026
c874d93
feat(i18n): eliminate ~95 hardcoded English strings and remove dead U…
koala73 Feb 18, 2026
4c73cbb
fix(i18n): fix 5 P1/P2 bugs — timeAgo count, community widget, Linux …
koala73 Feb 18, 2026
e2c68d3
fix(i18n): normalize regional language codes in RTL detection
koala73 Feb 18, 2026
01cf5a3
fix(i18n): replace remaining hardcoded English in source and locales
koala73 Feb 18, 2026
c9c2047
feat(i18n): add Japanese locale (1132 keys)
koala73 Feb 18, 2026
d559af5
fix(i18n): remove dead English fallback literals in CountryIntelModal
koala73 Feb 18, 2026
79f9f49
fix(i18n): remove dead English fallback literals in StoryModal
koala73 Feb 18, 2026
304a04c
feat(feeds): add NHK World and Nikkei Asia RSS feeds for Japan coverage
koala73 Feb 18, 2026
be2a01d
fix: community widget idempotency guard + suppress missing i18n help …
koala73 Feb 18, 2026
c798ba9
chore: bump version to 2.3.9
koala73 Feb 18, 2026
723a622
merge: resolve conflicts with main (community widget, trending keywor…
koala73 Feb 18, 2026
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
11 changes: 11 additions & 0 deletions .github/workflows/build-desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,11 @@ jobs:
node_target: 'x86_64-pc-windows-msvc'
label: 'Windows-x64'
timeout: 120
- platform: 'ubuntu-22.04'
args: ''
node_target: 'x86_64-unknown-linux-gnu'
label: 'Linux-x64'
timeout: 120

runs-on: ${{ matrix.platform }}
name: Build (${{ matrix.label }})
Expand Down Expand Up @@ -80,6 +85,12 @@ jobs:
workspaces: './src-tauri -> target'
cache-on-failure: true

- name: Install Linux system dependencies
if: contains(matrix.platform, 'ubuntu')
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf

- name: Install frontend dependencies
run: npm ci

Expand Down
45 changes: 43 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "world-monitor",
"private": true,
"version": "2.3.8",
"version": "2.3.9",
"type": "module",
"scripts": {
"lint:md": "markdownlint-cli2 '**/*.md'",
Expand Down Expand Up @@ -66,6 +66,8 @@
"@xenova/transformers": "^2.17.2",
"d3": "^7.9.0",
"deck.gl": "^9.2.6",
"i18next": "^25.8.10",
"i18next-browser-languagedetector": "^8.2.1",
"maplibre-gl": "^5.16.0",
"onnxruntime-web": "^1.23.2",
"topojson-client": "^3.1.0",
Expand Down
9 changes: 5 additions & 4 deletions scripts/desktop-package.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,16 @@ const sign = hasFlag('sign');
const skipNodeRuntime = hasFlag('skip-node-runtime');
const showHelp = hasFlag('help') || hasFlag('h');

const validOs = new Set(['macos', 'windows']);
const validOs = new Set(['macos', 'windows', 'linux']);
const validVariants = new Set(['full', 'tech']);

if (showHelp) {
console.log('Usage: npm run desktop:package -- --os <macos|windows> --variant <full|tech> [--sign] [--skip-node-runtime]');
console.log('Usage: npm run desktop:package -- --os <macos|windows|linux> --variant <full|tech> [--sign] [--skip-node-runtime]');
process.exit(0);
}

if (!validOs.has(os)) {
console.error('Usage: npm run desktop:package -- --os <macos|windows> --variant <full|tech> [--sign] [--skip-node-runtime]');
console.error('Usage: npm run desktop:package -- --os <macos|windows|linux> --variant <full|tech> [--sign] [--skip-node-runtime]');
process.exit(1);
}

Expand All @@ -37,7 +37,7 @@ if (!validVariants.has(variant)) {
process.exit(1);
}

const bundles = os === 'macos' ? 'app,dmg' : 'nsis,msi';
const bundles = os === 'macos' ? 'app,dmg' : os === 'linux' ? 'appimage' : 'nsis,msi';
const env = {
...process.env,
VITE_VARIANT: variant,
Expand All @@ -60,6 +60,7 @@ if (variant === 'tech') {
const resolveNodeTarget = () => {
if (env.NODE_TARGET) return env.NODE_TARGET;
if (os === 'windows') return 'x86_64-pc-windows-msvc';
if (os === 'linux') return 'x86_64-unknown-linux-gnu';
if (os === 'macos') {
if (process.arch === 'arm64') return 'aarch64-apple-darwin';
if (process.arch === 'x64') return 'x86_64-apple-darwin';
Expand Down
13 changes: 13 additions & 0 deletions scripts/download-node.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Supported targets:
- x86_64-pc-windows-msvc
- x86_64-apple-darwin
- aarch64-apple-darwin
- x86_64-unknown-linux-gnu

Environment:
NODE_VERSION Node.js version to bundle (default: 22.14.0)
Expand Down Expand Up @@ -70,6 +71,9 @@ if [[ -z "${TARGET}" ]]; then
;;
esac
;;
Linux)
TARGET="x86_64-unknown-linux-gnu"
;;
*)
echo "Unsupported RUNNER_OS: ${RUNNER_OS}" >&2
exit 1
Expand All @@ -91,6 +95,9 @@ if [[ -z "${TARGET}" ]]; then
;;
esac
;;
Linux)
TARGET="x86_64-unknown-linux-gnu"
;;
MINGW*|MSYS*|CYGWIN*|Windows_NT)
TARGET="x86_64-pc-windows-msvc"
;;
Expand Down Expand Up @@ -122,6 +129,12 @@ case "${TARGET}" in
NODE_RELATIVE_PATH="bin/node"
OUTPUT_NAME="node"
;;
x86_64-unknown-linux-gnu)
DIST_NAME="node-v${NODE_VERSION}-linux-x64"
ARCHIVE_NAME="${DIST_NAME}.tar.gz"
NODE_RELATIVE_PATH="bin/node"
OUTPUT_NAME="node"
;;
*)
echo "Unsupported target: ${TARGET}" >&2
exit 1
Expand Down
2 changes: 1 addition & 1 deletion src-tauri/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "world-monitor"
version = "2.3.8"
version = "2.3.9"
description = "World Monitor desktop application"
authors = ["World Monitor"]
edition = "2021"
Expand Down
7 changes: 4 additions & 3 deletions src-tauri/tauri.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"$schema": "https://schema.tauri.app/config/2",
"productName": "World Monitor",
"mainBinaryName": "world-monitor",
"version": "2.3.8",
"version": "2.3.9",
"identifier": "app.worldmonitor.desktop",
"build": {
"beforeDevCommand": "npm run dev",
Expand Down Expand Up @@ -32,7 +32,8 @@
"app",
"dmg",
"nsis",
"msi"
"msi",
"appimage"
],
"category": "Productivity",
"shortDescription": "World Monitor desktop app (supports World and Tech variants)",
Expand Down Expand Up @@ -60,4 +61,4 @@
"hardenedRuntime": true
}
}
}
}
3 changes: 2 additions & 1 deletion src-tauri/tauri.finance.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"app",
"dmg",
"nsis",
"msi"
"msi",
"appimage"
],
"macOS": {
"hardenedRuntime": true
Expand Down
3 changes: 2 additions & 1 deletion src-tauri/tauri.tech.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"app",
"dmg",
"nsis",
"msi"
"msi",
"appimage"
],
"macOS": {
"hardenedRuntime": true
Expand Down
Loading