Skip to content

serg2bil/EpicTime

Repository files navigation

EpicTime - Minecraft Server Website

🚀 Початок нової ери - Сучасний веб-сайт для Minecraft сервера EpicTime

📖 Опис проекту

EpicTime - це повнофункціональний веб-сайт для Minecraft сервера, розроблений з використанням сучасних технологій. Сайт надає гравцям зручний інтерфейс для перегляду інформації про сервер, покупки в магазині та взаємодії зі спільнотою.

✨ Основні можливості

  • 🏠 Головна сторінка - елегантна сторінка з анімаціями та статусом сервера
  • 🛍️ Магазин - внутрішньоігровий магазин з можливістю покупки предметів
  • 📊 Статус сервера - моніторинг онлайну та стану сервера в реальному часі
  • 📋 Правила - детальні правила сервера
  • ℹ️ Інформація - додаткова інформація про сервер
  • 🎮 RCON інтеграція - дистанційне управління сервером

🛠️ Технології

Frontend

  • Next.js 14 - React фреймворк для веб-додатків
  • React 18 - JavaScript бібліотека для користувацьких інтерфейсів
  • Material-UI - React компоненти для швидкої розробки
  • Tailwind CSS - CSS фреймворк для стилізації
  • Framer Motion - бібліотека анімацій для React

Backend & API

  • Next.js API Routes - серверні API endpoints
  • RCON Client - підключення до Minecraft сервера
  • SSH2 - SSH з'єднання для сервера
  • Axios - HTTP клієнт для API запитів

DevOps & Tools

  • ESLint - лінтер для JavaScript/TypeScript
  • PostCSS - обробка CSS
  • TypeScript - типізована JavaScript

🚀 Встановлення та запуск

Вимоги

  • Node.js 18+
  • npm або yarn
  • Git

Крок 1: Клонування репозиторію

git clone https://github.com/serg2bil/web.git
cd web

Крок 2: Встановлення залежностей

npm install

Крок 3: Налаштування змінних оточення

Створіть файл .env.local та додайте необхідні змінні:

# RCON конфігурація
RCON_HOST=127.0.0.1
RCON_PORT=25575
RCON_PASSWORD=your_rcon_password

# Додаткові конфігурації
NEXT_PUBLIC_SERVER_IP=your.server.ip

Крок 4: Запуск в режимі розробки

npm run dev

Сайт буде доступний за адресою: http://localhost:3000

Крок 5: Збірка для продакшн

npm run build
npm start

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

├── public/                 # Статичні файли (зображення, іконки)
├── src/
│   ├── components/         # React компоненти
│   │   ├── home/          # Компоненти головної сторінки
│   │   ├── shop/          # Компоненти магазину
│   │   ├── rules/         # Компоненти правил
│   │   └── info/          # Інформаційні компоненти
│   ├── pages/             # Сторінки Next.js
│   │   ├── api/           # API routes
│   │   ├── shop/          # Сторінка магазину
│   │   ├── rules/         # Сторінка правил
│   │   ├── info/          # Інформаційна сторінка
│   │   └── index.js       # Головна сторінка
│   ├── styles/            # CSS стилі
│   └── utils/             # Допоміжні функції
├── rcon-test.js           # Тестування RCON підключення
├── package.json           # NPM конфігурація
└── next.config.js         # Next.js конфігурація

🎮 API Endpoints

Основні API

  • GET /api/getOnline - отримання кількості гравців онлайн
  • GET /api/getAbout - інформація про сервер
  • GET /api/getRules - правила сервера
  • GET /api/getList - список елементів
  • GET /api/getItem - деталі елемента

Магазин

  • POST /api/shop/pay - обробка платежів в магазині

🔧 Розробка

Запуск лінтера

npm run lint

Тестування RCON підключення

node rcon-test.js

Структура компонентів

  • Кожна сторінка має власну папку з компонентами
  • Використовується Material-UI для дизайн системи
  • Framer Motion для анімацій
  • Responsive дизайн для всіх пристроїв

🎨 Дизайн

Сайт використовує сучасний фіолетовий дизайн з елементами:

  • Градієнтні фони
  • Плавні анімації частинок
  • Адаптивний дизайн
  • Темна тема з фіолетовими акцентами
  • Анімації наведення та переходів

🔐 Безпека

  • RCON пароль зберігається в змінних оточення
  • Валідація даних на стороні сервера
  • Захист API endpoints
  • Безпечне з'єднання з Minecraft сервером

📱 Мобільна адаптація

Сайт повністю адаптований для:

  • 📱 Мобільних телефонів
  • 📱 Планшетів
  • 💻 Настільних комп'ютерів
  • 🖥️ Великих екранів

🤝 Внесок в проект

  1. Форкніть репозиторій
  2. Створіть нову гілку (git checkout -b feature/amazing-feature)
  3. Зробіть коміт (git commit -m 'Add amazing feature')
  4. Пушніть зміни (git push origin feature/amazing-feature)
  5. Відкрийте Pull Request

📄 Ліцензія

Цей проект є приватним та призначений для особистого використання.

📞 Контакти

EpicTime Minecraft Server


Відкрий для себе величезні світи, повні веселощів і мільйонів друзів! 🐉✨

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors