├── .gitignore ├── LICENSE ├── README.md ├── configs ├── config.go └── config.yaml ├── docs ├── docs.go ├── sql │ └── blog.sql ├── swagger.json └── swagger.yaml ├── global ├── db.go ├── setting.go ├── tracer.go └── validator.go ├── go.mod ├── go.sum ├── internal ├── dao │ ├── article.go │ ├── article_tag.go │ ├── auth.go │ ├── dao.go │ └── tag.go ├── middleware │ ├── access_log.go │ ├── app_info.go │ ├── context_timeout.go │ ├── jwt.go │ ├── limiter.go │ ├── recovery.go │ ├── tracer.go │ └── translations.go ├── model │ ├── article.go │ ├── article_tag.go │ ├── auth.go │ ├── model.go │ └── tag.go ├── routers │ ├── api │ │ ├── auth.go │ │ ├── metrics.go │ │ ├── upload.go │ │ └── v1 │ │ │ ├── article.go │ │ │ └── tag.go │ └── router.go └── service │ ├── article.go │ ├── auth.go │ ├── service.go │ ├── tag.go │ └── upload.go ├── main.go └── pkg ├── app ├── app.go ├── form.go ├── jwt.go └── pagination.go ├── convert └── convert.go ├── email └── email.go ├── errcode ├── common_code.go ├── errcode.go └── module_code.go ├── limiter ├── limiter.go └── method_limiter.go ├── logger └── logger.go ├── setting ├── section.go └── setting.go ├── tracer └── tracer.go ├── upload └── file.go ├── util └── md5.go └── validator └── custom_validator.go /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .DS_Store 3 | storage/* -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/README.md -------------------------------------------------------------------------------- /configs/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/configs/config.go -------------------------------------------------------------------------------- /configs/config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/configs/config.yaml -------------------------------------------------------------------------------- /docs/docs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/docs/docs.go -------------------------------------------------------------------------------- /docs/sql/blog.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/docs/sql/blog.sql -------------------------------------------------------------------------------- /docs/swagger.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/docs/swagger.json -------------------------------------------------------------------------------- /docs/swagger.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/docs/swagger.yaml -------------------------------------------------------------------------------- /global/db.go: -------------------------------------------------------------------------------- 1 | package global 2 | 3 | import "github.com/jinzhu/gorm" 4 | 5 | var ( 6 | DBEngine *gorm.DB 7 | ) 8 | -------------------------------------------------------------------------------- /global/setting.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/global/setting.go -------------------------------------------------------------------------------- /global/tracer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/global/tracer.go -------------------------------------------------------------------------------- /global/validator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/global/validator.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/go.sum -------------------------------------------------------------------------------- /internal/dao/article.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/dao/article.go -------------------------------------------------------------------------------- /internal/dao/article_tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/dao/article_tag.go -------------------------------------------------------------------------------- /internal/dao/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/dao/auth.go -------------------------------------------------------------------------------- /internal/dao/dao.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/dao/dao.go -------------------------------------------------------------------------------- /internal/dao/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/dao/tag.go -------------------------------------------------------------------------------- /internal/middleware/access_log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/access_log.go -------------------------------------------------------------------------------- /internal/middleware/app_info.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/app_info.go -------------------------------------------------------------------------------- /internal/middleware/context_timeout.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/context_timeout.go -------------------------------------------------------------------------------- /internal/middleware/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/jwt.go -------------------------------------------------------------------------------- /internal/middleware/limiter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/limiter.go -------------------------------------------------------------------------------- /internal/middleware/recovery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/recovery.go -------------------------------------------------------------------------------- /internal/middleware/tracer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/tracer.go -------------------------------------------------------------------------------- /internal/middleware/translations.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/middleware/translations.go -------------------------------------------------------------------------------- /internal/model/article.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/model/article.go -------------------------------------------------------------------------------- /internal/model/article_tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/model/article_tag.go -------------------------------------------------------------------------------- /internal/model/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/model/auth.go -------------------------------------------------------------------------------- /internal/model/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/model/model.go -------------------------------------------------------------------------------- /internal/model/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/model/tag.go -------------------------------------------------------------------------------- /internal/routers/api/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/api/auth.go -------------------------------------------------------------------------------- /internal/routers/api/metrics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/api/metrics.go -------------------------------------------------------------------------------- /internal/routers/api/upload.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/api/upload.go -------------------------------------------------------------------------------- /internal/routers/api/v1/article.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/api/v1/article.go -------------------------------------------------------------------------------- /internal/routers/api/v1/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/api/v1/tag.go -------------------------------------------------------------------------------- /internal/routers/router.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/routers/router.go -------------------------------------------------------------------------------- /internal/service/article.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/service/article.go -------------------------------------------------------------------------------- /internal/service/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/service/auth.go -------------------------------------------------------------------------------- /internal/service/service.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/service/service.go -------------------------------------------------------------------------------- /internal/service/tag.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/service/tag.go -------------------------------------------------------------------------------- /internal/service/upload.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/internal/service/upload.go -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/main.go -------------------------------------------------------------------------------- /pkg/app/app.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/app/app.go -------------------------------------------------------------------------------- /pkg/app/form.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/app/form.go -------------------------------------------------------------------------------- /pkg/app/jwt.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/app/jwt.go -------------------------------------------------------------------------------- /pkg/app/pagination.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/app/pagination.go -------------------------------------------------------------------------------- /pkg/convert/convert.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/convert/convert.go -------------------------------------------------------------------------------- /pkg/email/email.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/email/email.go -------------------------------------------------------------------------------- /pkg/errcode/common_code.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/errcode/common_code.go -------------------------------------------------------------------------------- /pkg/errcode/errcode.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/errcode/errcode.go -------------------------------------------------------------------------------- /pkg/errcode/module_code.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/errcode/module_code.go -------------------------------------------------------------------------------- /pkg/limiter/limiter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/limiter/limiter.go -------------------------------------------------------------------------------- /pkg/limiter/method_limiter.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/limiter/method_limiter.go -------------------------------------------------------------------------------- /pkg/logger/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/logger/logger.go -------------------------------------------------------------------------------- /pkg/setting/section.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/setting/section.go -------------------------------------------------------------------------------- /pkg/setting/setting.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/setting/setting.go -------------------------------------------------------------------------------- /pkg/tracer/tracer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/tracer/tracer.go -------------------------------------------------------------------------------- /pkg/upload/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/upload/file.go -------------------------------------------------------------------------------- /pkg/util/md5.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/util/md5.go -------------------------------------------------------------------------------- /pkg/validator/custom_validator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/go-programming-tour-book/blog-service/HEAD/pkg/validator/custom_validator.go --------------------------------------------------------------------------------