Logo Lanfrica

nf48500/Crowdfunding-Egypt

Domain:

socioeconomic

Record type:

software
Creator:
nf4
Host:
Crowdfunding Egypt - A Django platform that enables Egyptian creators to launch fundraising campaigns. Includes user registration with email verification, project creation with images, secure donations, and social features. Supports community-driven innovation across Egypt. # Crowdfunding Platform A modern Django-based crowdfunding platform with a complete authentication system. ## Features ### 1. Authentication System #### Registration - **Required Fields:** - First name - Last name - Email - Username - Password - Confirm password - Mobile phone (validated against Egyptian phone numbers) - Profile picture (optional) #### Registration - Users are automatically activated upon registration - No email activation required - Immediate access to the platform #### Login - Email-based authentication - Password validation - Facebook login placeholder (bonus feature) #### Forgot Password (Bonus) - Users can request password reset via email - Secure password reset links with 24-hour expiration - Professional email templates for password reset - Complete password reset workflow #### User Profile - **Profile Viewing**: Users can view their complete profile information - **Project Management**: View all created projects in one place - **Donation History**: Track all donations made to projects - **Profile Editing**: Edit all profile data except email address - **Additional Information**: Optional fields for birthdate, Facebook profile, and country - **Account Deletion**: Secure account deletion with confirmation modal - **Profile Picture**: Upload and manage profile pictures ## Installation ### Prerequisites - Python 3.8+ - pip - virtual environment (recommended) ### Setup 1. **Clone the repository** ```bash git clone cd crowdfunding ``` 2. **Create and activate virtual environment** ```bash python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate ``` 3. **Install dependencies** ```bash pip install -r requirements.txt ``` 4. **Run migrations** ```bash python manage.py makemigrations python manage.py migrate ``` 5. **Create superuser (optional)** ```bash python manage.py createsuperuser ``` 6. **Run the development server** ```bash python manage.py runserver ``` 7. **Access the application** - …