Skip to content

Сервис укорачивания ссылок

Notifications You must be signed in to change notification settings

dmsnback/short_link

Repository files navigation

YaCut

Описание

Проект YaCut — это сервис укорачивания ссылок.

Его назначение — ассоциировать длинную пользовательскую ссылку с короткой, которую предлагает сам пользователь или предоставляет сервис.

Доступны web и REST API интерфейсы

Ключевые возможности сервиса:

  • генерация коротких ссылок и связь их с исходными длинными ссылками,
  • переадресация на исходный адрес при обращении к коротким ссылкам.

API для проекта

  • /api/id/ — POST-запрос на создание новой короткой ссылки;
  • /api/id/<short_id>/ — GET-запрос на получение оригинальной ссылки по указанному короткому идентификатору.

Примеры запросов к API, варианты ответов и ошибок приведены в спецификации openapi.yml

Технологии

Python Flask Jinja

Запуск

  • Склонируйте репозиторий
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

Автор

Вернуться в начало

About

Сервис укорачивания ссылок

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published