Easy fund is a part of crowdfunding, an approach to raise assets for a particular reason or task by requesting an enormous number from individuals to give cash, ordinarily in limited quantities, and generally during a moderately brief timeframe, like a couple of months. It empowers pledge drives to gather cash from countless individuals through online stages.
A modern prototype appplication of crowdfunding which reflects the work of aspiring talent, building network among the students, teachers as well as for the public who can appricate the meaning of hard-work, excellence and more precisely one's chasing to through the dream. It's not like the natural crowdfunding but now a days, there isn't a single person who doesn't need help from others in a nutshell you can think of as a platform for the speakers who can speak, represent and get the attraction for hope to make a change for their dream
Create your project with the steps or procedure whatever you can recall to stick with the prototype of easyfund and that project or story will be under 24hour monetization as admin will be verifying each and every single details wheither the project should go live or not. User will be notified as well as he/she will be alarmed when any person support small contribution to their project or commented even though any person can share their or other's project through given link in the story page via social media.
Three steps to create a project
- General Settings (your demand, days to cover, type of the project)
- CoverPage (upload a cover picture related to your story)
- Give a title, detailed story and related attachments to get more awareness
A preview to take a look about the information you provide
For the admin-panel
Pending projects | Runing projects | Total Transactions amount |
admin is responsible whether the newly created project should go live or not through ( accept, reject ) button . After the successful project creation, user will be able to share, comment, track the required amount collection etc from their end so Keep crawling.
- Design Architecture & Tools : MVC Design pattern, Figma
- Template Engine : Ejs
- Front-end Development : Html, CSS3, Bootstrap
- Back-end Development : Node JS, Express JS
- Database Design & Management : MongoDB
- IDE : Visual Studio
- Real Time Authentication like (signIn,logIn) & forget password option developed using nodemailer.
- Role Base view rendering of which we're talking about (user,admin) only.
- Able to upload single and multiple images as per the project story relates.
- Notification gets popup in case of project gets accepted, funded or someone commented in the story.
- Comment view enabled for any logged in user who wants to give effective message.
- Payment gateway added using sslcommerz for development practice.
check out the env.txt file which contains all the information regarding the project setup and some valuable information about role management
- clone the repository named (production) from here and run it in any empty folder through gitbash etc.
https://github.com/Niloy173/EasyFund.git
- In the project directory, run the below command to install required dependencies & dev-dependencies
npm install
- create a .env file in the root directory && paste the below information
PORT = 3000
APP_NAME=Easy Fund
APP_URL=http://localhost:3000/
DB_URL=mongodb://localhost:27017/EasyFundDataBase
AUTH_EMAIL=provide_your_auth_email
AUTH_PASS=provide_your_auth_pass
COOKIE_NAME=easyfund
COOKIE_SECRET=re456wechh7895uhu12df
JWT_TOKEN=fd21uhu9587hhcew654er
JWT_EXPIRE=86400000
STORE_ID=register_ssl_id
STORE_PASSWORD=register_ssl_password
- go to package.json file and in the script tag paste the following code
"start": "nodemon app.js"
- paste your auth_email and auth_password (below link to setup app password)
https://support.google.com/mail/answer/185833?hl=en
- run the project in your terminal with the below command
npm start
- go to the below endpoint to see the result
localhost:3000
for the sslcommerz testing, try open an account from here. you will get the store_id & store_password in your mail. replace (register_ssl_id,register_ssl_password) them in the .env file.