A comprehensive web-based crowdfunding platform that enables users to create, manage, and support fundraising campaigns. Built with PHP, MySQL, and modern web technologies to provide a seamless fundraising experience.
CrowdFund is a full-featured crowdfunding platform designed to connect project creators with potential backers. The platform provides a secure, user-friendly environment where fundraisers can showcase their projects and supporters can contribute to causes they believe in.
- Campaign Creation: Users can create detailed fundraising campaigns with rich descriptions, images, and funding goals
- Community Features: Like, comment, and share functionality to build engagement
- Analytics Dashboard: Real-time tracking of campaign performance and donor insights
- Admin Management: Comprehensive admin panel for platform oversight and moderation
- Email Notifications: Automated email system for OTP verification and campaign updates
- 📝 Campaign Management: Create, edit, and manage fundraising campaigns
- 📊 Analytics Dashboard: Track donations, views, and engagement metrics
- 💰 Goal Tracking: Monitor progress towards funding goals
- 📧 Donor Communication: Engage with supporters through comments and updates
- 🎯 Campaign Categories: Organize campaigns by category for better discoverability
- 💳 Easy Donations: Simple and secure donation process
- 📋 Donation History: Track all contributions and supported campaigns
- ❤️ Social Features: Like and comment on campaigns
- 🔔 Notifications: Stay updated on campaign progress
- 👤 Profile Management: Manage personal information and donation preferences
- 🛡️ Content Moderation: Review and manage reported content
- 🎪 Featured Campaigns: Promote outstanding campaigns
- ❄️ Campaign Control: Freeze or suspend campaigns when necessary
- 📊 Platform Analytics: Monitor overall platform performance
- 👥 User Management: Oversee user accounts and activities
- 🔐 Authentication System: Secure login with OTP-based password recovery
- 🛡️ Data Protection: Secure handling of sensitive user and financial data
- 📱 Responsive Design: Optimized for desktop, tablet, and mobile devices
- ⚡ Performance Optimized: Fast loading times and efficient database queries
Screenshot of the main landing page showing featured campaigns and navigation
Interface for creating new fundraising campaigns
Detailed campaign page with donation options and progress tracking
Fundraiser analytics showing campaign performance metrics
Backer's view of supported campaigns and donation history
Baker's Analytics
Administrator interface for platform management
Login View
Signup View
Email Form
Email Sent successfull
Email Received
After verification
After Reset
- PHP 8.0+: Server-side scripting
- MySQL 8.0+: Database management
- PDO: Database abstraction layer
- Custom MVC Architecture: Organized code structure
- HTML5: Semantic markup
- CSS3: Modern styling with Flexbox/Grid
- JavaScript (ES6+): Interactive functionality
- Font Awesome: Icon library
- Chart.js: Data visualization
- XAMPP: Local development environment
- SMTP Integration: Email delivery system
- File Upload System: Image handling for campaigns
- Environment Configuration: Secure configuration management
- Password Hashing: Secure password storage
- SQL Injection Prevention: Prepared statements
- XSS Protection: Input sanitization
- Session Management: Secure user sessions
Create a .env file in the project root with the following configuration:
# SMTP Configuration
SMTP_HOST=mail.smtp2go.com
SMTP_PORT=465
SMTP_USERNAME=your_username
SMTP_PASSWORD=your_password
SMTP_FROM_EMAIL=support@yoursite.com
SMTP_FROM_NAME=CrowdFund SupportRun the database setup scripts:
# Create database and tables
php database_setup/create_db.php
# Generate sample data (optional)
php database_setup/generate_dummy_data.php
# Test database connection
php database_setup/test.php- User Registration - Sign up for an account with role selection
- User Login - Secure authentication with session management
- User Logout - Safe session termination and cleanup
- Password Reset - OTP-based password recovery via email
- Profile Management - View, edit, and update personal information
- Browse Campaigns - Access and explore all public fundraising campaigns
- Browse Public Campaigns - View all active campaigns without registration
- View Campaign Details - Access complete campaign information and comments
- Search and Filter Campaigns - Find campaigns by keywords, category, or status
- View Campaign Statistics - Monitor progress, backers count, and days remaining
- View Public Profiles - Access fundraiser and backer public profile pages
- Social Sharing - Share campaign links on social media platforms
- Create Campaigns - Design new fundraising campaigns with media uploads
- Edit Campaign Details - Modify campaign information, descriptions, and images
- Campaign Analytics - Access detailed performance metrics with interactive charts
- Track Campaign Performance - Monitor donations, backers, engagement, and goal progress
- Donor Communication - Engage with supporters through comments and campaign updates
- Campaign Status Management - Organize campaigns by categories and track completion status
- Make Donations - Contribute to campaigns with optional anonymity and personalized messages
- Donation History - Comprehensive analytics dashboard showing contribution patterns
- Track Supported Campaigns - Monitor progress of all backed campaigns with filtering options
- Social Engagement - Like campaigns and participate in comment discussions
- Donation Analytics Dashboard - Visual charts showing donation trends and category breakdown
- Campaign Filtering by Donation Status - Sort and filter campaigns by donation date and amount
- Content Moderation - Review and manage reported campaigns and user comments
- Feature/Unfeature Campaigns - Promote outstanding campaigns on platform homepage
- Freeze/Unfreeze Campaigns - Suspend campaigns that violate platform policies
- Platform Analytics - Monitor comprehensive platform statistics and user activity
- User Management - Oversee user accounts, roles, and platform-wide activities
- Report Management - Handle user reports and take appropriate moderation actions