Welcome to the Educational Support Platform! This web application, powered by PHP, is designed to connect students in need of financial assistance with donors willing to support their educational goals. Our platform facilitates a transparent and impactful way for students go through their education journey while donors can make a positive difference in students' lives.
-
Student Profile Creation:: As a student, I want to be able to create a profile on the app so that I can request assistance from donors.
-
View Student Profiles:: As a donor, I want to be able to browse through different student profiles and their requests for assistance so that I can choose which students to support.
-
Browse Requests Feed:: As a user, I want to be able to browse through a feed that displays the requests of students so that I can find a student to assist.
-
Sort Requests:: As a user, I want to be able to 'sort by' the requests on my feed so I can see only requests that interest me.
-
Compelling Stories:: As a student, I want to be able to create a detailed and compelling story about why I need assistance so that donors will be more likely to donate to my cause.
-
Track Donation Use:: As a donor, I want to be able to see how my donation is being used by the student so that I can feel confident that my money is being put to good use.
-
Share Profile:: As a student, I want to be able to share my profile on social media so that I can reach a wider audience and increase my chances of receiving assistance.
-
Donation Options:: As a donor, I want to be able to make a one-time or recurring donation to a student’s profile so that I can support their educational goals.
-
Upload Financial Documents:: As a student, I want to be able to upload documents that prove my financial need so that donors can see that my request is genuine.
-
Track Donation Progress:: As a donor, I want to be able to see how much money has been donated to a particular student’s profile so that I can track the progress of their campaign.
-
Send Thank You Notes:: As a student, I want to be able to send thank you notes to donors who have supported me so that I can express my gratitude and maintain a positive relationship with them.
-
Verification:: As an administrator, I want to be able to verify/authenticate requests to ensure that students are not using the app for fraudulent purposes.
-
Track Fundraising Progress:: As a student, I want to be able to see how much money I have raised towards my goal so that I can track my progress and adjust my campaign if necessary.
-
Leave Comments:: As a donor, I want to be able to leave comments on a student’s profile to offer words of encouragement or support.
-
Video Campaigns (Optional):: As a student, I want to be able to create a video explaining my situation and why I need assistance so that I can connect with potential donors on a deeper level.
-
Top Campaigns Leaderboard:: As a donor, I want to be able to see a leaderboard of top student campaigns or top donors so that I can see who is making the biggest impact.
-
Top Donors Leaderboard:: As a student, I want to be able to see a leaderboard of top donors to my campaign so that I can thank them and show my appreciation.
-
Campaign Updates:: As a student, I want to be able to share updates on my campaign’s progress so that donors can see how their contributions are making a difference.
-
Advanced Search:: As a donor, I want to be able to search for campaigns by specific criteria, such as geographic location or area of study, so that I can support causes that are most meaningful to me.
-
Student Community:: As a student, I want to be able to participate in a forum or community where I can connect with other students and share tips and advice on how to successfully fundraise for my education.
-
Donor Community:: As a donor, I want to be able to participate in a forum community so that I can connect with other donors and share stories about our donations and so I can be inspired to donate more.
-
FAQ Page:: As a user, I want access to a FAQ page so I can be better informed about the web application.
-
Account Deletion:: As a registered user, I want to be able to delete my account because I no longer want to use the web app.
-
Password Change:: As a registered user, I want to change my password so I can practice good cyber safety.
-
Anonymous Profiles:: As a student, I want the option to be anonymous so I can maintain my dignity.
-
Notification Preferences:: As a user, I want regular notifications of causes I may be interested in donating to.
-
Request Cancellation:: As a student, I want to cancel or delete my request, in the case that I no longer need assistance.
User Profiles: Students can create profiles with personal details and stories. Donors can browse and select students to support.
Feed: Users can view a feed of student requests for assistance and sort them based on preferences.
Donations: Donors can make one-time or recurring donations to students' profiles.
Transparency: Donors can see how their donations are used by students.
Verification: Administrators can verify/authenticate requests to prevent fraud.
Interaction: Students can send thank you notes, donors can leave comments, and users can participate in forums.
Privacy: Students have the option to be anonymous.
Notifications: Users can receive regular notifications about causes they may be interested in.
FAQ: Access a FAQ page for information about the web application.
Account Management: Registered users can delete their accounts and change passwords.
To get started with the Educational Support Platform:
If you are connected to the internet simply go to this url: https://withu-by-aurum.onrender.com/
OR to run it locally on your machine by following these steps below (use Linux OS):
-
Clone the repository::
[source] ---- git clone https://github.com/MrPeterManda/AURUM.git ----
-
Install PHP on Linux::
- If you don’t already have PHP installed on your Linux system, you can do so by running the following commands
-
[source] ---- sudo apt update sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath php-json ----
Verify that PHP is installed by running `php -v`.
-
Start your local web server.
-
Install the PHP Server Plugin in Visual Studio Code::
-
Open Visual Studio Code.
-
Go to the Extensions view by clicking the square icon on the left sidebar or by pressing
Ctrl+Shift+X
. -
Search for "PHP Server" in the extensions search bar.
-
Install the "PHP Server" extension by brapifra. Click the "Install" button.
-
-
Open the Project in Visual Studio Code::
-
Open Visual Studio Code.
-
Click on "File" and then "Open Folder."
-
Select the folder where you cloned the Educational Support Platform repository.
-
-
Use the PHP Server Plugin::
-
With the project open in Visual Studio Code, click on the PHP Server icon in the Activity Bar on the side (it looks like a PHP logo).
-
A menu will appear, click on "Start PHP Server."
-
Once the PHP server is started, you can open any PHP file, preferably starting with
faq.php
, by navigating to the file in the File Explorer on the left and double-clicking it.
-
-
Visit
http://localhost:your-port
in your web browser. -
Sign up as a student or donor and start using the platform.
- Ensure Docker is Installed
-
-
Make sure you have Docker installed on your local development machine.
-
You can download and install Docker Desktop for Windows or Mac or Docker Engine for Linux, depending on your operating system.
-Linux: -Navigate to Your Project Directory: Open a terminal or command prompt -and navigate to the directory where your docker-compose.yml file is located.
-Build Your Docker Containers: - Run the following command to build your Docker containers: - docker-compose build
-
Start Your Docker Containers: After the build is successful, start your containers with the following command:
-
docker-compose up
-
This command will start both the web and db containers as defined in your docker-compose.yml file.
-
Instructions on how to run a Docker image using Windows Subsystem for Linux 2 (WSL2) and Docker Desktop on Windows.
-
Open your WSL2 terminal.
-
Pull the Docker image using the command:
docker pull <image-name>
. -
Run the Docker image using the command:
docker run -it <image-name>
.
-
Open Docker Desktop.
-
Click on 'Images' on the left side menu.
-
Click on the 'Pull' button and enter the name of the image you want to pull.
-
Once the image is pulled, click on the 'Run' button next to the image name.
-
In the configuration window, set up any ports or volumes as needed, then click 'Run'.
Please replace <image-name>
with the name of your Docker image.
If you encounter any issues while running your Docker image, refer to the official Docker documentation.
We welcome contributions from the community! If you’d like to contribute to the project, please follow our [contributing guidelines](CONTRIBUTING.md).