Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
e6cc257
M9/#41: configure Vitest + store tests (auth, songs, sessions) — 53 t…
RebelliousSmile May 26, 2026
d104c81
M9/#39: add aria-labels, aria-live, autocomplete, and role attributes…
RebelliousSmile May 26, 2026
565a495
M9/#43: set CSP in tauri.conf.json; pnpm audit --prod shows no vulner…
RebelliousSmile May 26, 2026
4734dc8
fix/FIX-1: add ESLint flat config, lint scripts, fix all warnings
RebelliousSmile May 26, 2026
38fba51
fix/FIX-2: use pnpm instead of npm in tauri.conf.json build commands
RebelliousSmile May 26, 2026
c0b6988
fix/FIX-3: use single cmd_translate_lines IPC call in SongDetailView
RebelliousSmile May 26, 2026
f41d833
fix/FIX-4: add similarity.spec.ts with 10 unit tests
RebelliousSmile May 26, 2026
79407c6
fix/FIX-5: recordLine(true) on each line advance in karaoke mode
RebelliousSmile May 26, 2026
b419c14
fix/FIX-6: document PyO3/cargo test limitation and add conditional ca…
RebelliousSmile May 26, 2026
fd5c40f
fix/FIX-7: redirect to /dashboard after login and when already authen…
RebelliousSmile May 26, 2026
9153592
docs: init AIDD context + consolidate external docs into aidd_docs/
RebelliousSmile May 26, 2026
3651d4e
feat(auth): wire LoginView and RegisterView to backend (#54)
RebelliousSmile May 26, 2026
93b20c5
feat(songs): list, filter, add, remove songs UI (#55)
RebelliousSmile May 26, 2026
af5616c
feat(display): aligned lyrics view with phonetic and translation togg…
RebelliousSmile May 26, 2026
9f34b1b
feat(practice): karaoke, fill-blanks and quiz modes (#57, #58, #60)
RebelliousSmile May 26, 2026
c5c567a
feat(genius): settings token, search and import lyrics (#61)
RebelliousSmile May 26, 2026
e622a47
feat(stats,profile): stats view and profile export/import (#44, #35)
RebelliousSmile May 26, 2026
839dc78
perf(translation): batch LibreTranslate requests per song (#50)
RebelliousSmile May 26, 2026
e862020
feat(oral): Web Speech API practice mode with similarity scoring (#62)
RebelliousSmile May 26, 2026
e0f4e6e
chore(quality): tests, a11y and security hardening (#41, #39, #43)
RebelliousSmile May 26, 2026
e83d66a
ci(release): multi-OS packaging and release workflow (#33, #34)
RebelliousSmile May 26, 2026
936ecf4
chore(cleanup): remove legacy root-level docs, wire DashboardView
RebelliousSmile May 26, 2026
614e694
fix(build): remove invalid bundle.identifier + cargo update
RebelliousSmile May 26, 2026
96ab862
fix(commands): align commands.rs with actual rust-backend API
RebelliousSmile May 26, 2026
24c2e04
fix(dist): remove PyO3 + fix CI pnpm version
RebelliousSmile May 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
30 changes: 30 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: CI

on:
push:
branches: [main, feat/**]
pull_request:
branches: [main]

jobs:
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- uses: pnpm/action-setup@v4
with:
version: 10 # pnpm 11 requires Node ≥ 22; pin to match local version (10.x)
- name: Install dependencies
run: pnpm --dir lyremember-app install
- name: Type check + build
run: pnpm --dir lyremember-app build
- name: Unit tests
run: pnpm --dir lyremember-app exec vitest run
# cargo check only — cargo test blocked by PyO3 0.20.x / Python 3.13 incompatibility
- name: Cargo check rust-backend
run: cargo check --manifest-path rust-backend/Cargo.toml
env:
PYO3_USE_ABI3_FORWARD_COMPATIBILITY: "1"
66 changes: 66 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Release

on:
push:
tags:
- 'v*'

jobs:
release:
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: ubuntu-22.04
args: ''
- platform: macos-latest
args: '--target aarch64-apple-darwin'
- platform: macos-latest
args: '--target x86_64-apple-darwin'
- platform: windows-latest
args: ''

runs-on: ${{ matrix.platform }}

steps:
- uses: actions/checkout@v4

- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20

- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: latest

- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: aarch64-apple-darwin,x86_64-apple-darwin

- name: Install Ubuntu dependencies
if: matrix.platform == 'ubuntu-22.04'
run: |
sudo apt-get update
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf

- name: Install frontend dependencies
run: pnpm --dir lyremember-app install

- name: Build Tauri app
uses: tauri-apps/tauri-action@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
projectPath: lyremember-app
tagName: ${{ github.ref_name }}
releaseName: 'LyRemember ${{ github.ref_name }}'
releaseBody: |
See the assets below to download this version for your platform.
releaseDraft: true
prerelease: false
args: ${{ matrix.args }}
271 changes: 0 additions & 271 deletions ARCHITECTURE.md

This file was deleted.

Loading
Loading