Проект YaCut — это сервис укорачивания ссылок.
Его назначение — ассоциировать длинную пользовательскую ссылку с короткой, которую предлагает сам пользователь или предоставляет сервис.
Доступны web и REST API интерфейсы
- генерация коротких ссылок и связь их с исходными длинными ссылками,
- переадресация на исходный адрес при обращении к коротким ссылкам.
/api/id/
— POST-запрос на создание новой короткой ссылки;/api/id/<short_id>/
— GET-запрос на получение оригинальной ссылки по указанному короткому идентификатору.
Примеры запросов к API, варианты ответов и ошибок приведены в спецификации openapi.yml
- Склонируйте репозиторий
git clone git@github.com:dmsnback/yacut.git
- Перейдите в директорию с проектом
cd yacut
- Установите и активируйте виртуальное окружение
python3 -m venv venv
Для Windows
source venv/Scripts/activate
Для Mac/Linux
source venv/bin/activate
- Установите зависимости из файла
requirements.txt
python3 -m pip install --upgrade pip
pip install -r requirements.txt
- В корневой директории создайте файл
.env
FLASK_APP=yacut
FLASK_ENV=development
DATABASE_URI=sqlite:///db.sqlite3
SECRET_KEY=SUPER_SECRET_KEY
- Выполните миграции
flask db migrate
flask db upgrade
- Запустите приложение
flask run