ElixirWeekly: The Elixir Community Newsletter, covering community news you easily miss, shared on ElixirStatus and the web, in one email every Thursday.
In part-3 of our blog series on developing an object store, we will work on file-format specific modules: ImageStore and VideoStore.
The ImageStore module is responsible for normalizing input images, generating thumbnail, and finally use the FileStore layer (which we developed in part-1) to store both of them to underlying filesystem.
The VideoStore module stores input videos as-is, together with its thumbnail. It uses the ImageStore module for thumbnail generation and FileStore module for actual storage.
These example modules show how they leverage a lower layer (FileStore) for actual storage which each focusing on file-format specific details only.
Read next Why am I still excited about Elixir