Crowdfunding is a way of raising money to finance projects or business. This project was inspired by KitaBisa. Feel free to try this API.
- Go
- Gin
- GORM
- Validator
- MySQL
- JWT-Authorization
- 3rd Party APIs (Midtrans)
- REST
POST
-api/v1/users
, Create new userPOST
-api/v1/sessions
, Login userPOST
-api/v1/email_checkers
, Check user's email wheter it is registered or notPOST
-api/v1/avatars
, Upload user's avatar
GET
-api/v1/campaigns
, Get all campaignsGET
-api/v1/campaigns/:id
, Get detail campaign by idPOST
-api/v1/campaigns
, Create campaignPUT
-api/v1/campaigns/:id
, Update campaignPOST
-api/v1/campaigns-images
, Update campaign's image
GET
-api/v1/campaigns/:id/transactions
, Get the transaction data from the campaign based on its idGET
-api/v1/transactions
, Get the transaction data from users who make transactionsPOST
-api/v1/transactions
, Create transaction
GET
-/users
, Get all usersGET
-/users/new
, New user form routePOST
-/users
, New user form submitGET
-/users/edit/:id
, Edit user form routePOST
-/users/update/:id
, Edit user form submitGET
-/users/avatar/:id
, New user's avatar form routePOST
-/users/avatar/:id
, New user's avatar form submit
GET
-/campaigns
, Get all campaignsGET
-/campaigns/new
, New campaign form routePOST
-/campaigns
, New campaign form submitGET
-/campaigns/image/:id
, New campaign's image form routePOST
-/campaigns/image/:id
, New campaign's image form submitGET
-/campaigns/edit/:id
, Edit campaign's image form routePOST
-/campaigns/update/:id
, Edit campaign's image form submitGET
-/campaigns/show/:id
, Get campaign detail
GET
-/transactions
, Get all transactions
GET
-/login
, Login formPOST
-/session
, Login user (only admin role can do log in)GET
-/logout
, Logout user
Clone the project
git clone https://github.com/gustionusamba24/crowdfunding-backend.git
Go to the project directory
cd my-project
Install dependencies
go get
Start the server
go run main.go