Skip to content

There are a lot of people with disabilities who find it difficult to do something on their own, regardless of age. Someone cannot walk and someone cannot get up and go to buy what he needs. Therefore, "Help the nearest needy" app is the best choice and opportunity for this kind of people.

Notifications You must be signed in to change notification settings

fara0000/help-the-nearest-needy-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Этап 1. Выбор реализуемой идеи

Проблема:

Есть люди с органичными возможностями, которым сложно сделать что-то самостоятельно не зависимо от возраста. Кто-то не может ходить, у кого-то ног нет, а кто-то из-за какой-то болезни не может встать и пойти купить то что ему нужно. Таких людей не мало и у многих либо работающие родственники, которые уходят утром на работу и ночу возвращаются, чтобы прокормить их, а у других вовсе и нет родственников. Но им в любой момент может понадобиться помощь, но рядом либо никого не будет, либо они будут не в состоянии сделать что-то. Например: Пойти в магазин, купить нужную одежду, выгулять собаку и ткд.

Предлагаемое решение:

Поэтому я хочу сделать приложение "help the nearest needy" которое, будет решать как раз эту проблему. На начальном этапе там будет 2 вида пользователя нуждающийся и волонтер. Оба должны будут подтверждать свою идентичность через специальный сканер, токен крупных организаций либо через что-то(придумаю) для безопасности. Нуждающийся человек выкладывает его нужду, и оно рассчитывается на ближайший радиус(по дефолту макс. 1-5 км), волонтёр видит новую какую-то помощь, может принять, а может отказаться. У волонтёров будет рейтинг, они выполняют эту работу бесплатно(для благотворительности). Волонтёр у которого концу месяца достаточно хороший рейтинг будет получать какие-то призы, путёвки либо поощрительное что-то. Это основная идея и проблема которая решается. Но позже можно масштабировать идею и добавить в приложение какие-то организации либо благотворительные фонды, которым нужны бывают волонтеры и могут хорошо отблагодарить волонтеров за их работу либо сделать хороший вклад в благотворительность.

Cервисы ОТВ:

  • Сервис для хранения данных, реляционная бд - postgresql (пока что из того что смотрел Amazon RDS)
  • Сервис для авторизации, аутентификации безопасности (из тех сервисов то что успел посмотреть (Amazon Cognito или AWS identity and access Management)
  • Сервис для контейнеризации (Amazon elasctic container | Copilot | App2Container | ECS | ECR | Amplify)

Этап 2: Выбор платформы и стека

Я очень сильно хотел выбрать AWS, но к сожалению он дорогой и в РФ если у тебя изначально не был там аккаунт, ты физически не сможешь там зарегистрироваться и привязать банковскую карту. Поэтому решил выбрать Yandex cloud т.к он предоставляет все необходимые сервисы для моего решение + ДЦ находятся в РФ и можно запросто пройти регистрацию. Но опять же он платный :(

Для реализации моего проекта мне понадобятся такие сервисы как:

  • Сервис для хранения данных, реляционная бд - Yandex Managed Service for PostgreSQL (Сервис для создания и управления кластерами PostgreSQL).
  • Сервис для авторизации, аутентификации безопасности - Yandex Identity and Access Management (Сервис для управления доступом к облачным ресурсам).
  • Сервис для контейнеризации -> Yandex Container Registry (Сервис для управления образами и контейнерами) либо если буду использовать kubernetes то Yandex Managed Service for Kubernetes® (Сервис для создания и управления кластерами Kubernetes).

Итак, внутри калькулятора Yandex cloud я рассчитал сколько будет стоить день использования облака со всеми необходимыми нами сервисами. Грант на знакомство с платформой — не менее 4000 рублей — вы получите уже при создании платёжного аккаунта. Эту сумму можно тратить на облачные сервисы Yandex Cloud в течение двух месяцев. Это довольно дешево. Яндекс Облако с 512 руб./день с грантом 4000 рублей

Этап 3 : Структурная схема с обоснованием

Если просто представлять взаимодействие сервисов, то оно выглядит так:

Обоснование:

Выбранная нами схема и подход к организации процесса дает нам множество плюсов: независимую обработку нескольких людей, безопасность, масштабируемость. Но такая схема не сильно наглядная и понятная…Поэтому кроме этой схемы я решил сделать еще BPMN модель, схему БД и расписать стэк технологий который буду использовать для своего решения

BPMN модель:

Лучше всего продемонстрировать работу нашего сервиса и описать пользовательские сценарии сможет BPMN модель: в ней мы можем отразить взаимодействие сервисов и показать процесс обработки запроса нашего пользователя

Схема базы данных:

Стэк Технологий для реализации моего решения

  • Frontend - Next.js, React, Typescript
  • Backend - Nest.js
  • Database - PostgreSQL
  • Cloud -

About

There are a lot of people with disabilities who find it difficult to do something on their own, regardless of age. Someone cannot walk and someone cannot get up and go to buy what he needs. Therefore, "Help the nearest needy" app is the best choice and opportunity for this kind of people.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published