Book Sender

Ícone do app Book Sender

Utilitário

Um app para macOS que construí para preparar livros EPUB e PDF em lote e mandá-los para o meu Kindle.

Passos demais para um livro só

Baixo livros com frequência e queria um jeito mais fácil de colocá-los no meu Kindle. Tratar cada EPUB ou PDF separadamente transformava uma entrega simples na mesma pequena sequência de checagens e decisões, de novo e de novo.

Construí o Book Sender para concentrar esse trabalho num único app para macOS, em vez de espalhá-lo numa cadeia de passos manuais.

Um lote, uma decisão

O objetivo era selecionar vários livros pelo Finder ou arrastando e soltando, entender quais estavam prontos ou bloqueados e confirmar o lote elegível uma única vez. O app ainda mantém o estado de cada livro visível, em vez de esconder o lote atrás de um indicador de progresso genérico.

Internamente, a preparação é sequencial e cada resultado é independente. Um livro que falha não decide o que acontece com o resto.

Preparando arquivos sem tocar nos originais

O app em SwiftUI tem duas telas principais: Delivery Setup e Send Book. O ZIPFoundation cuida de uma inspeção limitada do EPUB e de reparos determinísticos, que são gravados em cópias de trabalho e revalidados. PDFs ficam inalterados, e os originais selecionados nunca são substituídos.

O CryptoKit gera impressões digitais dos arquivos preparados, o Keychain protege a credencial de envio e o SwiftNIO com NIOSSL forma a fronteira SMTP. Itens que falham não são reenviados automaticamente.

Onde o pipeline para hoje

A versão pública atual inclui a interface nativa, a entrada em lote e o fluxo de preparação local. Ela consegue inspecionar a seleção e gerar arquivos de trabalho elegíveis preservando os originais.

O envio por SMTP ainda não está disponível. Não apresento o app como capaz de concluir o envio autenticado ou a aceitação pelo Kindle até que esse caminho esteja habilitado e validado de ponta a ponta.

Feito com

Swift / SwiftUI / SwiftNIO / ZIPFoundation

Código