Skip to content

Chào mừng đến với tài liệu kỹ thuật của Safe You 👋


LOGO SAFE U

Safe You

Phần mềm mã nguồn mở hỗ trợ ứng phó tình huống khẩn cấp, khắc phục thiệt hại và cung cấp thông tin an toàn cho cộng đồng.
Online demo · Báo cáo lỗi · Yêu cầu tính năng

Về Safe You Project 👋

Safe You Project là một nền tảng ứng dụng công nghệ thông tin nhằm giải quyết các vấn đề trong việc ứng phó với các tình huống khẩn cấp, đặc biệt là trong các trường hợp thiên tai và đại dịch. Trong bối cảnh tình hình khẩn cấp, việc quản lý, giao tiếp và điều hành giữa các cấp phải thực hiện qua nhiều bước thủ công, gây ra sự chậm trễ và khó khăn trong việc phối hợp. Điều này dẫn đến sự thiếu hiệu quả trong việc phản ứng nhanh chóng và kịp thời.

Với mục tiêu giảm thiểu thời gian và tăng cường tính hiệu quả, Safe You Project được phát triển để tự động hóa các quy trình nghiệp vụ như quản lý nhân sự, theo dõi tiến độ công việc, và cung cấp các giải pháp giao tiếp nhanh chóng và hiệu quả giữa các cấp trong tổ chức. Hệ thống sẽ cho phép gửi thông báo, cập nhật tình hình, và quản lý thông tin khẩn cấp một cách tự động và trực quan, giúp các cơ quan chức năng và cộng đồng có thể phản ứng ngay lập tức khi có sự cố xảy ra.

Giá trị cốt lõi của Safe You Team:

  • Yêu thương 💖
  • Chủ động 🌱
  • Tận tâm 🌼

(trở lên đầu)

Danh mục 📋

Mục lục
  1. Nền tảng phát triển
  2. Chức năng chính
  3. Hướng dẫn cài đặt
  4. Tài liệu kỹ thuật
  5. Lộ trình
  6. Đóng góp cho dự án
  7. Giấy phép
  8. Liên hệ

Cấu trúc repository

Chúng tôi chia ra làm 3 repository chính hiện tại:

  • Safe You Baas - phát triển nền tảng Back-end as a Service cho Safe You
  • Safe You Client - phát triển nền tảng Front-end cho Safe You
  • Safe You Internals - phát triển nền tảng quản trị và quản lý dữ liệu nội bộ cho Safe You

Nền tảng phát triển

Để hoàn thiện nền tảng, Safe You Team sử dụng các công nghệ sau:

Phần mềm mã nguồn mở sử dụng

  • Appsmith - Nền tảng phát triển Low-Code hiện đại (Giấy phép Apache 2.0)
  • Supabase - Nền tảng cung cấp cơ sở dữ liệu, giao tiếp thời gian thực và AI (Giấy phép Apache 2.0)
  • Strapi - Hệ thống quản lý nội dung Headless CMS mã nguồn mở (Giấy phép MIT Expat)
  • RabbitMQ - Hệ thống xử lý hàng đợi tin nhắn mã nguồn mở (Giấy phép Mozilla Public License 2.0)
  • N8N - Hệ thống quản lý quy trình làm việc (Giấy phép Sustainable 1.0)
  • Docker - Nền tảng phát triển ứng dụng container (Giấy phép Apache 2.0)

Ngôn ngữ lập trình, thư viện, framework và cơ sở dữ liệu

  • Node.js - JavaScript runtime (Giấy phép MIT)
  • React - JavaScript library for building user interfaces (Giấy phép MIT)
  • Express - Web framework for Node.js (Giấy phép MIT)
  • PostgreSQL - Cơ sở dữ liệu mã nguồn mở (Giấy phép PostgreSQL)
  • Deno - Secure runtime for JavaScript and TypeScript (Giấy phép MIT)

Dịch vụ bên thứ 3

  • Geocode.map API - Dịch vụ cung cấp thông tin địa lý
  • Goong API - Dịch vụ cung cấp bản đồ Việt Nam và thế giới
  • Azure AI API - Dịch vụ cung cấp AI và Machine Learning của Microsoft
  • Twilio SMS - Dịch vụ cung cấp SMS và gọi điện thoại để gửi cảnh báo đến người dùng
  • Gmail SMTP - Dịch vụ gửi email thông báo đến người dùng
  • Gemini AI - Safe You dùng mô hình vector embedding text-embedding-004 của Google để hỗ trợ tìm kiếm tài liệu
  • Appsmith AI - Dịch vụ cung cấp LLM của Appsmith

(trở lên đầu)

Chức năng chính

1. Đối với người dùng

1.1. Bản đồ tương tác

  • Hiển thị vùng bị ảnh hưởng và các trung tâm hỗ trợ, khu vực an toàn. 1.2. Nhận cảnh báo: Nhận cảnh báo theo vị trí GPS thời gian thực để người dân ứng phó và bảo vệ bản thân. 1.3. Chợ tình thương:
  • Hỗ trợ nhân đạo sau thảm họa
  • Cung cấp nhu yếu phẩm giữa người cho và người nhận dễ dàng. 💖 1.4. Tình nguyện:
  • Cho đi là còn mãi, Safe You cung cấp cho người dùng cơ hội được trở thành tình nguyện viên dễ hơn. 1.5. Cập nhật thông tin:
  • Tổng hợp nguồn tin tức tin cậy
  • Hướng dẫn an toàn đến từ Safe You 1.6. Đóng góp thông tin
  • Điền form, gắn tag (yêu cầu hỗ trợ, thông tin về thiệt hại, thông tin về tình huống khẩn cấp, phân loại theo khu vực,...)

2. Đối với quản trị viên

2.1. Gửi cảnh báo đến người dùng Tính năng này sẽ gửi cảnh báo thông qua: SMS, Email (hoặc gọi điện). Tích hợp hệ thống cảnh báo theo vị trí địa lý (geofencing) để gửi thông báo đến đúng khu vực bị ảnh hưởng. Tùy chọn gửi của Admin gồm có:

  • Admin gửi theo vùng
  • (Giới hạn vùng được gửi)

2.2. Phân công nhiệm vụ

  • Tự động cập nhật tin tức (đổ data từ báo chính thống)

2.3. Tạo tình huống khẩn cấp Tạo thông tin về khẩn cấp để thông báo

2.4. Báo cáo hoạt động

2.5. Đăng bài viết hỗ trợ người dùng

Phân tích nghiệp vụ bài toán qua Use-case diagram của nhóm

Use case diagram

Hướng dẫn cài đặt

Dưới đây là hướng dẫn ngắn cách cài đặt hệ thống.

  1. Cài đặt các công cụ cần thiết:

  2. AppSmith: Hướng dẫn cài đặt AppSmith

  3. Supabase: Hướng dẫn cài đặt Supabase
  4. Strapi: Hướng dẫn cài đặt Strapi
  5. RabbitMQ: Hướng dẫn cài đặt RabbitMQ
  6. N8N: Hướng dẫn cài đặt N8N
  7. Docker: Hướng dẫn cài đặt Docker
  8. Node.js: Hướng dẫn cài đặt Node.js
  9. React: Hướng dẫn cài đặt React
  10. Express: Hướng dẫn cài đặt Express
  11. PostgreSQL: Hướng dẫn cài đặt PostgreSQL

  12. Hướng dẫn cách chạy hệ thống: Để biết thêm thông tin chi tiết, bạn có thể xem tài liệu kỹ thuật của Safe You tại đây.

(trở lên đầu)

Tài liệu kỹ thuật

Safe You sử dụng Mkdocs để tạo tài liệu kỹ thuật. Bạn có thể xem tài liệu kỹ thuật của Safe You tại đây.

(trở lên đầu)

Lộ trình

  • [x] Phát triển hệ thống cảnh báo
  • [x] Hệ thống tình nguyện viên
  • [x] Hệ thống chợ tình thương
  • [x] Hệ thống cập nhật thông tin
  • [x] Hệ thống đóng góp thông tin
  • [x] Hệ thống gửi cảnh báo đến người dùng
  • [x] Hệ thống phân công nhiệm vụ
  • [ ] Tích hợp phân tích dữ liệu
  • [ ] Tích hợp hệ thống nguồn mở với thiết bị IoT

Bạn có thể xem issues để biết thêm danh sách các tính năng được đề xuất (và các vấn đề đã biết).

(trở lên đầu)

Đóng góp

Những đóng góp quý báu của bạn làm cho cộng đồng mã nguồn mở trở nên tuyệt vời hơn. Mọi đóng góp bạn đều được đánh giá cao và Safe You rất biết ơn về điều đó.

Nếu bạn có đề xuất nào giúp dự án trở nên tốt hơn, hãy fork dự án và tạo một pull request. Bạn cũng có thể đơn giản mở một issue với tag "enhancement" hoặc ấn vào các đường dẫn sau:

  1. Báo cáo lỗi: Báo cáo lỗi
  2. Yêu cầu tính năng: Yêu cầu tính năng

Ngoài Github, Safe You cũng se tổng hợp các lỗi và hướng dẫn hỗ trợ tại đây

Giấy phép

Sau khi tham khảo, nhóm Safe You quyết định sử dụng giấy phép GNU - General Public License v3.0.

(trở lên đầu)

Liên lạc

Chúng tôi luôn sẵn sàng hỗ trợ bạn bất cứ khi nào Facebook

Ngoài ra bạn cũng có thể gửi email cho Safe You Team qua địa chỉ: safeyouteam@gmail.com

Các lập trình viên của khởi đầu dự án Safe You:

(trở lên đầu)