📎 回形针|Hydrogen 的附件中心
Go to file
2024-11-10 01:04:07 +08:00
.github/workflows 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
.idea 🐛 Bug fixes on re-uploader 2024-11-10 01:04:07 +08:00
pkg 🐛 Bug fixes on re-uploader 2024-11-10 01:04:07 +08:00
.air.toml 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
.gitignore ♻️ Migrated to nexus 2024-10-27 13:13:40 +08:00
Dockerfile 🔒 Fix Attachment will contains GPS information 2024-10-15 22:29:55 +08:00
go.mod 💥 Simplified api of multipart uploading 2024-11-05 20:56:53 +08:00
go.sum 💥 Simplified api of multipart uploading 2024-11-05 20:56:53 +08:00
license 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
README.md 🚚 Move from hydrogen to hypernet 2024-11-02 10:41:31 +08:00
settings.toml 🐛 Still reading the abandoned temporary dest config 2024-11-10 00:50:47 +08:00

Hypernet.Paperclip

Paperclip is the unified attachment service for all hypernet services. It contains file metadata compute, instant upload, calculating hashing, multi destination, media info and more features!

Features

Paperclip store and processing uploaded files with pipeline flow. When a user try to upload files. The file will store in local first for media processing.

Then the server will publish a message into the message queue. And the background consumer will start dealing with the uploaded files.

The background consumer will hash the file and merge the files with same hashcode. The background consumer will decode the image and generate ratio and read more info from image file too.

After the processing done. The consumer will upload the file to the permanent storage like a s3 bucket and remove local cache. While the processing, the file record in database will marked to the temporary and load file from the temporary storage. When the processing done, the file record will be updated.

Supported Destinations

  • Local filesystem
  • S3 compilable bucket