Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
99be5f0
Add immersive graph mode
mreichhoff Sep 18, 2026
7b475d7
Make search text larger; make listen buttons
mreichhoff Sep 18, 2026
56b06e8
Shorten search placeholder
mreichhoff Sep 18, 2026
64f1fe0
Add Japanese immersive mode
mreichhoff Sep 19, 2026
be21b92
Drop HSK from immersive mode
mreichhoff Sep 19, 2026
41b14a3
Fix cytoscape console warnings
mreichhoff Sep 19, 2026
ad71afd
Add local AI/anki integrations to immersive view
mreichhoff Sep 19, 2026
6b28893
Improve detail card styling
mreichhoff Sep 19, 2026
8859df4
Modify frequency colors, allowing customization
mreichhoff Sep 19, 2026
8c316ce
Avoid detail card overlap with relevant graph nodes
mreichhoff Sep 20, 2026
d3fe333
Allow kana and sentence lookups in immersive mode
mreichhoff Sep 20, 2026
bf7cccf
Minor UI tweaks
mreichhoff Sep 20, 2026
174317d
Fix JP freqs/colors, add to kanji cards
mreichhoff Sep 20, 2026
1a6ee89
Ensure connections can be viewed with the buttons
mreichhoff Sep 20, 2026
b12db44
Switch frequency color code to teal
mreichhoff Sep 21, 2026
335a16d
Add translations to select graph nodes
mreichhoff Sep 22, 2026
e8579b1
Add TTS highlighting; more glosses
mreichhoff Sep 22, 2026
fb11e18
Make explore mode a separate PWA
mreichhoff Sep 25, 2026
83d2f94
Prefer shorter glosses in JP explorer
mreichhoff Sep 25, 2026
7c115ea
Add deeplinking to explorer mode
mreichhoff Sep 25, 2026
0e5058d
Tweak icons
mreichhoff Sep 25, 2026
84982f6
Fade in new nodes on pan
mreichhoff Sep 26, 2026
72508e1
Default to Chinese on PWA, but remember lang choice
mreichhoff Sep 26, 2026
d81a83a
Show more edges on node click
mreichhoff Sep 26, 2026
55aa03d
Add offline dict for explorer mode
mreichhoff Sep 26, 2026
660c186
Add immersive mode tests; minor bug fix
mreichhoff Sep 26, 2026
539741c
Run immersive mode tests on PR
mreichhoff Sep 26, 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
25 changes: 25 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Tests

on:
pull_request:
push:
branches: [main]
workflow_dispatch:

permissions:
contents: read

jobs:
test:
name: Explorer tests
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
- run: npm ci
- run: npm test
- run: npm run build
4 changes: 4 additions & 0 deletions firebase.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@
"source": "/components/**",
"destination": "/components/index.html"
},
{
"source": "/explorer/**",
"destination": "/explorer/index.html"
},
{
"source": "**",
"destination": "/index.html"
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
"rollup": "^2.79.1"
},
"scripts": {
"test": "node --test scripts/tests/*.test.mjs",
"build": "rollup --config",
"watch": "rollup -c -w",
"serve": "firebase emulators:start"
Expand Down
154 changes: 154 additions & 0 deletions public/IMMERSIVE.md

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions public/asset-service-worker.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ self.addEventListener("activate", (event) => {
caches.keys().then((keyList) =>
Promise.all(
keyList.map((key) => {
if (key !== cacheName) {
if (key.startsWith('hanzigraph-') && key !== cacheName) {
return caches.delete(key);
}
})
Expand Down Expand Up @@ -90,4 +90,4 @@ self.addEventListener("message", (event) => {
getPaths(event);
return;
}
});
});
Loading
Loading