Skip to content

dcversus/snake-game

Repository files navigation

🐍 Snake Game

GitHub Pages License: MIT Quality Tests TypeScript HTML5 JavaScript CSS3

Классическая игра "Змейка" с современным минималистичным дизайном и 3D эффектами, созданная с помощью AI-ассистента Ampcode.

💭 Небольшая история: Этот проект был создан в шутку для друга, чтобы показать, как легко и весело можно создавать крутые штуки с помощью AI! Надеюсь, это вдохновит тебя изучать программирование и экспериментировать с новыми технологиями! 🚀

🎓 Хотите создать свою игру? Прочитайте HOWTO.md — там полная переписка создания этого проекта с анализом промптов и лучшими практиками!

✨ Особенности

  • 🎨 Минималистичный дизайн в стиле Nebius Academy
  • 🤖 3 AI-бота противника с умным поведением
  • 🍎 8 яблочек на поле одновременно
  • Динамическая скорость — растёт с длиной змейки
  • 🎭 3D эффекты — градиенты, тени, плавные переходы
  • 🔊 Простые звуки при поедании еды и проигрыше
  • 📐 Большое поле 800×600 пикселей
  • 💾 Сохранение рекорда в localStorage
  • ⌨️ Управление стрелками или WASD
  • ⏸️ Пауза на пробел
  • 🌀 Проход сквозь стены

🎯 Управление

  • ← ↑ → ↓ или W A S D — движение змейки
  • Пробел — пауза/продолжить
  • Кнопка "Играть снова" — рестарт после проигрыша

🤖 О создании

Этот проект создан как демонстрация возможностей Ampcode — AI-ассистента для разработки от Sourcegraph.

🧠 Технологии AI

Проект полностью разработан с использованием:

  • Claude 3.7 Sonnet — основная модель для генерации кода и архитектурных решений

🛠️ Стек технологий

  • TypeScript — строгая типизация
  • Vite — быстрый zero-config бандлер
  • HTML5 Canvas для рендеринга
  • Vitest — unit-тестирование
  • GitHub Pages для хостинга
  • GitHub Actions для CI/CD

🚀 Локальный запуск

# Клонировать репозиторий
git clone https://github.com/dcversus/snake-game.git

# Перейти в папку
cd snake-game

# Установить зависимости
npm install

# Запустить dev-сервер
npm run dev

# Или собрать для production
npm run build
npm run preview

🧪 Разработка

# Запустить тесты
npm test

# Запустить тесты в watch mode
npm run test:watch

# Проверить типы TypeScript
npm run typecheck

# Собрать проект
npm run build

📦 Структура проекта

snake-game/
├── src/
│   ├── __tests__/      # Unit-тесты
│   ├── Bot.ts          # Логика AI ботов
│   ├── Game.ts         # Основная игровая логика
│   ├── constants.ts    # Константы игры
│   ├── types.ts        # TypeScript типы
│   ├── utils.ts        # Утилиты
│   ├── main.ts         # Точка входа
│   └── style.css       # Стили
├── index.html          # HTML страница
├── package.json        # Зависимости
├── tsconfig.json       # TypeScript конфигурация
├── vite.config.ts      # Vite + Vitest конфигурация
└── .github/
    └── workflows/
        └── quality.yml # Quality Pipeline CI/CD

🔧 Quality Pipeline

Проект использует GitHub Actions с автоматическими проверками:

  • TypeScript check — проверка типов
  • Unit Tests — запуск всех тестов (15 тестов)
  • Build — сборка проекта с Vite
  • Deploy — автоматический деплой на GitHub Pages
  • ✅ Запуск при каждом push в main и PR

📝 Лицензия

Этот проект распространяется под лицензией MIT. Подробности в файле LICENSE.

🙏 Благодарности

  • Ampcode за помощь в разработке
  • Sourcegraph за создание Ampcode
  • Claude (Anthropic) за AI-модель

🔗 Ссылки


Made with ❤️ and 🤖 by Ampcode

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors