Skip to content

Go Implementation of Alexandria Image Storage API

License

Notifications You must be signed in to change notification settings

alexandria-api/go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alexandria

version 1.0.2

GO Image Storage and Retrieval API using Gin

Made with images in mind, but I guess aside from compression it can handle most if not all file types.

Software Requirements

Go Dependancies

  • go get github.com/gin-gonic/gin
  • go get github.com/rs/xid

Run

  • go run ./
  • go build -o alexandria && ./alexandria

Todo:

  • Upload
  • Retrieval
  • Compression
  • Verify deployment integrity (Creates necessary project folders)
  • Check if file is png or jpg for compression
  • Add uploads to queue, so they can be compressed while the http request is finished
  • Implement a proper job queue
  • Allow a limit to be put on the amount of simultaneous image compressions.
  • Tests
  • Function that processes job queue on startup
  • Add logging to all errors
  • Upload multiple files at once
  • Check if image already exists in storage
    • By filename
    • Using ImageMagick
  • Allow for optional compression
  • Rate limit
  • Add support for other file types
  • Process temporary folder into queue on start up
  • Add metadata signalling when image has been compressed
  • Process queue folder by checking metadata on start up
  • Add clear state command

About

Go Implementation of Alexandria Image Storage API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages