From 043e3b3e5d54ea580fcb02856fdb13b70394760e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD=20=D0=AF=D0=BA=D0=BE=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=B2?= Date: Sat, 16 Mar 2024 23:07:03 +0300 Subject: [PATCH] add README.md description --- README.md | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b8384ab..67e26e9 100644 --- a/README.md +++ b/README.md @@ -1 +1,59 @@ -# fastapi_check_so_words \ No newline at end of file +# Сервис для русских слов, оканчивающихся на "со" + +## Для чего нужен этот проект +Данный сервис представляет из себя вебсайт, который содержит справочную информацию о русских словах, оканчивающихся на -со (мясо, просо итд). + +Сервис создает API, с помощью которого можно обратиться за информацией из любой программы или браузера. Можно получить либо список всех слов, заканчивающихся на -со, либо одно случайное слово. + +Учитывая спорность темы, информация дается согласно разным мнениям на выбор: +- по версии словаря +- по версии ведущего ЧГК +- по версии Федора Двинятина + +## Как воспользовать сервисом +Проект размещен по адресу http://serso.site. На главной странице находится актуальная документация. +### Через браузер +Чтобы получить результат, нужно просто перейти по ссылке, указанной в документации. Например, если мы хотим посмотреть список слов по мнению ведущего ЧГК, то нужно перейти по ссылке http://serso.site/get-all-host-so-word. Если же нужно получить только одно слово, то по ссылке http://serso.site/get-host-so-word. + + +### Curl +Введите в консоле: +``` +curl -X 'GET' \ + 'http://serso.site/get-all-dvinyatin-so-word' \ + -H 'accept: application/json' +``` +Этой командой мы запросили список всех слов на -со по мнению Федора Двинятина. В качестве ответа мы получим: +``` +{ + "words": [ + "колесо", + "мясо", + "просо", + "серсо" + ] +} +``` + + + +### Через программный интерфейс +Пример такого запроса на языке **python**: +``` +import requests + +response = requests.get('http://serso.site/get-dvinyatin-so-word') +print(response.status_code) # Вывод статус-кода ответа (200, 404 и т.д.) +print(response.text) # Вывод содержимого ответа +``` + +## Техническое описание проекта +Проект состоит из двух компонент: бекенд на фреймворке fast-api и веб-сервера на nginx. Всё это запаковано в docker, поэтому можно просто установить его и запустить контейнер. + +Для этого нужно установить docker и docker-compose. Официальный сайт: https://docs.docker.com. +Затем нужно сбилдить и запустить проект. +``` +docker-compose build +docker-compose up +``` +Проект будет доступен на localhost с помощью порта 8000, http://localhost:8000 \ No newline at end of file