Files
links/README.md
2025-10-29 20:22:35 +09:00

3.0 KiB
Raw Blame History

Клон Linktr.ee на Django + Next.js

Полнофункциональное приложение для создания персональных страниц с ссылками, похожее на Linktr.ee.

Технологии

Backend:

  • Django 5.2 + Django REST Framework
  • PostgreSQL
  • JWT Authentication
  • Django CORS Headers
  • Gunicorn

Frontend:

  • Next.js 15.3.1
  • React 19
  • TypeScript
  • Tailwind CSS
  • Axios для API запросов

Быстрый старт

1. Подготовка окружения

# Клонируйте репозиторий
git clone <url>
cd links

# Скопируйте переменные окружения
cp .env.example .env

2. Запуск проекта

# Запуск всех сервисов
make up

# Применение миграций базы данных
make migrate

3. Доступ к приложению

Команды

  • make up - Запуск всех сервисов
  • make down - Остановка всех сервисов
  • make migrate - Применение миграций
  • make test - Запуск тестов

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

├── backend/                    # Django приложение
│   ├── api/                   # API endpoints
│   ├── users/                 # Пользователи
│   ├── links/                 # Ссылки и группы
│   ├── customization/         # Настройки дизайна
│   └── backend/              # Настройки Django
├── frontend/linktree-frontend/ # Next.js приложение
├── docker-compose.yml         # Docker Compose конфигурация
├── .env.example              # Пример переменных окружения
└── DEPLOYMENT.md             # Подробные инструкции по развертыванию

Переменные окружения

Основные переменные в .env:

# Django
DJANGO_SECRET_KEY=your-secret-key
DJANGO_DEBUG=True
DJANGO_ALLOWED_HOSTS=127.0.0.1,localhost

# PostgreSQL
DATABASE_NAME=links_db
DATABASE_USER=links_user
DATABASE_PASSWORD=links_password
DATABASE_HOST=db
DATABASE_PORT=5432

# Frontend
NEXT_PUBLIC_API_URL=http://localhost:8000

Подробнее в DEPLOYMENT.md.

Особенности

  • 🔐 JWT аутентификация
  • 👤 Кастомизация профилей
  • 📱 Адаптивный дизайн
  • 🔗 Управление ссылками и группами
  • 🎨 Настройка внешнего вида
  • 📊 API для всех операций

Разработка

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

Для разработки без Docker смотрите инструкции в DEPLOYMENT.md.