Johnjud-file is a file service that can upload, download, and delete files for the Johnjud project.
Johnjud is a pet adoption web application of the CUVET For Animal Welfare Club
- golang
- gRPC
- AWS S3
- postgresql
- golang 1.21 or later
- docker
- makefile
-
Clone this repo
-
Copy
config.example.yaml
inconfig
and paste it in the same directory with.example
removed from its name. -
Run
go mod download
to download all the dependencies.
- Run
docker-compose up -d
- Run
make server
orgo run ./cmd/.
- Run
make test
orgo test -v -coverpkg ./... -coverprofile coverage.out -covermode count ./...
- Johnjud-gateway: Routing and request handling
- Johnjud-auth: Authentication and authorization
- Johnjud-backend: Main business logic
- Johnjud-file: File management service
- Johnjud-proto: Protobuf files generator
- Johnjud-go-proto: Generated protobuf files for golang
- Johnjud-frontend: Frontend web application