freesound-client

```bash # npm npm install freesound-client # yarn yarn add freesound-client ```

Usage no npm install needed!

<script type="module">
  import freesoundClient from 'https://cdn.skypack.dev/freesound-client';
</script>

README

freesound-client

Test NPM version Dependency Status npm

A freesound v2 client that works in node and the browser

Installation

# npm
npm install freesound-client
# yarn
yarn add freesound-client

Usage

import FreeSound from 'freesound-client';

const freeSound = new FreeSound();

// Set token
freeSound.setToken('your-api-key');

// Getting a user
await freeSound.getUser('Jovica');
// Getting a user's related data
const [sounds, packs, bookCat, bookCatSounds] = await Promise.all([
  user.sounds(),
  user.packs(),
  user.bookmarkCategories(),
  user.bookmarkCategorySounds()
]);

// Getting a pack
const pack = await freeSound.getPack(9678);
// Getting a pack's sounds
const packSounds = await pack.sounds()

// Getting a sound
const sound = await freeSound.getSound(96541);
// Getting a sound's related data
const [analysis, similar, comments] = await Promise.all([
  sound.getAnalysis(),
  sound.getSimilar(),
  sound.getComments()
]);

// Text search 
await freeSound.textSearch('violoncello', {
  page: 1,
  filter: 'tag:tenuto duration:[1.0 TO 15.0]',
  sort: 'rating_desc',
  fields: 'id,name,url'
});

// Combined search
await freeSound.combinedSearch({
  target: 'rhythm.bpm:120&filter=tag:loop'
});

// Content search
await freeSound.contentSearch({
  target: 'lowlevel.pitch.mean:220'
});

// OAuth login
freeSound.setToken('your-api-key', 'oauth');
// Set your application's client_id and client_secret
freeSound.setClientSecrets('your-client-id', 'your-client-secret');
// Make the user navigate here
freeSound.getLoginURL();
// Use the authorization code from the login
freeSound.postAccessCode('your-temporary-code-from-login');

API Docs

See the API Docs

Runnable Example

  • See the runnable example here

Local setup

git clone https://github.com/amilajack/freesound-client
cd freesound-client
yarn
cp .env.example .env
yarn test