diff --git a/src/Ass/Char.cc b/src/Ass/Char.cc
index fbc0f7cf09145a7cc029fcdae9889a4b4dbea52e..4cb2cb45ce2514af9af7c49acc4e0bfe789805c8 100644
--- a/src/Ass/Char.cc
+++ b/src/Ass/Char.cc
@@ -1,7 +1,7 @@
 #include "Char.h"
 #include "Syl.h"
 
-Char::Char(Syl *const syl, const QChar)
+Char::Char(Syl *const syl, const QChar /*unused*/)
     : parentLine(syl->parentLine)
     , parentSyl(syl)
 {
diff --git a/src/Ass/Char.h b/src/Ass/Char.h
index f031e8b8092802d67a36b4bc56534aa32199d712..89aba5eca534c25eb770b7494d7956a0afbc9115 100644
--- a/src/Ass/Char.h
+++ b/src/Ass/Char.h
@@ -10,7 +10,7 @@ class Syl;
 
 class Char {
 private:
-    QChar content;
+    QChar content{};
     quint64 dur{ 0 };
 
 public:
diff --git a/src/Ass/Line.cc b/src/Ass/Line.cc
index b4da36c735575cf4dfa901a97758232fbd2b9016..a9743dd1baf33ccd430a6eb1df94c2ed67784f79 100644
--- a/src/Ass/Line.cc
+++ b/src/Ass/Line.cc
@@ -1,5 +1,5 @@
 #include "Line.h"
 
-Line::Line(const QString &)
+Line::Line(const QString & /*unused*/)
 {
 }
diff --git a/src/Ass/Style.cc b/src/Ass/Style.cc
index 557b28662d79df35c3b4a61b4fe477d477c33151..b3067b29beba4cdec78049968d975f14ffaff0c4 100644
--- a/src/Ass/Style.cc
+++ b/src/Ass/Style.cc
@@ -1,5 +1,5 @@
 #include "Style.h"
 
-Style::Style(const QString &)
+Style::Style(const QString & /*unused*/)
 {
 }
diff --git a/src/Ass/Style.h b/src/Ass/Style.h
index 2f9d30cc5bbcf3c675f3136729bfd48c76731010..8a8907e64fd388f477f84843d809d0045b77f054 100644
--- a/src/Ass/Style.h
+++ b/src/Ass/Style.h
@@ -19,9 +19,9 @@ class Style {
 private:
     QString styleName;
     QString fontName;
-    int fontSize;
+    int fontSize{};
 
-    Color primaryColor, secondaryColor, outlineColor, backColor;
+    Color primaryColor{}, secondaryColor{}, outlineColor{}, backColor{};
 
     bool bold{ false }, italic{ false }, underline{ false }, strikeOut{ false };
 
@@ -29,7 +29,7 @@ private:
     float spacing{ 0.0 }, angle{ 0.0 }, borderStyle{ 0.0 };
 
     int alignment{ 2 }, marginL{ 0 }, marginR{ 0 }, marginV{ 0 };
-    int encoding;
+    int encoding{};
 
 public:
     // Should grab and copy a user-changeable default style
diff --git a/src/Ass/Syl.cc b/src/Ass/Syl.cc
index 9edf155a6cf90c111d20a1c9747d5d23d190c09c..5eb7869fde284ab8aa1f678f3021d47d6c491612 100644
--- a/src/Ass/Syl.cc
+++ b/src/Ass/Syl.cc
@@ -1,6 +1,6 @@
 #include "Syl.h"
 
-Syl::Syl(Line *const line, const QString &)
+Syl::Syl(Line *const line, const QString & /*unused*/)
     : parentLine(line)
 {
 }
diff --git a/src/AudioVisualizer.cc b/src/AudioVisualizer.cc
index 19942f59d8a587a9b3a90491295a18d4cb018880..5cac8408a9d143443a1f136c8b4ff74244a87b5e 100644
--- a/src/AudioVisualizer.cc
+++ b/src/AudioVisualizer.cc
@@ -1,12 +1,12 @@
 #include "AudioVisualizer.h"
 #include "AudioUtils.h"
 
+#include <QGraphicsPixmapItem>
 #include <QLabel>
+#include <QMessageBox>
 #include <QScrollArea>
-#include <QVBoxLayout>
 #include <QScrollBar>
-#include <QMessageBox>
-#include <QGraphicsPixmapItem>
+#include <QVBoxLayout>
 
 AudioVisualizer::AudioVisualizer(QWidget *parent) noexcept
     : QWidget(parent)
@@ -23,8 +23,8 @@ AudioVisualizer::printSpectrum(QImage pixmap) noexcept
     setLayout(layout);
 }
 
-AudioVisualizer *
-AudioVisualizer::fromFile(const QString &filename)
+auto
+AudioVisualizer::fromFile(const QString &filename) -> AudioVisualizer *
 {
     if (filename.isEmpty())
         return nullptr;
@@ -34,8 +34,9 @@ AudioVisualizer::fromFile(const QString &filename)
     size_t size           = 0;
     int rc                = decodeAudioFile(filename.toStdString().c_str(), sample_rate, &data, &size);
     auto data_deleter     = [](double *ptr) -> void {
-        if (ptr != nullptr)
+        if (ptr != nullptr) {
             av_free(ptr);
+        }
     };
     std::unique_ptr<double, decltype(data_deleter)> data_holder(data, data_deleter);
 
@@ -55,7 +56,7 @@ AudioVisualizer::fromFile(const QString &filename)
     QImage img(pixs, width, height / 2, width, QImage::Format_Grayscale8, pixs_deleter, pixs);
     img = img.mirrored(false, true);
 
-    AudioVisualizer *audioVisualizer = new AudioVisualizer;
+    auto *audioVisualizer = new AudioVisualizer;
     audioVisualizer->printSpectrum(img);
     return audioVisualizer;
 }
diff --git a/src/DialogHelp.cc b/src/DialogHelp.cc
index 406215de3d338fba2fc2756ff7588501fc6d19cd..c509196f7adf348cc2f872dd327fbb06e444cf9e 100644
--- a/src/DialogHelp.cc
+++ b/src/DialogHelp.cc
@@ -1,6 +1,5 @@
 #include "DialogHelp.h"
 
-#include <cstdio>
 #include <QWidget>
 #include <QLabel>
 #include <QDialog>
diff --git a/src/Document/VivyDocument.cc b/src/Document/VivyDocument.cc
index fd053fdbdb4f105bebb4bde9dea051edb677206f..b9b0cede45184e098100a0994a7174749ebddfe8 100644
--- a/src/Document/VivyDocument.cc
+++ b/src/Document/VivyDocument.cc
@@ -1,17 +1,17 @@
 #include "VivyDocument.h"
 #include "../Utils.h"
 
-#include <QStringList>
-#include <QString>
 #include <QFileInfo>
+#include <QString>
+#include <QStringList>
 
 VivyDocument::VivyDocument(const QString &name)
     : documentName(name)
 {
 }
 
-bool
-VivyDocument::loadSubDocument(const QString &name) noexcept
+auto
+VivyDocument::loadSubDocument(const QString &name) noexcept -> bool
 {
     QFileInfo file(name);
     SubDocument type;
@@ -37,8 +37,8 @@ VivyDocument::loadSubDocument(const QString &name) noexcept
     return false;
 }
 
-bool
-VivyDocument::loadSubDocument(const QString &name, VivyDocument::SubDocument asType) noexcept
+auto
+VivyDocument::loadSubDocument(const QString &name, VivyDocument::SubDocument asType) noexcept -> bool
 {
     QFileInfo file(name);
     SubDocument type;
@@ -62,8 +62,8 @@ VivyDocument::loadSubDocument(const QString &name, VivyDocument::SubDocument asT
     return true;
 }
 
-bool
-VivyDocument::detectDocumentType(const QFileInfo &file, SubDocument *type)
+auto
+VivyDocument::detectDocumentType(const QFileInfo &file, SubDocument *type) -> bool
 {
     Vivy::Utils::DocumentType docType;
     bool rc = Vivy::Utils::detectDocumentType(file, &docType);
@@ -85,8 +85,8 @@ VivyDocument::detectDocumentType(const QFileInfo &file, SubDocument *type)
     return rc;
 }
 
-bool
-VivyDocument::rename(const QString &name) noexcept
+auto
+VivyDocument::rename(const QString &name) noexcept -> bool
 {
     /* Compute new paths */
     const QString newNameWithExtension = name.right(filePrefix.size()) == filePrefix ? name : name + "." + filePrefix;
@@ -96,8 +96,9 @@ VivyDocument::rename(const QString &name) noexcept
     /* Create folder if needed */
     QDir dirOp;
     const QString newAbsDirPath = newPath.dir().absolutePath();
-    if (!dirOp.exists(newAbsDirPath))
+    if (!dirOp.exists(newAbsDirPath)) {
         dirOp.mkpath(newAbsDirPath);
+    }
 
     if (dirOp.rename(oldPath.absoluteFilePath(), newPath.absoluteFilePath())) {
         documentLocation = newPath.dir();
@@ -107,44 +108,44 @@ VivyDocument::rename(const QString &name) noexcept
     return false;
 }
 
-AudioDocument *
-VivyDocument::getAudioSubDocument() const noexcept
+auto
+VivyDocument::getAudioSubDocument() const noexcept -> AudioDocument *
 {
     return audioDocument.get();
 }
 
-VideoDocument *
-VivyDocument::getVideoSubDocument() const noexcept
+auto
+VivyDocument::getVideoSubDocument() const noexcept -> VideoDocument *
 {
     return videoDocument.get();
 }
 
-AssDocument *
-VivyDocument::getAssSubDocument() const noexcept
+auto
+VivyDocument::getAssSubDocument() const noexcept -> AssDocument *
 {
     return assDocument.get();
 }
 
-VivyDocument *
-VivyDocument::fromPath([[maybe_unused]] const QString &path) noexcept
+auto
+VivyDocument::fromPath([[maybe_unused]] const QString &path) noexcept -> VivyDocument *
 {
     return nullptr;
 }
 
-VivyDocument *
-VivyDocument::newEmpty([[maybe_unused]] const QString &name) noexcept
+auto
+VivyDocument::newEmpty([[maybe_unused]] const QString &name) noexcept -> VivyDocument *
 {
     return nullptr;
 }
 
-QString
-VivyDocument::getName() const noexcept
+auto
+VivyDocument::getName() const noexcept -> QString
 {
     return documentName;
 }
 
-int
-VivyDocument::getDocumentCapabilities() const noexcept
+auto
+VivyDocument::getDocumentCapabilities() const noexcept -> int
 {
     return documentType;
 }
diff --git a/src/Document/VivyDocument.h b/src/Document/VivyDocument.h
index d98080b46d50fd9faac7dfe0c4546aca01dcef5d..ff396dd5659a874e53a5c18e49cf06ed0220c0ad 100644
--- a/src/Document/VivyDocument.h
+++ b/src/Document/VivyDocument.h
@@ -31,9 +31,9 @@ private:
     int documentType{ 0 };
 
     /* Links to other files, they're not embeded inside the vivy file */
-    std::unique_ptr<AudioDocument> audioDocument;
-    std::unique_ptr<VideoDocument> videoDocument;
-    std::unique_ptr<AssDocument> assDocument;
+    std::unique_ptr<AudioDocument> audioDocument{};
+    std::unique_ptr<VideoDocument> videoDocument{};
+    std::unique_ptr<AssDocument> assDocument{};
 
     /* Create an empty document */
     explicit VivyDocument(const QString &name);
diff --git a/src/Document/VivyDocumentView.cc b/src/Document/VivyDocumentView.cc
index 4ed5d9c3117776c671ce9f1e5cb7d1a12b1f2934..96150f1c495ccd79ae53320e7e6771acf299addd 100644
--- a/src/Document/VivyDocumentView.cc
+++ b/src/Document/VivyDocumentView.cc
@@ -1,9 +1,8 @@
 #include "VivyDocumentView.h"
-#include "VivyDocument.h"
 #include "../AudioVisualizer.h"
+#include "VivyDocument.h"
 
 #include <QVBoxLayout>
-#include <cassert>
 
 VivyDocumentView::VivyDocumentView(VivyDocument *doc) noexcept
     : document(*doc)
diff --git a/src/Main.cc b/src/Main.cc
index c080b83f57c31644f6e73a8f852ad64fdd2aab57..e96652655196d30e2f4e1049a39dc5f86a5d7121 100644
--- a/src/Main.cc
+++ b/src/Main.cc
@@ -1,8 +1,8 @@
 #include "MainWindow.h"
 #include <QApplication>
 
-int
-main(int argc, char **argv) noexcept
+auto
+main(int argc, char **argv) noexcept -> int
 {
     QApplication app(argc, argv);
     MainWindow window;
diff --git a/src/MainWindow.cc b/src/MainWindow.cc
index f6f43a1dd53a68c289d48e43bb90b8069631d0db..23713eaa8e1a911d40c921a1b0b934d572d9d08c 100644
--- a/src/MainWindow.cc
+++ b/src/MainWindow.cc
@@ -4,9 +4,6 @@
 #include "DialogHelp.h"
 #include "Document/VivyDocumentView.h"
 
-#include <iostream>
-#include <cstring>
-#include <cstdio>
 #include <QFileInfo>
 #include <QStandardPaths>
 #include <QPixmap>
@@ -51,14 +48,17 @@ MainWindow::openAudioFile() noexcept
     QFileInfo fileInfo(filename);
 
     VivyDocument *document = documentStore.loadDocument(filename);
-    if (document == nullptr)
+    if (document == nullptr) {
         return;
+    }
 
     AudioVisualizer *audioVisualizer = AudioVisualizer::fromFile(filename);
-    if (audioVisualizer == nullptr)
+    if (audioVisualizer == nullptr) {
         return;
+    }
 
     VivyDocumentView *documentView = documentStore.getDocumentView(document->getName());
-    if (documentView != nullptr)
+    if (documentView != nullptr) {
         setCentralWidget(documentView);
+    }
 }
diff --git a/src/MainWindow.h b/src/MainWindow.h
index a80416d226129a6d6040d175ae9e0ccfd0471d21..f3e7f96fdd4c55c7c08277f1cde0282a423f6abf 100644
--- a/src/MainWindow.h
+++ b/src/MainWindow.h
@@ -15,7 +15,7 @@ class QAction;
 class MainWindow final : public QMainWindow {
     Q_OBJECT
 
-    VivyDocumentStore documentStore;
+    VivyDocumentStore documentStore{};
 
 public:
     explicit MainWindow(QWidget *parent = nullptr) noexcept;
diff --git a/src/TimingBar.cc b/src/TimingBar.cc
index 4182030b993a2cb27d92d2c74f99c4647917b2ee..a9ca196e015990829cb477f6c74375e9c20922cf 100644
--- a/src/TimingBar.cc
+++ b/src/TimingBar.cc
@@ -1,14 +1,14 @@
 #include "TimingBar.h"
 
+#include <QApplication>
+#include <QGraphicsSceneMouseEvent>
 #include <QLabel>
-#include <QScrollArea>
-#include <QPen>
 #include <QMessageBox>
 #include <QMouseEvent>
-#include <QGraphicsSceneMouseEvent>
-#include <QApplication>
-#include <QVBoxLayout>
+#include <QPen>
+#include <QScrollArea>
 #include <QScrollBar>
+#include <QVBoxLayout>
 
 TimingBar::TimingBar(QLine line, QColor color) noexcept
     : QGraphicsLineItem(line)
diff --git a/src/TimingScene.cc b/src/TimingScene.cc
index 5b326416c87c829d956723ce93a1496af637af47..3841edef2633f70ab8fedf29da24aa6c4a07fdb6 100644
--- a/src/TimingScene.cc
+++ b/src/TimingScene.cc
@@ -1,16 +1,16 @@
 #include "TimingScene.hpp"
 
-#include <QLabel>
 #include <QGraphicsLineItem>
-#include <QGraphicsView>
 #include <QGraphicsPixmapItem>
-#include <QScrollArea>
-#include <QVBoxLayout>
-#include <QScrollBar>
+#include <QGraphicsView>
+#include <QLabel>
 #include <QMessageBox>
 #include <QMouseEvent>
 #include <QPainter>
 #include <QGraphicsSceneMouseEvent>
+#include <QScrollArea>
+#include <QScrollBar>
+#include <QVBoxLayout>
 
 TimingScene::TimingScene(QWidget *parent) noexcept
     : QGraphicsScene(parent)
diff --git a/src/TimingView.cc b/src/TimingView.cc
index 278936b2f1786d2687135d993271c092a17064fc..dcb7f82627ffd7c119139021beed6e74f3246398 100644
--- a/src/TimingView.cc
+++ b/src/TimingView.cc
@@ -1,16 +1,16 @@
 #include "TimingView.hpp"
 
-#include <QLabel>
+#include <QAbstractScrollArea>
 #include <QGraphicsLineItem>
-#include <QGraphicsView>
 #include <QGraphicsPixmapItem>
-#include <QScrollArea>
-#include <QVBoxLayout>
-#include <QScrollBar>
+#include <QGraphicsView>
+#include <QLabel>
 #include <QMessageBox>
 #include <QMouseEvent>
 #include <QPainter>
-#include <QAbstractScrollArea>
+#include <QScrollArea>
+#include <QScrollBar>
+#include <QVBoxLayout>
 #include <QtGlobal>
 
 #define TO_ADD_TO_IMAGE_HEIGHT 2 /* Used for alignement */