Latest 0.2.3
License MIT
Platforms ios 10.3, osx 10.12

Build Status


MimeParser is a simple MIME (Multipurpose Internet Mail Extensions) parsing library written in Swift (to learn more about mimes refer to RFC 822, RFC 2045, RFC 2046)



CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To integrate MimeParser into your Xcode project using CocoaPods, specify it in your Podfile:

project '<Your Project Name>.xcodeproj'
platform :osx, '10.12'

target 'Test' do
  pod 'MimeParser', '~> 0.1'

Then, run the following command:

$ pod install


Import MimeParser before using it:

import MimeParser

Create parser object:

let parser = MimeParser()

Let this be a simplest mime to be parsed:

let str = """
    Content-Type: text/plain


You are ready to parse the mime:

let mime = try parser.parse(str)

Returned mime object is a root of the mime tree and provides access to its header fields and content:

public enum MimeContent {
    case body(MimeBody)
    case mixed([Mime])
    case alternative([Mime])

public struct MimeHeader {
    public let contentTransferEncoding: ContentTransferEncoding?
    public let contentType: ContentType?
    public let contentDisposition: ContentDisposition?
    public let other: [RFC822HeaderField]

if let contentTypeString = mime.header.contentType?.raw {
    // "text/plain"

if case .body(let body) = mime.content {
    // "Test"

Decoded mime’s content is simply to retrieve:

let content = try mime.decodedContentData()
// "Test"


MimeParser is available under the MIT license. See the LICENSE file for more info.


MimeParser is still very simple and incomplete, so pull requests welcome!

Latest podspec

    "name": "MimeParser",
    "version": "0.2.3",
    "summary": "Mime parsing in Swift | Relevant RFCs: RFC 822, RFC 2045, RFC 2046",
    "description": "MimeParser is a simple MIME (Multipurpose Internet Mail Extensions) parsing library written in Swift.",
    "homepage": "",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    "authors": "miximka",
    "platforms": {
        "ios": "10.3",
        "osx": "10.12"
    "source": {
        "git": "",
        "tag": "0.2.3"
    "source_files": "Sources/MimeParser/*.swift"

Pin It on Pinterest

Share This