> For the complete documentation index, see [llms.txt](https://ephf.gitbook.io/coreplus/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ephf.gitbook.io/coreplus/packages/classes.md).

# Classes

classes

Put multiple classes together into one big class!

## Example

{% code title="index.js" %}

```javascript
const { classes } = require('coreplus')('classes');

class Foo {
    foo() {
        return 'foo';
    }
}

class Bar {
    bar() {
        return 'bar';
    }
}

const Baz = classes(Foo, Bar);
const baz = new Baz();

console.log(baz.foo());

console.log(baz.bar());
```

{% endcode %}

```bash
"foo"
"bar"
```

## Use

First, require the `classes` function using the namespace `classes`

```javascript
const { classes } = require('coreplus')('classes');
```

Then create two or more classes

```javascript
class Foo {
    foo() {
        console.log('foo');
    }
}

class Bar {
    bar() {
        console.log('bar');
    }
}

class Baz {
    baz() {
        console.log('baz');
    }
}
```

Then you can combine all the classes into one using the `classes` function

```javascript
const Qux = classes(Foo, Bar, Baz);
const qux = new Qux;

qux.foo();
qux.bar();
qux.baz();
```

```bash
"foo"
"bar"
"baz"
```
