Учебный проект Яндекс Практикум (курс Python-разработчик плюс).
Проект YaCut — это сервис укорачивания ссылок. Его назначение — ассоциировать длинную пользовательскую ссылку с короткой, которую предлагает сам пользователь или предоставляет сервис.
Ключевые возможности сервиса:
- генерация коротких ссылок и связь их с исходными длинными ссылками,
- переадресация на исходный адрес при обращении к коротким ссылкам.
Сервис состоит из пользовательского интерфейса и REST API.
api/id/
— POST-запрос на создание новой короткой ссылки;api/id/<short_id>/
— GET-запрос на получение оригинальной ссылки по указанному короткому идентификатору.
Клонировать репозиторий и перейти в директорию проекта:
git clone https://github.com/bvsvrvb/praktikum-yacut.git
cd praktikum-yacut
Создать .env
файл с переменными окружения:
FLASK_APP=yacut
FLASK_ENV=development
DATABASE_URI=sqlite:///db.sqlite3
SECRET_KEY=YOUR_SECRET_KEY
Cоздать и активировать виртуальное окружение:
python -m venv venv
source venv/Scripts/activate
Установить зависимости из файла requirements.txt:
python -m pip install --upgrade pip
pip install -r requirements.txt
Выполнить миграции:
flask db upgrade
Запустить сервис на веб-сервере разработки Flask:
flask run