Crowdfunding is the practice of funding a project or venture by raising small amounts of money from a large number of people, typically via the Internet. The aim of this project is to create a web platform for starting fundraising projects in Egypt.
- Features
- DataBase Schema
- Technologies Used
- Project Structure
- Screenshots
- Installation
- Usage
- Contributing
- License
- Authentication System:
- Registration with email verification.
- Login with email and password.
- Forgot Password.
- User Profile:
- View profile information.
- View owned projects.
- View donations.
- Edit profile information.
- Delete account with confirmation.
- Projects:
- Create fundraising campaigns with:
- Title
- Details
- Category
- Multiple pictures
- Total target
- Multiple tags
- Start/end time for the campaign
- View projects and donate.
- Add comments on projects.
- Report inappropriate projects or comments.
- Rate projects.
- Project creators can cancel projects if donations are less than 25% of the target.
- Project page displays overall average rating, project pictures in a slider, and 4 similar projects based on tags.
- Create fundraising campaigns with:
- Homepage:
- Slider to show the highest five rated running projects.
- List of the latest 5 projects.
- List of latest 5 featured projects.
- List of categories with their projects.
- Search bar to search projects by title or tag.
- Vue.js
- Django
- MySQL
project/
├── frontend/ # Vue.js frontend
├── src/
├── public/
├── ...
├── backend/ # Django backend
├── app/
├── manage.py
├── ...
├── database/ # MySQL database schema
├── schema.sql
├── ...
├── related_images/ # Screenshots related to the project
├── AboutUs.png
├── Schema.png
├── admin-add-feature-project.png
├── ...
└── README.md
- Clone the repository:
git clone https://github.com/your_username/your_project.git
- Install dependencies:
# Frontend
cd frontend
npm install
# Backend
cd backend
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
- Database setup:
- Create a MySQL database.
- Import schema.sql to set up the database schema.
- Configuration:
- Configure backend settings in backend/project/settings.py.
- Configure database settings in backend/project/settings.py
- Run the backend server:
cd backend
python manage.py runserver
- Run the frontend:
cd frontend
npm run serve
- Open your browser and go to http://localhost:8080 to access the application.
Contributor | Avatar | Profile |
---|---|---|
Ahmed Dabour | Ahmed Dabour | |
Amr Elrefaaey | Amr Elrefaaey | |
Amir Elattar | Amir Elattar | |
Doha Seif | Doha Seif | |
Mohamed Abdelazeem | Mohamed Abdelazeem | |
Ahmed Nagy | Ahmed Nagy |