├── .deepsource.toml ├── .github └── workflows │ ├── deploy.yml │ ├── docker.yml │ └── go.yml ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── README.zh-CN.md ├── cmd └── nekobox.go ├── conf └── app.sample.ini ├── dev └── screenshot.svg ├── go.mod ├── go.sum ├── internal ├── cmd │ ├── censor.go │ ├── uid.go │ └── web.go ├── conf │ ├── conf.go │ ├── db.go │ └── static.go ├── context │ ├── auth.go │ ├── context.go │ └── flash.go ├── db │ ├── censor_log.go │ ├── censor_log_test.go │ ├── db.go │ ├── main_test.go │ ├── questions.go │ ├── questions_test.go │ ├── upload_images.go │ ├── upload_images_test.go │ ├── users.go │ └── users_test.go ├── dbutil │ ├── clock.go │ ├── model.go │ ├── pagination.go │ └── testing.go ├── form │ ├── auth.go │ ├── form.go │ ├── question.go │ └── user.go ├── mail │ └── mail.go ├── route │ └── route.go ├── security │ └── censor │ │ ├── aliyun.go │ │ ├── censor.go │ │ ├── qiniu.go │ │ ├── text.go │ │ └── text_test.go ├── storage │ ├── oss.go │ ├── picture.go │ └── s3.go ├── template │ ├── date_pattern.go │ ├── minify.go │ └── template.go └── tracing │ ├── config.go │ ├── flamego.go │ └── tracing.go ├── route ├── auth │ ├── login.go │ ├── logout.go │ ├── recover.go │ └── register.go ├── home.go ├── pixel │ └── pixel.go ├── question │ ├── page.go │ └── question.go └── user │ ├── harassment.go │ ├── profile.go │ └── question.go ├── static ├── favicon.ico └── fs.go └── templates ├── auth ├── forgot-password-sent.html ├── forgot-password.html ├── login.html ├── password-recovery.html └── register.html ├── base ├── alert.html ├── footer.html └── header.html ├── change-logs.html ├── embed.go ├── home.html ├── mail ├── new-answer.html ├── new-question.html └── password-recovery.html ├── maintenance-mode.html ├── pixel.html ├── question ├── history-template.html ├── item.html ├── list.html └── new-question-template.html ├── sponsor.html └── user ├── deactivate.html ├── profile.html └── question-list.html /.deepsource.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/.deepsource.toml -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/.github/workflows/deploy.yml -------------------------------------------------------------------------------- /.github/workflows/docker.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/.github/workflows/docker.yml -------------------------------------------------------------------------------- /.github/workflows/go.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/.github/workflows/go.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/README.md -------------------------------------------------------------------------------- /README.zh-CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/README.zh-CN.md -------------------------------------------------------------------------------- /cmd/nekobox.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/cmd/nekobox.go -------------------------------------------------------------------------------- /conf/app.sample.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/conf/app.sample.ini -------------------------------------------------------------------------------- /dev/screenshot.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/dev/screenshot.svg -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/go.sum -------------------------------------------------------------------------------- /internal/cmd/censor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/cmd/censor.go -------------------------------------------------------------------------------- /internal/cmd/uid.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/cmd/uid.go -------------------------------------------------------------------------------- /internal/cmd/web.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/cmd/web.go -------------------------------------------------------------------------------- /internal/conf/conf.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/conf/conf.go -------------------------------------------------------------------------------- /internal/conf/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/conf/db.go -------------------------------------------------------------------------------- /internal/conf/static.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/conf/static.go -------------------------------------------------------------------------------- /internal/context/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/context/auth.go -------------------------------------------------------------------------------- /internal/context/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/context/context.go -------------------------------------------------------------------------------- /internal/context/flash.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/context/flash.go -------------------------------------------------------------------------------- /internal/db/censor_log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/censor_log.go -------------------------------------------------------------------------------- /internal/db/censor_log_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/censor_log_test.go -------------------------------------------------------------------------------- /internal/db/db.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/db.go -------------------------------------------------------------------------------- /internal/db/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/main_test.go -------------------------------------------------------------------------------- /internal/db/questions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/questions.go -------------------------------------------------------------------------------- /internal/db/questions_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/questions_test.go -------------------------------------------------------------------------------- /internal/db/upload_images.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/upload_images.go -------------------------------------------------------------------------------- /internal/db/upload_images_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/upload_images_test.go -------------------------------------------------------------------------------- /internal/db/users.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/users.go -------------------------------------------------------------------------------- /internal/db/users_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/db/users_test.go -------------------------------------------------------------------------------- /internal/dbutil/clock.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/dbutil/clock.go -------------------------------------------------------------------------------- /internal/dbutil/model.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/dbutil/model.go -------------------------------------------------------------------------------- /internal/dbutil/pagination.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/dbutil/pagination.go -------------------------------------------------------------------------------- /internal/dbutil/testing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/dbutil/testing.go -------------------------------------------------------------------------------- /internal/form/auth.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/form/auth.go -------------------------------------------------------------------------------- /internal/form/form.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/form/form.go -------------------------------------------------------------------------------- /internal/form/question.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/form/question.go -------------------------------------------------------------------------------- /internal/form/user.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/form/user.go -------------------------------------------------------------------------------- /internal/mail/mail.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/mail/mail.go -------------------------------------------------------------------------------- /internal/route/route.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/route/route.go -------------------------------------------------------------------------------- /internal/security/censor/aliyun.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/security/censor/aliyun.go -------------------------------------------------------------------------------- /internal/security/censor/censor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/security/censor/censor.go -------------------------------------------------------------------------------- /internal/security/censor/qiniu.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/security/censor/qiniu.go -------------------------------------------------------------------------------- /internal/security/censor/text.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/security/censor/text.go -------------------------------------------------------------------------------- /internal/security/censor/text_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/security/censor/text_test.go -------------------------------------------------------------------------------- /internal/storage/oss.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/storage/oss.go -------------------------------------------------------------------------------- /internal/storage/picture.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/storage/picture.go -------------------------------------------------------------------------------- /internal/storage/s3.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/storage/s3.go -------------------------------------------------------------------------------- /internal/template/date_pattern.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/template/date_pattern.go -------------------------------------------------------------------------------- /internal/template/minify.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/template/minify.go -------------------------------------------------------------------------------- /internal/template/template.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/template/template.go -------------------------------------------------------------------------------- /internal/tracing/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/tracing/config.go -------------------------------------------------------------------------------- /internal/tracing/flamego.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/tracing/flamego.go -------------------------------------------------------------------------------- /internal/tracing/tracing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/internal/tracing/tracing.go -------------------------------------------------------------------------------- /route/auth/login.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/auth/login.go -------------------------------------------------------------------------------- /route/auth/logout.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/auth/logout.go -------------------------------------------------------------------------------- /route/auth/recover.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/auth/recover.go -------------------------------------------------------------------------------- /route/auth/register.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/auth/register.go -------------------------------------------------------------------------------- /route/home.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/home.go -------------------------------------------------------------------------------- /route/pixel/pixel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/pixel/pixel.go -------------------------------------------------------------------------------- /route/question/page.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/question/page.go -------------------------------------------------------------------------------- /route/question/question.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/question/question.go -------------------------------------------------------------------------------- /route/user/harassment.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/user/harassment.go -------------------------------------------------------------------------------- /route/user/profile.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/user/profile.go -------------------------------------------------------------------------------- /route/user/question.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/route/user/question.go -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /static/fs.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/static/fs.go -------------------------------------------------------------------------------- /templates/auth/forgot-password-sent.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/auth/forgot-password-sent.html -------------------------------------------------------------------------------- /templates/auth/forgot-password.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/auth/forgot-password.html -------------------------------------------------------------------------------- /templates/auth/login.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/auth/login.html -------------------------------------------------------------------------------- /templates/auth/password-recovery.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/auth/password-recovery.html -------------------------------------------------------------------------------- /templates/auth/register.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/auth/register.html -------------------------------------------------------------------------------- /templates/base/alert.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/base/alert.html -------------------------------------------------------------------------------- /templates/base/footer.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/base/footer.html -------------------------------------------------------------------------------- /templates/base/header.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/base/header.html -------------------------------------------------------------------------------- /templates/change-logs.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/change-logs.html -------------------------------------------------------------------------------- /templates/embed.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/embed.go -------------------------------------------------------------------------------- /templates/home.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/home.html -------------------------------------------------------------------------------- /templates/mail/new-answer.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/mail/new-answer.html -------------------------------------------------------------------------------- /templates/mail/new-question.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/mail/new-question.html -------------------------------------------------------------------------------- /templates/mail/password-recovery.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/mail/password-recovery.html -------------------------------------------------------------------------------- /templates/maintenance-mode.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/maintenance-mode.html -------------------------------------------------------------------------------- /templates/pixel.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/pixel.html -------------------------------------------------------------------------------- /templates/question/history-template.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/question/history-template.html -------------------------------------------------------------------------------- /templates/question/item.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/question/item.html -------------------------------------------------------------------------------- /templates/question/list.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/question/list.html -------------------------------------------------------------------------------- /templates/question/new-question-template.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/question/new-question-template.html -------------------------------------------------------------------------------- /templates/sponsor.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/sponsor.html -------------------------------------------------------------------------------- /templates/user/deactivate.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/user/deactivate.html -------------------------------------------------------------------------------- /templates/user/profile.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/user/profile.html -------------------------------------------------------------------------------- /templates/user/question-list.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wuhan005/NekoBox/HEAD/templates/user/question-list.html --------------------------------------------------------------------------------