Skip to content

SquarePine/squarepine_core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

SquarePine Modules

The SquarePine Modules provide a vast array of tools in the format of JUCE/C++ modules. From animation and easing, cryptopgraphy, networking, and codecs and audio effects, hopefully you will find something of use!

Everything should "Just Work™" within your JUCE project. If this isn't the case, please see the guidelines under Contributing.

Requirements

The C++ modules contained assume you're using the latest develop branch of JUCE and a C++20/modern toolchain.

Philosophy

The philosophy here is multi-part:

  • Easy to integrate into new and existing JUCE projects (ie: following the JUCE module format).
  • Open up as much code as possible.
  • Make the code as generic and flexible as possible.
  • Make the code as consistent in design, architecture, and style, as much as possible.
    • Have a look at our coding standards!

Shields

Version

Functionality Highlights

squarepine_core

Some major feature highlights:

squarepine_audio

Utilities

Some utils to avoid boilerplate and rewriting the same code again:

Metering & Graphics

We have an easy to use metering system with sp::LevelProcessor and sp::Meter.

Many, Many Audio Effects

A vast range of simple renditions of audio effects can be found, including an ecosystem to manage them.

The Effects

The Ecosystem

squarepine_graphics

  • iCUESDK support for controlling your Corsair devices' RGB lights.
    • You need to have the SDK.
    • Enable SQUAREPINE_USE_ICUESDK when integrating the squarepine_graphics module.
    • Call sp::corsair::updateAllLEDsWithColour to have some fun!
  • sp::ImageFormatManager makes it easier to bring together your favourite image formats, unifying their instances for loading images with your own codecs using JUCE's juce::ImageFileFormat ecosystem.
  • Simplifying font support for look and feels using sp::FontWeight and sp::FontFamily.

Demo Screenshots

Easing

image