Add Notebook
diff --git a/ide/Notebook.h b/ide/Notebook.h
new file mode 100644
index 0000000..0bd84ec
--- /dev/null
+++ b/ide/Notebook.h
@@ -0,0 +1,32 @@
+#pragma once
+
+#include <QObject>
+
+#include "Cell.h"
+
+class CellModel;
+
+class Notebook : public QObject
+{
+    Q_OBJECT
+    QML_ELEMENT
+
+    Q_PROPERTY(CellModel *cellModel READ cellModel NOTIFY cellModelChanged)
+
+public:
+    explicit Notebook(QObject *parent = nullptr);
+    Notebook(const Notebook &other, QObject *parent = nullptr);
+
+    CellModel *cellModel();
+
+signals:
+    void cellModelChanged();
+
+protected:
+    friend class CellModel;
+
+    QList<Cell> _cells;
+    CellModel *_cellModel;
+};
+
+Q_DECLARE_METATYPE(Notebook)