Giter Club home page Giter Club logo

midikit's Introduction

MIDIKit

MIDIKit

Xcode 14-15 License: MIT

An elegant and modern CoreMIDI wrapper in pure Swift supporting MIDI 1.0 and MIDI 2.0.

  • Modular, user-friendly I/O
  • Automatic MIDI endpoint connection management and identity persistence
  • Strongly-typed MIDI events that seamlessly interoperate between MIDI 1.0 and MIDI 2.0
  • Automatically uses appropriate Core MIDI API and defaults to MIDI 2.0 on platforms that support it
  • Supports Swift Playgrounds on iPad and macOS
  • Full documentation available in Xcode Documentation browser, including helpful guides and getting started information

Abstractions

Additional abstractions for MIDI extensions can be found in MIDIKit:

  • Reading/writing Standard MIDI Files (SMF)
  • Control Surface protocols (HUI, etc.)
  • Synchronization protocols (MTC, etc.)

Getting Started

The library is available as a Swift Package Manager (SPM) package.

Use the URL https://github.com/orchetect/MIDIKit when adding the library to a project or Swift package.

See the getting started guide for a detailed walkthrough of how to get the most out of MIDIKit.

Documentation

See the online documentation or view it in Xcode's documentation browser by selecting the Product โ†’ Build Documentation menu.

This includes a getting started guide, links to examples, and troubleshooting tips.

System Compatibility

  • Xcode 14.0 / macOS 12.0 are minimum requirements to compile

  • Once compiled, MIDIKit supports macOS 10.12+ and iOS 10.0+.

    tvOS and watchOS are not supported (as there is no Core MIDI implementation) but MIDIKit will build successfully on those platforms in the event it is included as a dependency in multi-platform projects.

Author

Coded by a bunch of ๐Ÿน hamsters in a trenchcoat that calls itself @orchetect.

License

Licensed under the MIT license. See LICENSE for details.

Sponsoring

If you enjoy using MIDIKit and want to contribute to open-source financially, GitHub sponsorship is much appreciated. Feedback and code contributions are also welcome.

Community & Support

Please do not email maintainers for technical support. Several options are available for questions and feature ideas:

  • Questions and feature ideas can be posted to Discussions.
  • If an issue is a verifiable bug with reproducible steps it may be posted in Issues.
  • The AudioKit discord #midikit channel is also a place to find help if Discussions and documentation don't contain an answer. (Invitation is necessary)

Contributions

Contributions are welcome. Posting in Discussions first prior to new submitting PRs for features or modifications is encouraged.

midikit's People

Contributors

orchetect avatar daveconry avatar nickculbertson avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.