Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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
- Host: GitHub
- URL: https://github.com/tcorcor1/custom-church-crm
- Owner: tcorcor1
- Created: 2024-09-09T17:22:26.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-09-10T13:45:05.000Z (about 2 months ago)
- Last Synced: 2024-10-16T12:19:32.576Z (23 days ago)
- Topics: aws-s3, dotnet-core, ef-core, google-apis, postgres, reactjs, shadcn-ui, tailwind, typescript
- Homepage:
- Size: 7.32 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
## Features
### Dashboard
Implemented using recharts which is an amazing library and I highly recommend.
### 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.
### Events
Implemented using FullCalendar which is an amazing library and I highly recommend.
### 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.
### 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.