diff --git a/src/UI/VivyDocumentView.cc b/src/UI/VivyDocumentView.cc
index 67f94bb9c99a0357624be0db27ac154ea4c144a8..b7e9a6128d18ee2a69df471ac88847d77103d70c 100644
--- a/src/UI/VivyDocumentView.cc
+++ b/src/UI/VivyDocumentView.cc
@@ -7,6 +7,7 @@
 #include <QHeaderView>
 #include <QTreeView>
 #include <QVBoxLayout>
+#include <QTableView>
 
 using namespace Vivy;
 
@@ -76,6 +77,24 @@ VivyDocumentView::loadVideoView() noexcept
 void
 VivyDocumentView::loadAssView() noexcept
 {
+    if (assLines)
+        delDockWidget(&assLines);
+
+    if (document->checkDocumentCapabilities(VivyDocument::Capabilities::AssAble)) {
+        assModel.reset(new AssLinesModel(document->getAssSubDocument()->getLines()));
+        assLines         = new QDockWidget("ASS Lines", this);
+        QTableView *view = new QTableView(assLines);
+        view->setModel(assModel.get());
+        view->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
+        view->horizontalHeader()->setStretchLastSection(true);
+        view->verticalHeader()->setVisible(true);
+        view->setSelectionMode(QAbstractItemView::ExtendedSelection);
+        assLines->setWidget(view);
+        assLines->setFeatures(QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetClosable);
+        assLines->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea |
+                                  Qt::BottomDockWidgetArea);
+        addDockWidget(Qt::BottomDockWidgetArea, assLines, Qt::Vertical);
+    }
 }
 
 void
diff --git a/src/UI/VivyDocumentView.hh b/src/UI/VivyDocumentView.hh
index 493b75e1112f8d4e2e259ef3f173448a5b4aab5b..b30b27d14dcbc2290f6e0b4c082ab029607cede1 100644
--- a/src/UI/VivyDocumentView.hh
+++ b/src/UI/VivyDocumentView.hh
@@ -7,6 +7,7 @@
 
 #include "../Lib/Document/VivyDocument.hh"
 #include "DocumentViews/AudioVisualizer.hh"
+#include "DocumentViews/AssLinesModel.hh"
 #include "AbstractDocumentView.hh"
 #include "PropertyModel.hh"
 
@@ -39,9 +40,11 @@ public slots:
 
 private:
     std::shared_ptr<VivyDocument> document;
-    std::unique_ptr<PropertyModel> propertyModel;
+    std::unique_ptr<PropertyModel> propertyModel{ nullptr };
+    std::unique_ptr<AssLinesModel> assModel{ nullptr };
     QDockWidget *visualizer{ nullptr };
     QDockWidget *property{ nullptr };
+    QDockWidget *assLines{ nullptr };
 };
 
 }