alindgren / fundraise Goto Github PK
View Code? Open in Web Editor NEWA .NET core library for building fundraising applications
License: MIT License
A .NET core library for building fundraising applications
License: MIT License
Use RabbitMQ or Azure Queue Storage to queue a message send.
Use case 1: A donor signs up to pay $10/month until cancelled.
Use case 2: A donor pledges $120 dollars paid $10/month (ends after 12 months).
Depend on Stripe to process the recurring payment and handle a webhook to update donor records.
Currently iterating through each donation to set the FundraiserName and loading the Fundraiser entity for each donation. See https://github.com/alindgren/Fundraise/blob/master/Fundraise.MvcExample/Controllers/ProfileController.cs#L40-L48
The original idea was to track changes to donations but maybe could be done in a more generic way for changes to all entities -- perhaps loosely model it after Stripe's events.
Create events in Fundraise.RequestHandlers.InProcess and add event handlers that the application (MVC Example web app), can use to create and publish the IntegrationEvents.
While at it, fix the namespace for DonateHandler.cs.
Need to come up with an architecture for this. Would be great if there was a third party library to deal with sending emails using templates and various services.
Create nuget packages for:
Also, possibly move Fundraise.MvcExample (and Tests) to a separate repo.
We can update donations if there is a refund.
The core unit tests use EF Core's InMemoryDatabase for testing, but that does not seem to be possible with the MVC example site (specifically the Identity DB context). So the MVC Example site is running using LocalDB. While the database is not committed to the repo, it does not get recreated each time the site runs, or when the Selenium tests run, so tests could fail after the first time it is run (without manually removing the old database). Not sure the best way to solve this problem...
This expands the scope of the project, but the idea is to create a system for tracking Donors. Need to figure out how this would relate/differ from a user system (ASP.NET Identity).
Perhaps use RabbitMQ? https://www.rabbitmq.com/
Check out https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.