From 585b527148f4628e7533894590920bd28c6bcb58 Mon Sep 17 00:00:00 2001 From: Serik <104305931+serik-k@users.noreply.github.com> Date: Tue, 18 Aug 2026 17:42:18 +0500 Subject: [PATCH 1/3] ci: add unified typecheck and build command --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index d221b11..1c14603 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "dev": "vite", "build": "vite build", "type-check": "vue-tsc --noEmit", + "check": "npm run type-check && npm run build", "preview": "vite preview" }, "dependencies": { From 41b3eb31f7e7a78cc0985843c1d5ed438465e8a2 Mon Sep 17 00:00:00 2001 From: Serik <104305931+serik-k@users.noreply.github.com> Date: Tue, 18 Aug 2026 17:42:22 +0500 Subject: [PATCH 2/3] ci: add frontend quality workflow --- .github/workflows/ci.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..5370a2d --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,29 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +permissions: + contents: read + +jobs: + quality: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: npm + + - name: Install dependencies + run: npm ci + + - name: Type-check and build + run: npm run check From e2bdfcbc61ec0c1502adb25b568491320c973711 Mon Sep 17 00:00:00 2001 From: Serik <104305931+serik-k@users.noreply.github.com> Date: Tue, 18 Aug 2026 17:42:54 +0500 Subject: [PATCH 3/3] docs: polish quality and contribution guidance --- README.md | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index cf9837a..3882915 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ ### **Bilingual Speech Practice Game for Children | Детская игра для тренировки речи** +[![CI](https://github.com/serik-k/til-up/actions/workflows/ci.yml/badge.svg)](https://github.com/serik-k/til-up/actions/workflows/ci.yml) [![Vue 3](https://img.shields.io/badge/Vue-3.5-4FC08D?style=for-the-badge&logo=vuedotjs&logoColor=white)](https://vuejs.org/) [![TypeScript](https://img.shields.io/badge/TypeScript-5.9-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/) [![Vite](https://img.shields.io/badge/Vite-6.0-646CFF?style=for-the-badge&logo=vite&logoColor=white)](https://vitejs.dev/) @@ -141,16 +142,9 @@ flowchart LR - **npm**: `v9.x` or higher ```bash -# 1. Clone the repository / Клонировать репозиторий git clone https://github.com/serik-k/til-up.git - -# 2. Enter project directory / Перейти в папку проекта cd til-up - -# 3. Install dependencies / Установить зависимости npm install - -# 4. Run development server / Запустить сервер разработки npm run dev ``` @@ -161,16 +155,21 @@ npm run dev ## 🧪 Quality Checks & Build | Проверка качества и сборка ```bash -# Type check TypeScript code / Проверка типов TypeScript +# Type check npm run type-check -# Production build / Сборка для продакшена +# Type check + production build (same command used by CI) +npm run check + +# Production build npm run build -# Local preview of production build / Предпросмотр продакшн-сборки +# Local preview npm run preview ``` +Every pull request targeting `main` runs the same type-check + production build pipeline in GitHub Actions. + --- ## 🏗️ Project Structure | Структура проекта @@ -183,9 +182,7 @@ til-up/ ├── 📁 src/ │ ├── 📁 app/ # 🚀 Application shell & main view setup │ ├── 📁 assets/ # 🎨 Static styles & global graphics -│ ├── 📁 components/ -│ │ ├── 🧩 SoundPopGame.vue # 🎮 Main game core, state, & stats modal -│ │ └── 🧩 Mascot.vue # 🦊 Interactive animated kid-friendly mascot +│ ├── 📁 components/ # 🧩 Game UI and mascot components │ ├── 📁 composables/ # 🎙️ Speech recognition & synthesis lifecycle hooks │ ├── 📁 locales/ # 🌍 Multilingual strings (RU / KZ) │ ├── 📁 styles/ # 💅 Tailwind & custom CSS utility styles @@ -205,9 +202,9 @@ Contributions are welcome! If you'd like to improve **Til Up**: 1. Fork the project repository. 2. Create your feature branch (`git checkout -b feature/AmazingFeature`). -3. Run `npm run type-check` and `npm run build` to verify code quality. +3. Run `npm run check` to verify type safety and the production build. 4. Commit your changes (`git commit -m 'Add some AmazingFeature'`). -5. Push to the branch (`git checkout -b feature/AmazingFeature`). +5. Push the branch (`git push origin feature/AmazingFeature`). 6. Open a Pull Request. > [!TIP]