Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tcorcor1/custom-church-crm

CRM built for church leadership to manage contacts, events, announcements, documents and meeting minutes
https://github.com/tcorcor1/custom-church-crm

aws-s3 dotnet-core ef-core google-apis postgres reactjs shadcn-ui tailwind typescript

Last synced: 9 days ago
JSON representation

CRM built for church leadership to manage contacts, events, announcements, documents and meeting minutes

Awesome Lists containing this project

README

        

# CRM Tool Built For Church Leaders/Admins

- [Summary](#summary)
- [Technology](#technology)
- [Demo](#demo)
- [Features](#features)

## Summary

A simple CRM built for church leadership teams that want to manage contacts/contact activity, meeting minutes/documents, events and announcements. Majority of components used are shadcn with exception of the grids. Although I love how the shadcn table looks, I went with MUI datagrid as it provided some features that I needed.

## Technology

- React 18.3.1 w/ TypeScript 4.9.5
- Shadcn & tailwind
- .NET 8 w/ .NET Identity
- EF Core 8.0.4
- PostgreSQL
- OData compliant
- Google SMTP & Google Places API
- AWS S3 for Document Management
- Serilog and Cloudwatch for logging/monitoring

## Demo


Demo

## Features

### Dashboard

Implemented using recharts which is an amazing library and I highly recommend.


Dashboard

### Contacts

Implement using React Hook Form and zod for validation. Upon creation of activities related to a contact, last activity date will be updated so users can tell if someone has been reached out to recently.

### Announcements

Users that have opted in to receive announcement notifications will be emailed when a new announcement is created or when a comment is added to an announcement they have commented/participated in already. This can all be managed in their notification preferences.


Annuncements

### Events

Implemented using FullCalendar which is an amazing library and I highly recommend.


Events

### Meeting Minutes

React Hook Form with Zod used to create & update meeting minutes. Also, supports document upload via S3.

### Documents

Document management implemented with AWS S3 using pre-signed URLs for download.


Documents

### Activities

Simple entity with a dynamic form that will change when selecting different activity types.

### Registration

Registration approvals were required for the site. This is mostly handled via identity, however, I added a registration approval step that is available to site admins

### Feedback

Used for bugs, general feedback and questions about the site.