diff --git a/packages/client/src/components/Modal.test.tsx b/packages/client/src/components/Modal.test.tsx
new file mode 100644
index 0000000..623f6af
--- /dev/null
+++ b/packages/client/src/components/Modal.test.tsx
@@ -0,0 +1,47 @@
+import React from 'react'
+import T from 'react-dom/test-utils'
+import {Modal} from './Modal'
+import {TestUtils} from '../test-utils'
+
+describe('Modal', () => {
+
+ class TestToggle extends React.PureComponent<{}, {visible: boolean}> {
+ constructor(props: {}) {
+ super(props)
+ this.state = {
+ visible: false,
+ }
+ }
+ toggle = () => {
+ this.setState({
+ visible: !this.state.visible,
+ })
+ }
+ render() {
+ return (
+
+
+
+ hi!
+
+
+ )
+ }
+ }
+
+ describe('isActive', () => {
+ const t = new TestUtils()
+
+ it('toggles is-active via isActive property', () => {
+ const {node} = t.render()
+ expect(node.innerHTML).toContain('hi!')
+ const modal = node.querySelector('.modal') as HTMLElement
+ expect(modal.className).toEqual('modal')
+ T.Simulate.click(node.querySelector('button') as HTMLElement)
+ expect(modal.className).toEqual('modal is-active')
+ T.Simulate.click(node.querySelector('button') as HTMLElement)
+ expect(modal.className).toEqual('modal')
+ })
+ })
+
+})
diff --git a/packages/client/src/components/Modal.tsx b/packages/client/src/components/Modal.tsx
new file mode 100644
index 0000000..2ce3f60
--- /dev/null
+++ b/packages/client/src/components/Modal.tsx
@@ -0,0 +1,20 @@
+import {Modal as M, ModalBackground, ModalContent, ModalClose} from 'bloomer'
+import React from 'react'
+
+export interface IModalProps {
+ isActive?: boolean
+}
+
+export class Modal extends React.PureComponent {
+ render() {
+ return (
+
+
+
+ {this.props.children}
+
+
+
+ )
+ }
+}
diff --git a/packages/client/src/components/index.ts b/packages/client/src/components/index.ts
index e6c9daa..0444255 100644
--- a/packages/client/src/components/index.ts
+++ b/packages/client/src/components/index.ts
@@ -1,4 +1,5 @@
export * from './Button'
// export * from './Component'
export * from './Input'
+export * from './Modal'
export * from './Redirect'