# plover v0.6.0 - Table of Contents Plover provides a high-level API for connecting to IMAP servers over implicit TLS, authenticating, managing mailboxes, and fetching/searching/storing messages. ## Pages - Guides - [Email Content](email-content.md) - [Testing with Plover](testing.md) - [Unsolicited Responses](unsolicited-responses.md) ## Modules - [Plover](Plover.md): IMAP4rev2 client library for Elixir. - [Plover.Auth.Plain](Plover.Auth.Plain.md): SASL PLAIN authentication encoder. - [Plover.Auth.XOAuth2](Plover.Auth.XOAuth2.md): Google XOAUTH2 authentication encoder. - [Plover.BodyStructure](Plover.BodyStructure.md): Traversal utilities for `%Plover.Response.BodyStructure{}` trees. - [Plover.Command](Plover.Command.md): Represents an IMAP command to be sent to the server. - [Plover.Connection](Plover.Connection.md): GenServer managing a single IMAP connection. - [Plover.Content](Plover.Content.md): Content-Transfer-Encoding decoding and charset conversion for email body parts. - [Plover.Protocol.CommandBuilder](Plover.Protocol.CommandBuilder.md): Serializes `%Command{}` structs to iodata for transmission over the wire. - [Plover.Protocol.Parser](Plover.Protocol.Parser.md): Recursive-descent parser for IMAP response token lists. - [Plover.Protocol.ResponseEncoder](Plover.Protocol.ResponseEncoder.md): Serializes response structs to IMAP wire-format strings. - [Plover.Protocol.Tokenizer](Plover.Protocol.Tokenizer.md): Tokenizes IMAP response lines from binary data into a token stream. - [Plover.Response](Plover.Response.md): Top-level module for IMAP response types. - [Plover.Response.Address](Plover.Response.Address.md): An email address structure. - [Plover.Response.BodyStructure](Plover.Response.BodyStructure.md): The body structure of a message. - [Plover.Response.Capability](Plover.Response.Capability.md): CAPABILITY response data. - [Plover.Response.Condition](Plover.Response.Condition.md): An untagged status response (OK, NO, BAD, BYE, or PREAUTH). - [Plover.Response.Continuation](Plover.Response.Continuation.md): A continuation request response. - [Plover.Response.ESearch](Plover.Response.ESearch.md): ESEARCH response data. - [Plover.Response.Enabled](Plover.Response.Enabled.md): ENABLED response data. - [Plover.Response.Envelope](Plover.Response.Envelope.md): The envelope structure of a message. - [Plover.Response.Mailbox](Plover.Response.Mailbox.md): Mailbox-related response structures. - [Plover.Response.Mailbox.Exists](Plover.Response.Mailbox.Exists.md): An EXISTS response indicating the number of messages in the mailbox. - [Plover.Response.Mailbox.Flags](Plover.Response.Mailbox.Flags.md): A FLAGS response. - [Plover.Response.Mailbox.List](Plover.Response.Mailbox.List.md): A LIST response entry. - [Plover.Response.Mailbox.Status](Plover.Response.Mailbox.Status.md): A STATUS response. - [Plover.Response.Message](Plover.Response.Message.md): Message-related response structures. - [Plover.Response.Message.Expunge](Plover.Response.Message.Expunge.md): An EXPUNGE response. - [Plover.Response.Message.Fetch](Plover.Response.Message.Fetch.md): A FETCH response for a single message. - [Plover.Response.Tagged](Plover.Response.Tagged.md): A tagged server response (OK/NO/BAD). - [Plover.Response.Unhandled](Plover.Response.Unhandled.md): An unrecognized untagged response. - [Plover.SequenceSet](Plover.SequenceSet.md): Parse and format IMAP sequence sets. - [Plover.Transport](Plover.Transport.md): Behaviour for IMAP transport connections. - [Plover.Transport.Mock](Plover.Transport.Mock.md): Mock transport for testing. Each mock socket is a GenServer process that stores enqueued responses and records sent data. - [Plover.Transport.SSL](Plover.Transport.SSL.md): SSL transport implementation for production IMAP connections. - [Plover.Types](Plover.Types.md): Shared type definitions for the Plover IMAP client.