====== Basic Tools ======
**Overview: ** Konduktiva comes with some useful tools not just for music but also for programming in general.
**Things To Note:** This tutorial assumes you have already installed Konduktiva successfully using the [[https://github.com/renickbell/konduktiva|Konduktiva installation]] instructions and have read through and understood the [[:first_steps|first steps tutorial]]. The tutorial also assumes 2 things. One, Konduktiva has been assigned to the //K// variable. Two, user created a Musical Environment using the //setUpMusicalEnvironment// function using //K.defaultConfigurationObject// as the first argument and //'exampleMidiPlayer'// as the third argument then, assigned the output to the //e// variable.
const K = require('konduktiva')
let e = K.setUpMusicalEnvironment(K.defaultConfigurationObject,4,'exampleMidiPlayer')
===== All =====
The //All// function does what the JavaScript [[|Object.keys]] does but it has a shorter function call.
The //All// function takes 1 argument in form of an object and it will return all the keys/variables names in that object.
K.All({a: 2, b: 3, c: 4})
===== array-toolkit =====
[[https://www.npmjs.com/package/array-toolkit|array-toolkit]] is a collection of tools that are made for manipulating JavaScript arrays.
It is assigned to the //A// variable in Konduktiva:
K.A
Run this code to see all functions that come with array-toolkit:
K.all(K.A)
===== emptyConfigObj ====
The //emptyConfigObj// function returns an empty configuration object.
Running the code below will inform you of what each configuration option expects as input.
K.emptyConfigObj.toString()