📎 回形针|Hydrogen 的附件中心
Go to file
2024-07-28 14:04:18 +08:00
.github/workflows 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
.idea ♻️ Moved onto dealer 2024-07-15 00:47:14 +08:00
pkg 🗑️ Remove independent mode 2024-07-28 01:15:52 +08:00
.air.toml 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
.gitignore 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
Dockerfile 🔨 Clean up dockerfile 2024-06-22 18:09:41 +08:00
go.mod ♻️ Moved onto dealer 2024-07-15 00:47:14 +08:00
go.sum ♻️ Moved onto dealer 2024-07-15 00:47:14 +08:00
license 🎉 Initial Commit 2024-05-17 15:59:51 +08:00
README.md 📝 Update README for the future features 2024-07-28 14:04:18 +08:00
settings.toml 🗑️ Remove independent mode 2024-07-28 01:15:52 +08:00

Hydrogen.Paperclip

Paperclip is the unified attachment service for all hydrogen 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 persistent 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