diff --git a/README.md b/README.md index c3185b1..1519dd2 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,34 @@ -# ๐ŸŒธ Multilingual Calendar 2026 +# ๐ŸŒธ Multilingual Calendar 2026 | ๅคš่ฏญ่จ€ๆ—ฅๅކ 2026 | ๋‹ค๊ตญ์–ด ๋‹ฌ๋ ฅ 2026 -[![Deploy to GitHub Pages](https://github.com/mrfeixiang/2026/actions/workflows/deploy.yml/badge.svg)](https://github.com/mrfeixiang/2026/actions/workflows/deploy.yml) -[![Live Demo](https://img.shields.io/badge/Live%20Demo-GitHub%20Pages-blue)](https://mrfeixiang.github.io/2026/) +## Piano Hero -A beautiful, interactive calendar application that combines date management with language learning features for English and Chinese, enhanced with stunning Portuguese flower imagery for each month. +Play: https://mrfeixiang.github.io/piano-hero/ -## ๐Ÿš€ [**Live Demo โ†’**](https://mrfeixiang.github.io/2026/) +A Guitar Hero-style piano game in the browser. Press keyboard keys when falling notes hit the bottom to score points. -## โœจ Features +- Free Play: improvise freely with any key +- Practice Songs: Twinkle Twinkle, Ode to Joy, Happy Birthday, and more +- Scoring: Perfect / Good hits build combos and multiply your score +- Controls: A S D F G H J K = white keys C-C5, W E T Y U = black keys -### ๐Ÿ—“๏ธ Calendar Functionality +--- + +## ๐Ÿ‡ฌ๐Ÿ‡ง English + +A beautiful, interactive calendar application for 2026 that combines date management with language learning features for English and Chinese, enhanced with stunning Portuguese flower imagery for each month. + +### ๐Ÿš€ [Live Demo โ†’](https://mrfeixiang.github.io/2026/) + +### โœจ Features + +#### ๐Ÿ—“๏ธ Calendar Functionality - Complete 2026 calendar with intuitive navigation - Current date highlighting and weekend distinction - Responsive design that works on all devices - Smooth month-to-month transitions - Keyboard navigation support (arrow keys) -### ๐ŸŒบ Portuguese Flowers +#### ๐ŸŒบ Portuguese Flowers Each month features a beautiful Portuguese flower with names in three languages: | Month | Portuguese | English | Chinese | Seasonal Theme | @@ -34,105 +46,179 @@ Each month features a beautiful Portuguese flower with names in three languages: | November | Ciclรขmen | Cyclamen | ไป™ๅฎขๆฅ | Late autumn beauty | | December | Bico-de-papagaio | Poinsettia | ไธ€ๅ“็บข | Holiday celebration | -## ๐ŸŽฏ Language Learning Features - -### ๐Ÿ“š English Learning -- Daily quotes and vocabulary explanations -- Pronunciation guides for month names -- Flower-related idioms and expressions -- Grammar tips for time expressions -- Fun facts across multiple categories (history, science, culture, nature) - -### ๐Ÿˆณ Chinese Learning -- Chinese characters for dates and numbers -- Month names in simplified and traditional characters -- Weekday names with pinyin pronunciation +#### ๐Ÿ“š Language Learning +- Daily English quotes, vocabulary, idioms, and grammar tips +- Chinese characters for dates, weekdays, and month names with pinyin - Cultural information about Chinese holidays and festivals -- Traditional greetings and customs -### ๐Ÿฎ Chinese Holidays 2026 -- **New Year's Day**: January 1-3 -- **Spring Festival** (Year of Fire Horse): February 17-25 (Golden Week) -- **Tomb-Sweeping Day**: April 5-6 -- **Labor Day**: May 1-2 +#### ๐Ÿฎ Chinese Holidays 2026 +- **New Year's Day**: January 1โ€“3 +- **Spring Festival** (Year of Fire Horse): February 17โ€“25 +- **Tomb-Sweeping Day**: April 5โ€“6 +- **Labor Day**: May 1โ€“2 - **Dragon Boat Festival**: June 19 - **Mid-Autumn Festival**: September 25 -- **National Day**: October 1-7 (Golden Week) - -## ๐Ÿ› ๏ธ Technical Features - -- **Pure Vanilla JS**: No external dependencies for maximum performance -- **Responsive Design**: Perfect on desktop, tablet, and mobile devices -- **Accessibility**: Full ARIA labels, keyboard navigation, and screen reader support -- **Performance Optimized**: <50ms calendar generation, lazy loading, preloading -- **Error Handling**: Graceful fallbacks and comprehensive error recovery -- **Comprehensive Testing**: 30+ automated tests covering all functionality - -## ๐Ÿงช Testing - -The application includes a comprehensive test suite: - -- **Integration Tests**: Core functionality validation -- **Unit Tests**: Individual component testing -- **Performance Tests**: Speed and efficiency validation -- **Accessibility Tests**: ARIA labels and keyboard navigation -- **Error Handling Tests**: Edge cases and invalid inputs +- **National Day**: October 1โ€“7 + +#### ๐Ÿ› ๏ธ Technical +- Pure Vanilla JS โ€” no external dependencies +- Fully responsive (desktop, tablet, mobile) +- WCAG 2.1 AA accessible (ARIA labels, keyboard navigation) +- <50ms calendar generation +- 30+ automated tests + +#### ๐Ÿš€ Quick Start +```bash +git clone https://github.com/mrfeixiang/2026.git +cd 2026 +python3 -m http.server 8000 +# Open http://localhost:8000 +``` + +#### ๐Ÿ“ฑ Browser Support +Chrome ยท Firefox ยท Safari ยท Edge ยท iOS Safari ยท Chrome Mobile -Run tests by opening any of these files: -- `test-integration.html` - Basic integration tests -- `comprehensive-test.html` - Full test suite -- `final-test-report.html` - Professional test report - -## ๐ŸŽจ Design Philosophy - -This calendar combines functionality with beauty, creating an immersive experience that makes learning enjoyable. The Portuguese flowers add natural elegance while multilingual features provide practical language learning opportunities in a culturally rich context. - -## ๐Ÿ“ฑ Browser Support - -- โœ… Chrome (recommended) -- โœ… Firefox -- โœ… Safari -- โœ… Edge -- โœ… Mobile browsers (iOS Safari, Chrome Mobile) - -## ๐Ÿš€ Quick Start - -1. **Visit the live demo**: [https://mrfeixiang.github.io/2026/](https://mrfeixiang.github.io/2026/) -2. **Or run locally**: - ```bash - git clone https://github.com/mrfeixiang/2026.git - cd 2026 - python3 -m http.server 8000 - # Open http://localhost:8000 - ``` - -## ๐Ÿ”ง Development - -Built with modern web standards: -- **HTML5**: Semantic structure with accessibility features -- **CSS3**: Flexbox/Grid layouts, custom properties, animations -- **ES6+ JavaScript**: Classes, modules, async/await, modern APIs -- **Progressive Enhancement**: Works without JavaScript for basic functionality +--- -## ๐Ÿ“Š Project Stats +## ๐Ÿ‡จ๐Ÿ‡ณ ไธญๆ–‡ + +ไธ€ๆฌพ็ฒพ็พŽ็š„ 2026 ๅนดไบ’ๅŠจๆ—ฅๅކๅบ”็”จ๏ผŒๅฐ†ๆ—ฅๆœŸ็ฎก็†ไธŽ่‹ฑ่ฏญใ€ไธญๆ–‡่ฏญ่จ€ๅญฆไน ็›ธ็ป“ๅˆ๏ผŒๅนถไธบๆฏไธชๆœˆ้…ไปฅ็ฒพ็พŽ็š„่‘ก่„็‰™่Šฑๅ‰ๅ›พๅƒใ€‚ + +### ๐Ÿš€ [ๅœจ็บฟๆผ”็คบ โ†’](https://mrfeixiang.github.io/2026/) + +### โœจ ๅŠŸ่ƒฝ็‰น่‰ฒ + +#### ๐Ÿ—“๏ธ ๆ—ฅๅކๅŠŸ่ƒฝ +- ๅฎŒๆ•ด็š„ 2026 ๅนดๆ—ฅๅކ๏ผŒๆ”ฏๆŒ็›ด่ง‚ๅฏผ่ˆช +- ๅฝ“ๅ‰ๆ—ฅๆœŸ้ซ˜ไบฎๆ˜พ็คบ๏ผŒๅŒบๅˆ†ๅทฅไฝœๆ—ฅไธŽๅ‘จๆœซ +- ๅ“ๅบ”ๅผ่ฎพ่ฎก๏ผŒ้€‚้…ๆ‰€ๆœ‰่ฎพๅค‡ +- ๆต็•…็š„ๆœˆไปฝๅˆ‡ๆข่ฟ‡ๆธกๆ•ˆๆžœ +- ๆ”ฏๆŒ้”ฎ็›˜ๆ–นๅ‘้”ฎๅฏผ่ˆช + +#### ๐ŸŒบ ่‘ก่„็‰™่Šฑๅ‰ +ๆฏไธชๆœˆ้ƒฝๅฑ•็คบไธ€็ง็พŽไธฝ็š„่‘ก่„็‰™่Šฑๅ‰๏ผŒๅนถๆไพ›ไธ‰็ง่ฏญ่จ€็š„ๅ็งฐ๏ผš + +| ๆœˆไปฝ | ่‘ก่„็‰™่ฏญ | ่‹ฑ่ฏญ | ไธญๆ–‡ | ๅญฃ่Š‚ไธป้ข˜ | +|------|----------|------|------|----------| +| ไธ€ๆœˆ | Camรฉlia | Camellia | ๅฑฑ่Œถ่Šฑ | ๅ†ฌๆ—ฅๅ…ธ้›… | +| ไบŒๆœˆ | Flor de Amendoeira | Almond Blossom | ๆ่Šฑ | ๆ—ฉๆ˜ฅๅธŒๆœ› | +| ไธ‰ๆœˆ | Narciso | Daffodil | ๆฐดไป™่Šฑ | ๆ˜ฅๆ—ฅ่ง‰้†’ | +| ๅ››ๆœˆ | Flor de Cerejeira | Cherry Blossom | ๆจฑ่Šฑ | ็„•็„ถๆ–ฐ็”Ÿ | +| ไบ”ๆœˆ | Rosa | Rose | ็Žซ็‘ฐ | ่‘กๅผๅ›ญ่‰บ | +| ๅ…ญๆœˆ | Alfazema | Lavender | ่–ฐ่กฃ่‰ | ๅคๆ—ฅ่Šฌ่Šณ | +| ไธƒๆœˆ | Girassol | Sunflower | ๅ‘ๆ—ฅ่‘ต | ๅคๆ—ฅ้˜ณๅ…‰ | +| ๅ…ซๆœˆ | Buganvรญlia | Bougainvillea | ไธ‰่ง’ๆข… | ๅœฐไธญๆตทๆš–ๆ„ | +| ไนๆœˆ | Dรกlia | Dahlia | ๅคงไธฝ่Šฑ | ็ง‹ๆ—ฅไธฐ็›ˆ | +| ๅๆœˆ | Crisรขntemo | Chrysanthemum | ่Š่Šฑ | ้‡‘็ง‹ไผ ็ปŸ | +| ๅไธ€ๆœˆ | Ciclรขmen | Cyclamen | ไป™ๅฎขๆฅ | ๆทฑ็ง‹ไน‹็พŽ | +| ๅไบŒๆœˆ | Bico-de-papagaio | Poinsettia | ไธ€ๅ“็บข | ่Š‚ๆ—ฅๅบ†ๅ…ธ | + +#### ๐Ÿ“š ่ฏญ่จ€ๅญฆไน ๅŠŸ่ƒฝ +- ๆฏๆ—ฅ่‹ฑ่ฏญๅ่จ€ใ€่ฏๆฑ‡่ฎฒ่งฃใ€ไน ่ฏญไธŽ่ฏญๆณ•ๆ็คบ +- ไธญๆ–‡ๆ—ฅๆœŸใ€ๆ˜ŸๆœŸไธŽๆœˆไปฝๅ็งฐ๏ผˆๅซๆ‹ผ้Ÿณ๏ผ‰ +- ไธญๅ›ฝ่Š‚ๅ‡ๆ—ฅไธŽไผ ็ปŸๆ–‡ๅŒ–ไป‹็ป + +#### ๐Ÿฎ 2026 ๅนดไธญๅ›ฝ่Š‚ๅ‡ๆ—ฅ +- **ๅ…ƒๆ—ฆ**๏ผš1ๆœˆ1ๆ—ฅโ€“3ๆ—ฅ +- **ๆ˜ฅ่Š‚**๏ผˆไธ™ๅˆ็ซ้ฉฌๅนด๏ผ‰๏ผš2ๆœˆ17ๆ—ฅโ€“25ๆ—ฅ +- **ๆธ…ๆ˜Ž่Š‚**๏ผš4ๆœˆ5ๆ—ฅโ€“6ๆ—ฅ +- **ๅŠณๅŠจ่Š‚**๏ผš5ๆœˆ1ๆ—ฅโ€“2ๆ—ฅ +- **็ซฏๅˆ่Š‚**๏ผš6ๆœˆ19ๆ—ฅ +- **ไธญ็ง‹่Š‚**๏ผš9ๆœˆ25ๆ—ฅ +- **ๅ›ฝๅบ†่Š‚**๏ผš10ๆœˆ1ๆ—ฅโ€“7ๆ—ฅ + +#### ๐Ÿ› ๏ธ ๆŠ€ๆœฏ็‰น็‚น +- ็บฏๅŽŸ็”Ÿ JS๏ผŒๆ— ็ฌฌไธ‰ๆ–นไพ่ต– +- ๅฎŒๅ…จๅ“ๅบ”ๅผ๏ผˆๆกŒ้ขใ€ๅนณๆฟใ€ๆ‰‹ๆœบ๏ผ‰ +- ็ฌฆๅˆ WCAG 2.1 AA ๆ— ้šœ็ขๆ ‡ๅ‡† +- ๆ—ฅๅކ็”Ÿๆˆ้€Ÿๅบฆ <50ms +- ่ฆ†็›– 30+ ้กน่‡ชๅŠจๅŒ–ๆต‹่ฏ• + +#### ๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹ +```bash +git clone https://github.com/mrfeixiang/2026.git +cd 2026 +python3 -m http.server 8000 +# ๆ‰“ๅผ€ http://localhost:8000 +``` -- **Lines of Code**: ~1,500 (HTML/CSS/JS) -- **Test Coverage**: 30+ comprehensive tests -- **Performance**: <50ms calendar generation -- **Accessibility**: WCAG 2.1 AA compliant -- **Languages**: 3 (Portuguese, English, Chinese) -- **Flowers**: 12 unique Portuguese flowers +--- -## ๐Ÿค Contributing +## ๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด + +2026๋…„์„ ์œ„ํ•œ ์•„๋ฆ„๋‹ค์šด ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ๋‹ฌ๋ ฅ ์•ฑ์œผ๋กœ, ๋‚ ์งœ ๊ด€๋ฆฌ์™€ ์˜์–ดยท์ค‘๊ตญ์–ด ์–ธ์–ด ํ•™์Šต ๊ธฐ๋Šฅ์„ ๊ฒฐํ•ฉํ•˜๊ณ  ๋งค๋‹ฌ ํฌ๋ฅดํˆฌ๊ฐˆ ๊ฝƒ ์ด๋ฏธ์ง€๋กœ ๊พธ๋ฉฐ์ง„ ์•ฑ์ž…๋‹ˆ๋‹ค. + +### ๐Ÿš€ [๋ผ์ด๋ธŒ ๋ฐ๋ชจ โ†’](https://mrfeixiang.github.io/2026/) + +### โœจ ์ฃผ์š” ๊ธฐ๋Šฅ + +#### ๐Ÿ—“๏ธ ๋‹ฌ๋ ฅ ๊ธฐ๋Šฅ +- ์ง๊ด€์ ์ธ ํƒ์ƒ‰์ด ๊ฐ€๋Šฅํ•œ ์™„์ „ํ•œ 2026๋…„ ๋‹ฌ๋ ฅ +- ์˜ค๋Š˜ ๋‚ ์งœ ๊ฐ•์กฐ ํ‘œ์‹œ ๋ฐ ์ฃผ๋ง ๊ตฌ๋ถ„ +- ๋ชจ๋“  ๊ธฐ๊ธฐ์—์„œ ์ž‘๋™ํ•˜๋Š” ๋ฐ˜์‘ํ˜• ๋””์ž์ธ +- ๋ถ€๋“œ๋Ÿฌ์šด ์›”๊ฐ„ ์ „ํ™˜ ํšจ๊ณผ +- ํ‚ค๋ณด๋“œ ๋ฐฉํ–ฅํ‚ค ํƒ์ƒ‰ ์ง€์› + +#### ๐ŸŒบ ํฌ๋ฅดํˆฌ๊ฐˆ ๊ฝƒ +๋งค๋‹ฌ ์•„๋ฆ„๋‹ค์šด ํฌ๋ฅดํˆฌ๊ฐˆ ๊ฝƒ์„ 3๊ฐœ ์–ธ์–ด ์ด๋ฆ„๊ณผ ํ•จ๊ป˜ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค: + +| ์›” | ํฌ๋ฅดํˆฌ๊ฐˆ์–ด | ์˜์–ด | ์ค‘๊ตญ์–ด | ๊ณ„์ ˆ ํ…Œ๋งˆ | +|----|-----------|------|--------|----------| +| 1์›” | Camรฉlia | Camellia | ๅฑฑ่Œถ่Šฑ | ๊ฒจ์šธ์˜ ์šฐ์•„ํ•จ | +| 2์›” | Flor de Amendoeira | Almond Blossom | ๆ่Šฑ | ์ด๋ฅธ ๋ด„์˜ ํฌ๋ง | +| 3์›” | Narciso | Daffodil | ๆฐดไป™่Šฑ | ๋ด„์˜ ๊ฐ์„ฑ | +| 4์›” | Flor de Cerejeira | Cherry Blossom | ๆจฑ่Šฑ | ์ƒˆ๋กœ์šด ์‹œ์ž‘ | +| 5์›” | Rosa | Rose | ็Žซ็‘ฐ | ํฌ๋ฅดํˆฌ๊ฐˆ ์ •์› | +| 6์›” | Alfazema | Lavender | ่–ฐ่กฃ่‰ | ์—ฌ๋ฆ„์˜ ํ–ฅ๊ธฐ | +| 7์›” | Girassol | Sunflower | ๅ‘ๆ—ฅ่‘ต | ์—ฌ๋ฆ„์˜ ๋ฐ์Œ | +| 8์›” | Buganvรญlia | Bougainvillea | ไธ‰่ง’ๆข… | ์ง€์ค‘ํ•ด์˜ ๋”ฐ๋œปํ•จ | +| 9์›” | Dรกlia | Dahlia | ๅคงไธฝ่Šฑ | ๊ฐ€์„์˜ ํ’์š” | +| 10์›” | Crisรขntemo | Chrysanthemum | ่Š่Šฑ | ๊ฐ€์„ ์ „ํ†ต | +| 11์›” | Ciclรขmen | Cyclamen | ไป™ๅฎขๆฅ | ๋Šฆ๊ฐ€์„์˜ ์•„๋ฆ„๋‹ค์›€ | +| 12์›” | Bico-de-papagaio | Poinsettia | ไธ€ๅ“็บข | ์—ฐ๋ง ์ถ•์ œ | + +#### ๐Ÿ“š ์–ธ์–ด ํ•™์Šต ๊ธฐ๋Šฅ +- ๋งค์ผ ์˜์–ด ๋ช…์–ธ, ์–ดํœ˜, ๊ด€์šฉ์–ด, ๋ฌธ๋ฒ• ํŒ ์ œ๊ณต +- ๋‚ ์งœยท์š”์ผยท์›” ์ด๋ฆ„์˜ ์ค‘๊ตญ์–ด ํ•œ์ž ๋ฐ ๋ณ‘์Œ +- ์ค‘๊ตญ ๊ณตํœด์ผ๊ณผ ์ „ํ†ต ๋ฌธํ™” ์ •๋ณด + +#### ๐Ÿฎ 2026๋…„ ์ค‘๊ตญ ๊ณตํœด์ผ +- **์‹ ์ •**: 1์›” 1์ผโ€“3์ผ +- **์ถ˜์ ˆ** (๋ณ‘์˜ค๋…„): 2์›” 17์ผโ€“25์ผ +- **์ฒญ๋ช…์ ˆ**: 4์›” 5์ผโ€“6์ผ +- **๋…ธ๋™์ ˆ**: 5์›” 1์ผโ€“2์ผ +- **๋‹จ์˜ค์ ˆ**: 6์›” 19์ผ +- **์ค‘์ถ”์ ˆ**: 9์›” 25์ผ +- **๊ตญ๊ฒฝ์ ˆ**: 10์›” 1์ผโ€“7์ผ + +#### ๐Ÿ› ๏ธ ๊ธฐ์ˆ ์  ํŠน์ง• +- ์ˆœ์ˆ˜ ๋ฐ”๋‹๋ผ JS โ€” ์™ธ๋ถ€ ์˜์กด์„ฑ ์—†์Œ +- ์™„์ „ ๋ฐ˜์‘ํ˜• (๋ฐ์Šคํฌํ†ฑ, ํƒœ๋ธ”๋ฆฟ, ๋ชจ๋ฐ”์ผ) +- WCAG 2.1 AA ์ ‘๊ทผ์„ฑ ์ค€์ˆ˜ (ARIA ๋ ˆ์ด๋ธ”, ํ‚ค๋ณด๋“œ ํƒ์ƒ‰) +- ๋‹ฌ๋ ฅ ์ƒ์„ฑ ์†๋„ <50ms +- 30๊ฐœ ์ด์ƒ์˜ ์ž๋™ํ™” ํ…Œ์ŠคํŠธ + +#### ๐Ÿš€ ๋น ๋ฅธ ์‹œ์ž‘ +```bash +git clone https://github.com/mrfeixiang/2026.git +cd 2026 +python3 -m http.server 8000 +# http://localhost:8000 ์—ด๊ธฐ +``` + +#### ๐Ÿ“ฑ ๋ธŒ๋ผ์šฐ์ € ์ง€์› +Chrome ยท Firefox ยท Safari ยท Edge ยท iOS Safari ยท Chrome Mobile -Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change. +--- -## ๐Ÿ“„ License +## ๐Ÿ“„ License / ่ฎธๅฏ่ฏ / ๋ผ์ด์„ ์Šค -This project is open source and available under the [MIT License](LICENSE). +MIT License โ€” open source and free to use. +MIT ่ฎธๅฏ่ฏ โ€” ๅผ€ๆบๅ…่ดนไฝฟ็”จใ€‚ +MIT ๋ผ์ด์„ ์Šค โ€” ์˜คํ”ˆ ์†Œ์Šค, ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. --- -**๐ŸŒธ Enjoy exploring the beautiful intersection of time, language, and nature! ๐Ÿ“…๐ŸŒ** - -*Made with โค๏ธ for language learners and calendar enthusiasts* \ No newline at end of file +**๐ŸŒธ Enjoy the beautiful intersection of time, language, and nature!** +**๐ŸŒธ ไบซๅ—ๆ—ถ้—ดใ€่ฏญ่จ€ไธŽ่‡ช็„ถ็š„็พŽไธฝไบคๆฑ‡๏ผ** +**๐ŸŒธ ์‹œ๊ฐ„, ์–ธ์–ด, ์ž์—ฐ์ด ์•„๋ฆ„๋‹ต๊ฒŒ ๋งŒ๋‚˜๋Š” ๊ณณ์„ ์ฆ๊ฒจ๋ณด์„ธ์š”!** diff --git a/index.html b/index.html index ab7af04..296ac4d 100644 --- a/index.html +++ b/index.html @@ -85,6 +85,7 @@

Multilingual Calendar 2026

Learn English & Chinese with Portuguese Flowers

+ ๐ŸŽน Play Piano Hero