|
1 | | -<!-- Badges --> |
2 | | - |
3 | | - |
4 | | - |
| 1 | +<div align="center"> |
5 | 2 |
|
| 3 | +# 🇯🇵 Kana Go |
6 | 4 |
|
| 5 | +**Master Japanese Hiragana, Katakana, and Romaji with a simple, interactive flashcard app.** |
7 | 6 |
|
8 | | -# Kana Go |
| 7 | + |
| 8 | +<img src="https://img.shields.io/badge/Status-Active-4caf50?style=flat-square" /> |
| 9 | + |
9 | 10 |
|
10 | | -**Kana Go** is a simple and interactive web app that helps users learn and practice Japanese Kana (Hiragana, Katakana, and Romaji). The app randomizes characters, providing a fun way to test recognition skills and study Japanese writing systems. |
11 | 11 |
|
12 | | -## Preview |
| 12 | +<h3> |
| 13 | + <a href="https://developers-together.github.io/Kana-Go.github.io/">🚀 Try the Live Demo</a> |
| 14 | + <span> | </span> |
| 15 | + <a href="https://youtu.be/x3q9771LkKM?si=utNBwbvaOiRXGR00">🎥 Watch Video Demo</a> |
| 16 | +</h3> |
13 | 17 |
|
14 | | -<p align="center"> |
15 | | - <img width="70%" src="https://github.com/user-attachments/assets/3b93be6b-0aba-4369-be06-88292f64c57a"> |
16 | | -</p> |
| 18 | +</div> |
17 | 19 |
|
| 20 | +--- |
18 | 21 |
|
19 | | -## Features |
| 22 | +## 📖 About |
20 | 23 |
|
21 | | -- **Kana Go Display:** Click anywhere to generate a random character. |
22 | | -- **Switch Between Systems:** Buttons to toggle between Hiragana, Katakana, and Romaji. |
23 | | -- **Answer Reveal:** Click the main area to reveal the answer. |
24 | | -- **Responsive Design:** Works seamlessly across devices with an elegant UI. |
| 24 | +**Kana Go** is a minimalist web application designed to help users practice Japanese characters. Whether you are just starting with Hiragana or testing your memory on Katakana, Kana Go provides a distraction-free environment to test your recognition skills. |
25 | 25 |
|
26 | | -## Tech Stack |
| 26 | +## 🖼️ Preview |
| 27 | + |
| 28 | +<p align="center"> |
| 29 | + <img width="80%" src="https://github.com/user-attachments/assets/3b93be6b-0aba-4369-be06-88292f64c57a" alt="Kana Go Preview"> |
| 30 | +</p> |
27 | 31 |
|
28 | | -- **HTML5**: Structure of the web page. |
29 | | -- **CSS3**: Styling, including modern fonts and button effects. |
30 | | -- **JavaScript (ES6)**: Logic for character generation and user interaction. |
| 32 | +## ✨ Features |
31 | 33 |
|
32 | | -## Live Demo |
33 | | -Try it out [here](https://developers-together.github.io/Kana-Go.github.io/). |
| 34 | +* **Three Writing Systems:** Easily toggle between **Hiragana**, **Katakana**, and **Romaji** modes using the control buttons. |
| 35 | +* **Interactive Flashcards:** * **Click once** to reveal the answer. |
| 36 | + * **Click again** to generate a new random character. |
| 37 | +* **Smart Randomization:** Draws characters from a comprehensive library of standard Japanese Kana (including Dakuten). |
| 38 | +* **Responsive Design:** A clean, aesthetic UI that works beautifully on desktop and mobile. |
| 39 | +* **Dark-Themed UI:** Easy on the eyes for late-night study sessions. |
34 | 40 |
|
35 | | -## Demo |
| 41 | +## 🛠️ Tech Stack |
36 | 42 |
|
37 | | -Watch the full demo on [YouTube.](https://youtu.be/x3q9771LkKM?si=utNBwbvaOiRXGR00) |
| 43 | +* **HTML5:** Semantic structure. |
| 44 | +* **CSS3:** Flexbox layouts, CSS variables for theming, and smooth transitions. |
| 45 | +* **JavaScript (ES6+):** modular logic handling state and DOM manipulation. |
| 46 | +* **Font Awesome / Google Fonts:** *Comfortaa* & *Comic Neue* for a friendly aesthetic. |
38 | 47 |
|
39 | | -To see the app in action, follow these steps: |
| 48 | +## 🚀 Getting Started |
40 | 49 |
|
41 | | -1. Clone this repository: |
42 | | - ```bash |
43 | | - git clone https://github.com/developers-together/Kana-Go.github.io.git |
| 50 | +To run this project locally, follow these simple steps: |
44 | 51 |
|
45 | | -2. Open the `index.html` file in your browser. |
| 52 | +1. **Clone the repository:** |
| 53 | + ```bash |
| 54 | + git clone [https://github.com/developers-together/Kana-Go.github.io.git](https://github.com/developers-together/Kana-Go.github.io.git) |
| 55 | + ``` |
46 | 56 |
|
47 | | -## File Structure |
| 57 | +2. **Navigate to the project folder:** |
| 58 | + ```bash |
| 59 | + cd Kana-Go.github.io |
| 60 | + ``` |
48 | 61 |
|
49 | | -- `index.html`: The main structure of the app. |
50 | | -- `style.css`: Contains all styles, including animations, hover effects, and layout design. |
51 | | -- `script.js`: JavaScript logic for randomizing and displaying Kana. |
52 | | -- `jpChars.js`: Data file with Kana characters (Hiragana, Katakana, and Romaji). |
53 | | -- `logo.png`: Logo displayed in the header. |
54 | | -- `Screenshot.png`: Screenshot of the UI for documentation. |
| 62 | +3. **Open the app:** |
| 63 | + Simply open the `index.html` file in your preferred web browser. No server or installation is required! |
55 | 64 |
|
56 | | -## Kana Go Logic |
| 65 | +## 📂 File Structure |
57 | 66 |
|
58 | | -The app uses a pre-defined array of Kana characters from the `jpChars.js` file: |
| 67 | +```text |
| 68 | +Kana-Go.github.io/ |
| 69 | +├── index.html # Main application structure |
| 70 | +├── style.css # Styling, animations, and responsive layout |
| 71 | +├── script.js # Core logic for interaction and state management |
| 72 | +├── jpChars.js # Data module containing Kana arrays |
| 73 | +├── github.png # Icons used in the header |
| 74 | +└── README.md # Project documentation |
| 75 | +``` |
59 | 76 |
|
60 | | -- Each character includes its Hiragana, Katakana, and Romaji forms. |
61 | | -- On load, a random character is displayed, and users can reveal its translation or switch forms. |
| 77 | +## 🧠 How It Works |
62 | 78 |
|
63 | | -## How to Use |
| 79 | +* The app loads a module jpChars.js which contains a 2D array of characters. |
64 | 80 |
|
65 | | -1. Open the app in your browser. |
66 | | -2. Choose a writing system (Hiragana, Katakana, or Romaji). |
67 | | -3. Click anywhere in the main area to generate a random character. |
68 | | -4. Click again to reveal the answer. |
| 81 | +* State Management: The app tracks the current mode (Hiragana/Katakana) via class toggles. |
69 | 82 |
|
70 | | -## Requirements |
71 | | -- None (Pure HTML, CSS, and JavaScript) |
| 83 | +* Interaction: An event listener on the main card area checks if the answer is currently shown. If hidden, it reveals the answer. If shown, it hides the answer and picks a new index from the array. |
72 | 84 |
|
| 85 | +## ☕ Support |
| 86 | +If you find this project helpful and want to support the developers, you can buy us a coffee! <a href="https://www.buymeacoffee.com/adhamhaithameid" target="_blank"> <img src="https://github.com/user-attachments/assets/3b06dca7-9cbe-4e5d-bdc0-4c5b65f24226" alt="Buy Me A Coffee" style="height: 30px !important;width: 108px !important;" > </a> |
73 | 87 |
|
74 | 88 |
|
75 | | -## Credits |
| 89 | +## 👥 Credits |
| 90 | +* This project is developed and maintained by: [Adham Haitham](https://github.com/adhamhaithameid) & [Abdallah El-Rouby](https://github.com/Rouby-py) |
| 91 | +* Design Resources: Fonts provided by Google Fonts. |
76 | 92 |
|
77 | | -- **Developers:** [Adham Haitham](https://github.com/adhamhaithameid) and [Rouby](https://github.com/Rouby-py) |
78 | | -- **Fonts:** [Comfortaa](https://fonts.google.com/specimen/Comfortaa) & [Comic Neue](https://fonts.google.com/specimen/Comic+Neue) (via Google Fonts) |
| 93 | +<div align="center"> |
| 94 | +<small>Made with ❤️ for Japanese Learners</small> |
| 95 | +</div> |
0 commit comments