Skip to content
Mimetypes for Crystal, based on node-mime.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
spec
src
.gitignore
.travis.yml
LICENSE
Makefile
README.md
shard.lock
shard.yml

README.md

mime

Mimetypes for Crystal.

Installation

Add it to shard.yml file

dependencies:
  mime:
    github: spalger/crystal-mime
    version: ~> 0.1

Usage

require "mime"

This simple module maps mime-types and extensions. Read the map using either the from_ext or to_ext methods.

Mime.from_ext(extension)

Read the mime-type for an extension. Returns tye mime-type as a string, or nil if the extension is unknown.

require "mime"
Mime.from_ext("jpg") # "image/jpeg"
Mime.from_ext("js")  # "application/javascript"
Mime.from_ext("jssssss")  # nil

Mime.to_ext(type)

Read the first extension registered for a mime-type. Returns the extension as a string or nil is the mime-type is unknown.

require "mime"
Mime.to_ext("image/jpeg") # "jpeg"
Mime.to_ext("application/javascript")  # "js"

Development

Type files are pulled from the node-mime project. To update the types.json file run

make update_types

Contributing

  1. Fork it ( https://github.com/spalger/crystal-mime/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • spalger Spencer Alger - creator, maintainer
You can’t perform that action at this time.