2025-12-24 06:53:06 +01:00
2025-12-24 06:53:06 +01:00
2025-12-18 01:30:52 +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.
Description
No description provided
https://zenkanji.crylia.de
Readme 2 MiB
2026-02-28 00:32:00 +01:00
Languages
JavaScript 47.3%
Vue 37.3%
SCSS 14.1%
Java 0.7%
Dockerfile 0.4%
Other 0.2%