Bug Report
Ứng dụng hỗ trợ tổ chức phi lợi nhuận trong việc quản lý tình nguyện viên và tổ chức sự kiện một cách dễ dàng. Đây là nền tảng kết nối những người muốn tham gia tình nguyện với các cơ hội phù hợp, nhằm tạo ra tác động tích cực trong cộng đồng.
Mục tiêu của hệ thống là:
-
Tăng cường hoạt động tình nguyện: Giúp mọi người, đặc biệt là thế hệ trẻ (Gen Z), dễ dàng tìm kiếm và tham gia các hoạt động tình nguyện phù hợp với sở thích và thời gian của họ.
-
Hỗ trợ tổ chức phi lợi nhuận: Cung cấp các công cụ giúp các tổ chức dễ dàng quản lý sự kiện, theo dõi tình nguyện viên, và báo cáo tác động của các hoạt động.
-
Xây dựng cộng đồng tích cực: Tạo điều kiện để mọi người gắn kết, tham gia các hoạt động có ý nghĩa và đóng góp cho xã hội một cách bền vững.
-
Đơn giản hóa quy trình quản lý tình nguyện: Loại bỏ các rào cản kỹ thuật bằng cách số hóa quy trình, từ đăng ký, tổ chức đến theo dõi và ghi nhận đóng góp của tình nguyện viên.
Dự án được thực hiện trong cuộc thi Phần Mềm Nguồn Mở-Olympic Tin học Sinh viên Việt Nam 2024. Được open source theo giấy phép Apache v2.0 bởi đội tác giả CTUBase.
Project tập trung vào các chức năng chính như sau:
- Tạo và quản lý các sự kiện tình nguyện đối với tổ chức.
- Theo dỗi và đăng ký các sự kiện tình nguyện đối với tình nguyện viên.
Hệ thống sử dụng Windmill cho front-end và workflow cùng với Supabase cho backend:
Để cài đặt và chạy được dự án, trước tiên bạn cần phải cài đặt các công cụ bên dưới. Hãy thực hiện theo các hướng dẫn cài đặt sau, lưu ý chọn hệ điều hành phù hợp với máy tính của bạn:
- Node JS: sử dụng npm giúp cài đặt windmill CLI và supabase CLI.
- Windmill CLI: cài đặt frontend của hệ thống
- Supabase CLI: cài đặt backend của hệ thống.
- Docker Desktop: (tùy chọn) dành cho cài đặt self-host.
Trước hết, hãy clone dự án về máy tính của bạn:
git clone https://github.com/CTUbase/OpenHeart.git
sau đó hãy cd đến OpenHeart:
cd OpenHeart
Đối với self-host: cd đến thư mục /supabase và chạy CLI:
cd supabase
npx supabase start
Sau khi hoành thành, supabase sẽ chạy ở địa chỉ localhost:8000.
Đối với supabase cloud:
- Bước 1: cd đến thư mục /supbase và login vào tài khoản supabase của bạn bằng personal access token:
cd supabase
npx supabase login
- Bước 2: Tạo một project mới trên Supabase, sau đó kết với project thông qua project ID:
npx supbase link --project-ref [PROJECT_ID]
Bạn có thể tìm thấy project ID trên thanh URL tại Dashboard:
https://supabase.com/dashboard/project/<project-id>
- Bước 3: Đẩy dữ liệu lên project:
npx supabase db push
-
Bước 1: Tạo một tài khoản trên windmill hoặc cài đặt windmill self-host với Docker
-
Bước 2: Tạo một workspace với tên OpenHeart (bạn có thể tùy chọn tên workspace).
-
Bước 3: cd đến thư mục windmill và tạo workspace với tên tương ứng bằng windmill CLI:
cd windmill
wmill workspace add [workspace_name] [workspace_id] [remote]
# vi du:
wmill workspace add OpenHeart OpenHeart123 https://app.windmill.dev/
- Bước 4: Sau đó, Terminal sẽ yêu cầu đăng nhập windmill qua browser hoặc token. Để đơn giản, hãy chọn browser, windmill sẽ hiển thị liên kết với trình duyệt để bạn xác nhận.
- Bước 5: Đẩy code lên windmill:
wmill sync push
- Bước 6: tìm chọn script cập nhật variable để kết nối với windmill với supbase:
- Bước 7: Truy cập vào trang đăng nhập để bắt đầu sử dụng.
Xem hướng dẫn tại đây.
Bug Report
Nếu bạn muốn đóng góp cho dự án, hãy đọc CONTRIBUTING.md để biết thêm chi tiết.
Mọi đóng góp của các bạn đều được trân trọng, đừng ngần ngại gửi pull request cho dự án.
- Nguyễn Đăng Khoa: ndkhoa1000@gmail.com
- Phạm Trí Minh: triminh00@gmail.com
- Nguyễn Đoàn Hoàng Phúc: hoangphuc090104@gmail.com
This project is licensed under the terms of the Apache 2.0 license.