Skip to content
This repository has been archived by the owner on Dec 10, 2024. It is now read-only.
/ ProCESO Public archive

AI-Integrated Community Outreach Management System with Sentiment Analysis and Automated E-Certificate. In Compliance to CIT 400 - Capstone 2

License

Notifications You must be signed in to change notification settings

jhdcruz/ProCESO

Folders and files

NameName
Last commit message
Last commit date
Dec 1, 2024
Jul 18, 2024
Dec 1, 2024
Oct 15, 2024
Dec 9, 2024
Dec 1, 2024
Dec 1, 2024
Nov 27, 2024
Sep 24, 2024
Jun 16, 2024
Jun 11, 2024
Jul 7, 2024
Dec 1, 2024
Dec 1, 2024
Dec 9, 2024
Dec 9, 2024
Oct 23, 2024
Dec 1, 2024
Dec 9, 2024
Sep 19, 2024
Sep 20, 2024
Nov 19, 2024
Nov 14, 2024
Oct 13, 2024

Repository files navigation

ProCESO – AI-Integrated Community Outreach Management System

Full Title: ProCESO – AI-Integrated Community Outreach Management System with Sentiment Analysis and Automated E-Certificate for TIP Manila – CESO Department

Skip to screenshots.

Important

This system/application is not meant for public usage, and is tailored for academic institutional context.

This "system" only serves as public reference for similar system or application.

Project Objectives

This capstone project aims to develop an AI-integrated web-based community outreach management system that simplifies and centralizes administrative tasks to enhance the efficiency and impact of the institution’s community extension services in fostering sustainable community relationships.

  1. To develop a system feature that facilitates the internal coordination of community outreach activities, such as managing faculty assignment, uploading of reports, and historical archiving for preserving past activities’ analytics.
  2. To implement automated processes for generating, distributing, and validating e-certificates of participants, thereby reducing manual workload and improving operational efficiency;
  3. To integrate AI models for analyzing and evaluating feedback, such as sentiment analysis and emotion classification, to effectively collect feedback and support data-driven decision-making through AI-assisted insights.

Tech Stack

Overview of current technologies and resources to be used in the system.

Front-End

  • Next.js 15 (Canary)
  • React 19 (RC)
  • TypeScript 5
  • Mantine
  • TailwindCSS 3

Core Packages

Back-End

  • Supabase (Database, Auth, Storage)
  • Trigger.dev (Background Jobs, Cron Jobs)
  • Resend (Email)*

* Resend are not locally-hostable.

AI Models

Note

All models uses quantized version of their original model for lightweight, and are run locally using @huggingface/transformers.

With the exception of OpenAI GPT-4.0 mini.

Utilities

  • GitHub Actions (CI)
  • Codacy (SAST)
  • FOSSA (License Compliance)
  • Mend Renovate (Deps. Mgmt.)
  • Mend Bolt (Deps. Vulnerability Scanner)

Deployment & Monitoring

Screenshots

Some screenshots were not included, such as:

  • Login Page
  • User Management
  • Series Page (similar to Activities but categorized per series)
  • Emails sent by the system

Dashboard

Dashboard 1
Dashboard Calendar using FullCalendar library.

Dashboard 2
Dashboard Calendar Yearly Overview (FullCalendar.js).

Activities/Events

Activites 1
Event List

Activities 2
Event details with WYSIWYG editor, File uploads (Reports), Faculty Assignment (Delegation).

Activities 2.1
Event delegation response (w/ Email notice to respective authorities).

Activities 3
New/Update Event Form Modal with Mapbox Integration.

Activities 4
Goals & Objectives, Dept. to notify (email).

Activities 5
AI-Generated summary with overall ratings.

Activities 6
World cloud and overview of overall evaluation analysis.

Activities 7
Sentiment Analysis and Emotion Analysis per evaluation.

Activities 8
Copy of submitted evaluation form.

Certificates

Certificates 1
Participant lists for excluding in generation (attendance-related).

The generated certificate also contains QR code for validation.

The Generate generates certificates locally (offline use), and downloads as ZIP file. The Send uses Trigger.dev integration.

Certificates 2
Integrated with Trigger.dev, monitor the status of the generation process.

Development

Prerequisites

  1. Download and setup bun.

  2. Setup required instances of the ff.

  3. Install dependencies using bun install or bun i.

  4. After setting up Supabase tables, generate types locally:

    SUPABASE_PROJECT=your-project-id bun gen:t

Setup

  1. Setup acquired environment variables from services above in .env file.

    A copy of .env file can be found in .env.sample file.

  2. Configure Supabase Auth for Google OAuth.

  3. Configure trigger.config.ts:

    export const config: TriggerConfig = {
      project: '', // change to your trigger.dev project api
      // ...
    };
  4. Run the application

    bun dev     # or dev:t to use turbo
    bun dev:em  # to run email previews by react-email

Using Doppler for Secret Management (Optional)

This project used Doppler (CLI) for secrets management, therefore most scripts are tailored for such env variables to be available when running them using:

doppler run -- bun gen:t

Or you can do an alias to shorten it:

alias dp='doppler run --'

# now you can run scripts using:
dp bun gen:t
# or
dp bun dev

You can upload your existing .env file using:

doppler secret upload .env

Note

You wouldn't need an .env file when using Doppler. (You can delete it)

It acquires the necessary secrets from doppler's dashboard using the CLI, and can be used across machines without manual transfers.

Deployment

Note

This project was deployed using Vercel.

Deploying to other providers are not tested, and is up to you.

After deploying the main application, Don't forget to deploy the Trigger.dev triggers:

bun deploy:tr
# or
bunx trigger.dev@latest deploy

License

This work is distributed under Apache License, Version 2.0.

FOSSA Status

Disclaimer

All trademarks, logos, and service marks displayed on this website are the property of their respective owners.

  • Technological Institute of the Philippines (T.I.P)

    T.I.P and the T.I.P logos are trademarks or registered trademarks of Technological Institute of the Philippines ( T.I.P) in the Philippines.

  • Google, LLC.

    Google and the Google logos are trademarks or registered trademarks of Google LLC in the United States and other countries.