Crylia 049eaa1807
Release Build / build-docker (push) Successful in 1m9s
Release Build / build-android-and-release (push) Successful in 7m14s
feat: add sound effects, improved stroke recognition, instant locale switching with scramble text animation
- Add SoundManager with Web Audio API synthesized sounds (stroke error, drawing complete, session complete)
- Add sound effects toggle in settings (persisted via localStorage)
- Improve stroke recognition: curvature similarity, max point deviation, stroke length ratio checks
- Loosen thresholds for long strokes and first-stroke positioning
- Implement instant locale switching (no save required)
- Add ScrambleText component with character-by-character morphing animation
- Apply ScrambleText globally across all views, widgets, and dialogs
- Add i18n keys for sound effects settings (EN/DE/JA)
2026-04-18 22:19:36 +02:00
2026-02-28 00:03:50 +01:00
2025-12-18 01:30:52 +01:00

ZenKanji

ZenKanji is a web and mobile application designed to help users learn and review Japanese Kanji effectively. It provides a modern and intuitive interface for studying, tracking progress, and staying motivated on your language-learning journey.

Project Structure

This project is a monorepo containing two main packages:

  • client/: A Vue.js 3 application built with Vite that serves as the frontend. It is also configured with Capacitor to allow for native mobile builds.
  • server/: A Node.js and Express application that provides the backend API for user authentication, data synchronization, and study progression.

Getting Started

To get the application running locally, you will need to set up both the client and the server.

Prerequisites

Server Setup

  1. Navigate to the server directory:

    cd server
    
  2. Install dependencies:

    npm install
    
  3. Set up environment variables: Create a .env file in the server/ directory and configure your database connection and any other required variables.

  4. Start the development server:

    npm run dev
    

    The server should now be running on the port specified in your configuration (e.g., http://localhost:3000).

Client Setup

  1. Navigate to the client directory:

    cd client
    
  2. Install dependencies:

    npm install
    
  3. Configure environment variables: Create a .env file in the client/ directory to point to the correct backend API URL.

    VITE_API_URL=http://localhost:3000/api/v1
    
  4. Run the development server:

    npm run dev
    

    The application should be accessible at http://localhost:5173.

Technologies Used

Frontend (Client)

Backend (Server)

  • Framework: Express.js
  • Database: MongoDB
  • Authentication: JWT-based and using your Wanikani API Key for login

Features

  • Kanji Drawing: Interactive canvas for practicing Kanji writing.
  • Spaced Repetition System (SRS): Smart review scheduling to optimize learning.
  • Progress Tracking: Dashboard with widgets for accuracy, streaks, mastery, and more.
  • Cross-Platform Sync: Synchronize your study progress across web and mobile devices.
  • Collections: Browse and study Kanji by levels or themes.
S
Description
No description provided
https://zenkanji.crylia.de
Readme 2.3 MiB
2026-04-28 22:56:17 +02:00
Languages
JavaScript 49.4%
Vue 37.4%
SCSS 12.9%
Dockerfile 0.2%
HTML 0.1%