diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,5 @@
 Copyright (c)2014, Robin KAY
+Copyright (c)2025, Sascha-Oliver Prolic
 
 All rights reserved.
 
diff --git a/hsqml-demo-notes.cabal b/hsqml-demo-notes.cabal
--- a/hsqml-demo-notes.cabal
+++ b/hsqml-demo-notes.cabal
@@ -1,12 +1,12 @@
 Name:          hsqml-demo-notes
-Version:       0.3.3.0
+Version:       0.3.4.0
 Cabal-version: >= 1.10
 Build-type:    Simple
 License:       BSD3
 License-file:  LICENSE
-Copyright:     (c) 2014-2015 Robin KAY
+Copyright:     (c) 2014-2015 Robin KAY, (c) 2025 Sascha-Oliver Prolic
 Author:        Robin KAY
-Maintainer:    komadori@gekkou.co.uk
+Maintainer:    saschaprolic@googlemail.com
 Stability:     experimental
 Homepage:      http://www.gekkou.co.uk/software/hsqml/
 Category:      Graphics
@@ -16,7 +16,7 @@
 Extra-source-files:
     README CHANGELOG
 Description:
-    Sticky notes example program implemented in HsQML
+    Sticky notes example program implemented in HsQML.
 
 Executable hsqml-notes
     Default-language: Haskell2010
@@ -24,11 +24,11 @@
     Main-is: NotesFast.hs
     Build-depends:
         base          == 4.*,
-        containers    >= 0.4 && < 0.6,
-        text          >= 0.11 && < 1.3,
-        transformers  >= 0.2 && < 0.5,
+        containers    >= 0.4 && < 0.7,
+        text          >= 2.0 && < 2.1,
+        transformers  >= 0.2 && < 0.7,
         sqlite-simple >= 0.4.8 && < 0.5,
-        hsqml         >= 0.3.2.1 && < 0.4
+        hsqml         >= 0.3.6 && < 0.4
     GHC-options: -threaded
 
 Executable hsqml-notes-slow
@@ -37,11 +37,11 @@
     Main-is: NotesSlow.hs
     Build-depends:
         base          == 4.*,
-        text          >= 0.11 && < 1.3,
+        text          >= 2.0 && < 2.1,
         sqlite-simple >= 0.4.8 && < 0.5,
-        hsqml         >= 0.3.2.1 && < 0.4
+        hsqml         >= 0.3.6 && < 0.4
     GHC-options: -threaded
 
 Source-repository head
-    type:     darcs
-    location: http://hub.darcs.net/komadori/hsqml-demo-notes
+    type:     git
+    location: https://github.com/prolic/hsqml-demo-notes
diff --git a/qml/notes-flip.qml b/qml/notes-flip.qml
--- a/qml/notes-flip.qml
+++ b/qml/notes-flip.qml
@@ -1,5 +1,6 @@
 import QtQuick 2.0
 import QtQuick.Window 2.0
+import HsQML.Model 1.0
 
 Window {
     width: 800; height: 600;
@@ -78,7 +79,7 @@
     }
 
     Repeater {
-        model: notes;
+        model: AutoListModel { source: notes; mode: AutoListModel.ByKey; }
 
         Flipable {
             id: flipper;
diff --git a/qml/notes-pro.qml b/qml/notes-pro.qml
--- a/qml/notes-pro.qml
+++ b/qml/notes-pro.qml
@@ -1,6 +1,7 @@
 import QtQuick 2.0
 import QtQuick.Controls 1.1
 import QtQuick.Layouts 1.1
+import HsQML.Model 1.0
 
 ApplicationWindow {
     id: view;
@@ -46,10 +47,12 @@
         ScrollView {
             ListView {
                 id: notesView;
-                model: notes;
                 focus: true;
                 highlightMoveDuration: 0;
                 highlightResizeDuration: 0;
+                model: AutoListModel {
+                    source: notes; mode: AutoListModel.ByKey;
+                }
                 delegate: Text {
                     width: parent.width;
                     maximumLineCount: 1;
diff --git a/qml/notes.qml b/qml/notes.qml
--- a/qml/notes.qml
+++ b/qml/notes.qml
@@ -1,5 +1,6 @@
 import QtQuick 2.0
 import QtQuick.Window 2.0
+import HsQML.Model 1.0
 
 Window {
     width: 800; height: 600;
@@ -12,7 +13,7 @@
     }
 
     Repeater {
-        model: notes;
+        model: AutoListModel { source: notes; mode: AutoListModel.ByKey; }
 
         Rectangle {
             id: noteView; color: 'yellow';
diff --git a/src/NotesFast.hs b/src/NotesFast.hs
--- a/src/NotesFast.hs
+++ b/src/NotesFast.hs
@@ -45,7 +45,7 @@
 type ModelVar = MVar (Map Note NoteData)
 type CmdVar = MVar DBCommand
 
-type Lens t p = (Functor f) => (p -> f p) -> t -> f t
+type Lens t p = forall f. (Functor f) => (p -> f p) -> t -> f t
 
 view :: Lens t p -> t -> p
 view ln = getConst . ln Const
