Karam in Action, Change in Motion.
KaramFund is a crowdfunding platform designed to connect donors with impactful projects, fostering a culture of generosity and positive change.
- Secure and user-friendly donation system
- Campaign creation and management
- Transparent funding progress tracking
- User authentication and profile management
- Integration with payment gateways
- Responsive and accessible UI
- Frontend: React, Bootstrap
- Backend: Django, Django REST Framework
- Database: PostgreSQL
- Hosting: PythonAnywhere
If a team member hasn't cloned the repo yet, they should run:
git clone git@github.com:NourElDin023/karam-fund.git
cd karamfundSince all features will be merged into main, it's essential to avoid direct commits to main.
- Make sure you're on the
mainbranch:git checkout main
- Pull the latest changes:
git pull origin main
Whenever a team member starts working on a new feature:
- Pull the latest
mainbranch:git checkout main git pull origin main
- Create a new feature branch:
Examples:
git checkout -b feature/your-feature-name
feature/authenticationfeature/project-managementfeature/donations
Make changes and add files. After coding:
git add .
git commit -m "Implemented authentication system"
git push origin feature/your-feature-name- Go to GitHub.
- Navigate to the Pull Requests tab.
- Click New Pull Request.
- Select base branch →
main, and compare →feature/your-feature-name. - Add a meaningful title and description.
- Click Create Pull Request.
- At least one team member should review the PR.
- If approved, merge into
main. - After merging, delete the feature branch from GitHub.
To delete the local feature branch after merging:
git checkout main
git pull origin main
git branch -d feature/your-feature-name - Always work on a feature branch (
feature/your-feature-name). - Regularly pull updates from
mainbefore starting new work. - Push to GitHub & open a PR to merge into
main. - Review and merge into
main. - Delete the feature branch after merging.
Following these steps ensures a smooth collaboration and clean repository history. 🚀