monatone-0.2.0.0: monatone.cabal
cabal-version: 3.4
name: monatone
version: 0.2.0.0
synopsis: Pure Haskell library for audio metadata parsing and writing
description:
Monatone is a pure Haskell library for parsing and writing
metadata from audio files. Supported formats include:
- FLAC (full read\/write support with Vorbis comments and album art)
- MP3 (ID3v1, ID3v2.3, and ID3v2.4 tags including APIC frames for album art)
- M4A\/AAC\/ALAC (iTunes-style metadata with MP4 atoms and MusicBrainz support)
- OGG\/Vorbis (Vorbis comment reading)
- Opus (basic metadata support)
Features include a pure Haskell implementation with no FFI dependencies,
streaming support for large files, type-safe metadata representation,
and comprehensive tag writing support for FLAC, MP3, and M4A formats.
homepage: https://github.com/rembo10/monatone
bug-reports: https://github.com/rembo10/monatone/issues
license: GPL-3.0-only
license-file: LICENSE
author: rembo10
maintainer: rembo10@codeshy.com
category: Audio, Sound
stability: experimental
build-type: Simple
tested-with: GHC == 9.10.3
extra-source-files:
README.md
test/fixtures/*.mp3
test/fixtures/*.flac
extra-doc-files:
CHANGELOG.md
source-repository head
type: git
location: https://github.com/rembo10/monatone
library
exposed-modules:
Monatone.Common
Monatone.FLAC
Monatone.FLAC.Writer
Monatone.M4A
Monatone.M4A.Writer
Monatone.MP3
Monatone.MP3.Writer
Monatone.Metadata
Monatone.OGG
Monatone.Types
Monatone.Writer
hs-source-dirs:
src
build-depends:
base >= 4.17 && < 5,
aeson >= 2.1 && < 2.4,
base64-bytestring >= 1.2 && < 1.3,
binary >= 0.8 && < 0.9,
bytestring >= 0.11 && < 0.13,
containers >= 0.6 && < 0.9,
deepseq >= 1.4 && < 1.6,
directory >= 1.3 && < 1.4,
file-io >= 0.1 && < 0.2,
filepath >= 1.4 && < 1.6,
mtl >= 2.2 && < 2.4,
temporary >= 1.3 && < 1.4,
text >= 2.1 && < 2.2,
unordered-containers >= 0.2 && < 0.3
default-language:
Haskell2010
ghc-options: -Wall
-Wcompat
-Widentities
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wmissing-export-lists
-Wmissing-home-modules
-Wpartial-fields
-Wredundant-constraints
executable monatone
main-is: Main.hs
hs-source-dirs:
app
build-depends:
base,
monatone,
aeson,
base64-bytestring,
bytestring,
containers,
filepath >= 1.4 && < 1.6,
mtl,
text
default-language:
Haskell2010
ghc-options: -Wall
-Wcompat
-Widentities
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wmissing-export-lists
-Wmissing-home-modules
-Wpartial-fields
-Wredundant-constraints
test-suite monatone-test
type: exitcode-stdio-1.0
main-is: Spec.hs
other-modules:
Test.FLACSpec
Test.IntegrationSpec
Test.M4ASpec
Test.MP3Spec
Test.WriterSpec
hs-source-dirs:
test
build-depends:
base,
monatone,
QuickCheck >= 2.14 && < 2.17,
bytestring,
containers,
directory,
filepath >= 1.4 && < 1.6,
mtl,
process,
tasty >= 1.4 && < 1.6,
tasty-hunit >= 0.10 && < 0.11,
tasty-quickcheck >= 0.11 && < 0.12,
temporary,
text
default-language:
Haskell2010
ghc-options: -Wall
-Wcompat
-Widentities
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wmissing-export-lists
-Wmissing-home-modules
-Wpartial-fields
-Wredundant-constraints