ann-sok / KIT

Pet-Project-Kit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Ліцензія проєкту

Запрошення до співпраці Кодування з любов’ю від спільноти

Зміст

Про проєкт

Pet-Project KIT - це GitHub репозиторій, який спрощує запуск і розвиток пет-проектів для команди - дизайнера, фронтенда та бекенда. Мета цього репозиторію - надати шаблон, який допоможе швидко розпочати роботу, забезпечуючи при цьому єдиний підхід до організації коду, документації та процесів розробки.

Побудовано з використанням

Docker — це інструмент, який дозволяє розробникам, тестувальникам і адміністраторам систем легко створювати, розгортати та запускати додатки в контейнерах. Це забезпечує консистентність середовища від розробки до продакшену, спрощує CI/CD процеси та допомагає у вирішенні проблеми "у мене працює, а в тебе — ні".

Nginx — це високопродуктивний HTTP-сервер та обернений проксі-сервер, а також IMAP/POP3 проксі-сервер. Його використовують для підвищення масштабованості веб-додатків завдяки асинхронній архітектурі. Він широко відомий своєю стабільністю, низьким споживанням ресурсів та високою гнучкістю конфігурації.

Альтернативи для Nginx:

  • Apache — традиційний вибір для веб-серверів, пропонує більше модулів та гнучкість.
  • Caddy — автоматично надає HTTPS, легкий у налаштуванні.

На продакшені в облаках:

MongoDB — це документо-орієнтована база даних NoSQL, яка забезпечує високу производительність, високу доступність та легкість масштабування. Вона ідеально підходить для зберігання структурованих та неструктурованих даних з гнучкою схемою документів.

Альтернативи для MongoDB:

  • PostgreSQL — потужна відкрита система управління реляційними базами даних, яка підтримує як SQL, так і JSON-подібні документні дані.
  • MySQL — популярна система управління базами даних, широко використовується у веб-додатках.
  • CouchDB — база даних, яка використовує JSON для зберігання даних, JavaScript для запитів, а HTTP для API.

На продакшені в облаках:

Початок роботи

Ознайомтеся з інструкціями для розробки та запуску проекту:

docs/design

Ця директорія призначена для зберігання всіх дизайн-ресурсів проекту.

  • Як використовувати: Додайте сюди макети інтерфейсу, логотипи та будь-які інші графічні матеріали. Використовуйте назви файлів, які чітко описують їх зміст, наприклад, main-page-layout.png.

docs/technical

Директорія для технічної документації вашого проекту.

  • Як використовувати: Зберігайте тут документи, що описують архітектуру системи, вибрані технології, налаштування середовища тощо.

docs/meetings

Використовуйте цю папку для протоколів зустрічей команди та будь-яких інших нотаток, пов'язаних з обговоренням проекту.

  • Як використовувати: Додавайте файли з підсумками зустрічей, планами на майбутнє, обговореними ідеями. Це допоможе утримувати всю команду на одній хвилі та зберігати історію рішень.

docs/participants.md

Файл для зберігання інформації про учасників проекту.

  • Як використовувати: Оновлюйте цей файл, додаючи контактні дані нових учасників проекту, їх ролі та короткий опис внеску кожного в проект.

Використання

Для локального розгортання проєкту використовуйте docker-compose.yml, який забезпечує зручне управління сервісами через Docker. Це ідеальний інструмент для організації і запуску вашого додатку в однорідному середовищі, незалежно від локальної ОС.

Кроки для запуску вашого проєкту:

  1. Встановлення Docker

    • Завантажте та встановіть Docker Desktop або Docker Engine, залежно від вашої ОС. Це дозволить вам створювати та управляти контейнерами на вашій машині.
  2. Запуск Docker Compose

    • Відкрийте термінал у директорії проекту, де знаходиться docker-compose.yml і виконайте наступну команду:
      docker-compose up
    • Ця команда створить та запустить всі необхідні контейнери, визначені в конфігураційному файлі.
  3. Запуск Docker Compose

Важливі директорії та файли

- **`/src/frontend/Dockerfile`**:
- Тут розміщуються фронтенд частини проекту, які налаштовують середовище відповідно до потреб фронтенду.

- **`/src/backend/Dockerfile`**:
- Тут розміщуються бекенд частини проекту, які налаштовують середовище відповідно до потреб бекенду.

- **`/src`**:
- Тут розміщені конфігураційні файли, які використовуються для налаштування цих сервісів в рамках Docker контейнерів.
  1. Перевірка роботи
    • Після успішного запуску контейнерів, ви зможете переглянути ваш додаток у дії, відкривши веб-браузер та навігувавши до вказаної URL-адреси, якщо така передбачена налаштуваннями вашого додатку.

Додаткові ресурси

Ці кроки допоможуть вам безперешкодно розпочати роботу з вашим проєктом, забезпечуючи стабільне та контрольоване середовище розробки.

Структура проєкту

  • docs/ - документація проєкту та дизайни.
  • src/ - вихідний код проєкту, включаючи конфігураційні файли, фронтенд і бекенд.
  • tests/ - тести для фронтенду та бекенду.
  • deployment/ - налаштування для розгортання на AWS, Azure, GCP.
  • scripts/ - утиліти та скрипти для автоматизації.
  • designs/ - графічні матеріали проєкту (статика).

Більш детальну інформацію про кожну з директорій ви можете знайти в структурі проєкту.

Підтримка

Якщо у вас є запитання або потрібна допомога, використовуйте розділ Issues на GitHub.

Долучитися

Ми завжди раді новим учасникам. Якщо ви хочете внести свій вклад, будь ласка, перегляньте CONTRIBUTING.md, і якщо вам подобається наш проект, будь ласка, поставте нам зірочку, щоб підтримати його розвиток.

Безпека

Безпека проєкту для нас в пріоритеті. Якщо ви виявили вразливість, будь ласка, дивіться нашу політику безпеки в SECURITY.md.

Ліцензія

Проєкт розповсюджується під ліцензією GNU GENERAL PUBLIC LICENSE V3.0.

Перегляньте файл LICENSE для отримання додаткової інформації.

About

Pet-Project-Kit

License:GNU General Public License v3.0


Languages

Language:Dockerfile 75.6%Language:Shell 24.4%