Учебный проект в рамках курса Яндекс.Практикум
Проект YaCut — это сервис укорачивания ссылок. Его ключевые возможности:
- генерация коротких ссылок (пользовательская или предлагаемая сервисом) и связь их с исходными длинными ссылками,
- переадресация на исходный адрес при обращении к коротким ссылкам.
Также всем желающим доступен API проекта.
-
Генерация короткой ссылки:
POST /api/id/ { 'url': 'string', 'custom_id': 'string' }
-
Получение оригинальной ссылки по указанному короткому идентификатору:
GET /api/id/{short_id}/
- Python 3.9
- Flask 2.0.2
- REST API
- SQLAlchemy
- HTML
Инструкции
-
Клонировать репозиторий и перейти в него в командной строке:
git clone https://github.com/Hastred45/yacut cd yacut
-
Cоздать и активировать виртуальное окружение:
-
Если у вас Linux/MacOS
python3 -m venv venv source venv/bin/activate
-
Если у вас windows
python -m venv venv source venv/scripts/activate
-
-
Установить необходимые зависимости:
python -m pip install --upgrade pip pip install -r requirements.txt
-
Не забудьте создать файл
.env
и наполнить его:DATABASE_URI=<dialect+driver://username:password@host:port/database> FLASK_APP=yacut FLASK_ENV=development SECRET_KEY=<Ваш_секретный_ключ>
-
Создать файл базы данных и таблицы в нем:
flask shell >>> from yacut import db >>> db.create_all()
-
Запустить локально:
flask run
Сергей Осетров hastred45@yandex.ru