diff --git a/index.js b/index.js
index cd1e0a8a3f6b1cc116a7ec147fa18a647065169a..694ab63df71a1054e645ac4fb6d3e7a1ce2cba62 100644
--- a/index.js
+++ b/index.js
@@ -2,10 +2,12 @@ const express = require('express');
 const app = express();
 
 const renderer = require('./middleware/render');
+const photoCounter = require('./middleware/photocount');
 
 app.set('view engine', 'ejs');
 
 app.get('/', renderer('chatscreen'));
+app.get('/photocount', photoCounter());
 app.use(express.static('static'));
 
 const server_port = 3000;
diff --git a/middleware/photocount.js b/middleware/photocount.js
new file mode 100644
index 0000000000000000000000000000000000000000..1eed98aa769dd4344d0e4cee623f6f672a652571
--- /dev/null
+++ b/middleware/photocount.js
@@ -0,0 +1,10 @@
+const fs = require('fs');
+const dir = './static/pictures';
+
+module.exports = function () {
+    return function (req, res, next) {
+        return fs.readdir(dir, (err, files) => {
+            res.status(200).send({ count: files.length });
+        });
+    }
+}
\ No newline at end of file
diff --git a/static/chat.js b/static/chat.js
index a9a382a9a69484ea85f496f525aee3c680e0f80e..a36a4f8e5b2abe492af9dfe93658b89826572990 100644
--- a/static/chat.js
+++ b/static/chat.js
@@ -1,6 +1,17 @@
 var messageComposer;
 let history;
 
+function selectPhoto() {
+    return new Promise((resolve, reject) => {
+        $.ajax({
+            url: "/photocount",
+            success: function (result) {
+                resolve('<div class="message catmessage" style="padding: 0"><img class="previewpic" src="/pictures/' + Math.floor(Math.random() * result.count) + '.jpg"></div>');
+            }
+        });
+    });
+}
+
 const replies = new Map([
     ['szia', 'Nyau'],
     ['helló', 'Nyau'],
@@ -18,11 +29,16 @@ const replies = new Map([
     ['puszi', 'doromb'],
     ['ágy', 'Mürr!'],
     ['gyere', 'Mürr!'],
+    ['hiány', '😿'],
 ]);
 
-function selectReply(msg) {
-    let query = msg.toLowerCase();
-    console.log(query);
+const dinamicReplies = new Map([
+    ['kép', selectPhoto],
+    ['fotó', selectPhoto],
+    ['mutas', selectPhoto],
+])
+
+function selectReply(query) {
 
     for (const [key, value] of replies) {
         if (query.includes(key)) return value;
@@ -31,11 +47,26 @@ function selectReply(msg) {
     return 'Miau';
 }
 
+function writeReply(msg) {
+    let query = msg.toLowerCase();
+
+    for (const [key, value] of dinamicReplies) {
+        if (query.includes(key)) {
+            value().then((content) => {
+                history.append(content);
+            });
+            return;
+        }
+    }
+
+    history.append('<div class="message catmessage">' + selectReply(query) + '</div>');
+}
+
 function sendMessage() {
     if (messageComposer.val() == "") return;
 
     history.append('<div class="message humanmessage">' + messageComposer.val() + '</div>');
-    history.append('<div class="message catmessage">' + selectReply(messageComposer.val()) + '</div>');
+    writeReply(messageComposer.val());
     history.animate({ scrollTop: history[0].scrollHeight }, "fast");
     messageComposer.val('');
 }
diff --git a/static/pictures/1.jpg b/static/pictures/1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4dff6cafced64ff779abc6a17f6c2477a375a521
Binary files /dev/null and b/static/pictures/1.jpg differ
diff --git a/static/pictures/10.jpg b/static/pictures/10.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..c9f854017ccc1452d85f617aba1ddfacd2511c2d
Binary files /dev/null and b/static/pictures/10.jpg differ
diff --git a/static/pictures/11.jpg b/static/pictures/11.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..a4da71fdd8e375b74635a805f55d377dd53c5ed4
Binary files /dev/null and b/static/pictures/11.jpg differ
diff --git a/static/pictures/12.jpg b/static/pictures/12.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..10045d0000911fab6ebfbba414e91b0c878973f0
Binary files /dev/null and b/static/pictures/12.jpg differ
diff --git a/static/pictures/13.jpg b/static/pictures/13.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..2e1c7f7e77483cfcf84c30d3a6ed9ac8bfc7eab3
Binary files /dev/null and b/static/pictures/13.jpg differ
diff --git a/static/pictures/14.jpg b/static/pictures/14.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..641f1be67560cb921721fbc8f92a62dd694f9e5d
Binary files /dev/null and b/static/pictures/14.jpg differ
diff --git a/static/pictures/15.jpg b/static/pictures/15.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..44bbc935de0ff23b04235566311e0c5cf0321bbe
Binary files /dev/null and b/static/pictures/15.jpg differ
diff --git a/static/pictures/2.jpg b/static/pictures/2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4d69bb7033d91499698dbcd6bf5a6203ddaab4d6
Binary files /dev/null and b/static/pictures/2.jpg differ
diff --git a/static/pictures/3.jpg b/static/pictures/3.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..5486bb46a92b09eb2b1427ce001a3d543c13222e
Binary files /dev/null and b/static/pictures/3.jpg differ
diff --git a/static/pictures/4.jpg b/static/pictures/4.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..153616d689dd4ae62ac733fb53a34166c2cc91f2
Binary files /dev/null and b/static/pictures/4.jpg differ
diff --git a/static/pictures/5.jpg b/static/pictures/5.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..23e7b14011c2425b224a6a19e981a3ef38c35641
Binary files /dev/null and b/static/pictures/5.jpg differ
diff --git a/static/pictures/6.jpg b/static/pictures/6.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..d9295bff35f5f6cd598a051b81bca615ddda11d7
Binary files /dev/null and b/static/pictures/6.jpg differ
diff --git a/static/pictures/7.jpg b/static/pictures/7.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..cb0aecbdbbc4878ea91430ddc6a89b1565df227c
Binary files /dev/null and b/static/pictures/7.jpg differ
diff --git a/static/pictures/8.jpg b/static/pictures/8.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..6fafa63273b2627c3dc387c5cc6fb2ccb9aa8bf0
Binary files /dev/null and b/static/pictures/8.jpg differ
diff --git a/static/pictures/9.jpg b/static/pictures/9.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..728df13c03441e8fc886dbb5ae24a9c7fb4b2cfe
Binary files /dev/null and b/static/pictures/9.jpg differ
diff --git a/static/style.css b/static/style.css
index 84c4e7c85709a22b4bdcf026403e56fa1db6e851..fc06dca80bc844b8ff8ff397d2c6eee35d6a027e 100644
--- a/static/style.css
+++ b/static/style.css
@@ -133,4 +133,10 @@ footer>* {
     background-color: #ff9d00;
     color: white;
     align-self: flex-end;
+}
+
+img.previewpic {
+    border-radius: 10px;
+    max-width: 500px;
+    max-height: 300px;
 }
\ No newline at end of file