HELLO
I'm a London based software developer and I primarily work on web apps. Please feel free to look through some of my projects.
Say hi to me on the contact page.
I'm a London based software developer and I primarily work on web apps. Please feel free to look through some of my projects.
Say hi to me on the contact page.
2026-04-03 23:55:32
portfolio-watcher2026-04-03 21:07:56
portfolio-watcher2026-04-03 20:53:18
portfolio-watcher2026-04-03 20:00:43
portfolio-watcher2026-04-03 19:48:16
portfolio-watcher2026-04-03 19:26:25
portfolio-watcher2026-04-03 18:46:51
portfolio-watcher2026-04-03 18:32:20
portfolio-watcher2026-04-03 18:12:36
portfolio-watcher2026-04-03 17:52:23
portfolio-watcher2026-04-03 17:22:25
portfolio-watcher2026-04-03 15:26:43
portfolio-watcher2026-04-03 15:13:18
portfolio-watcher2026-04-03 14:53:12
portfolio-watcher2026-04-03 13:14:28
portfolio-watcher2026-04-02 15:38:16
portfolio-watcher2026-04-02 15:18:10
portfolio-watcher2026-04-02 11:22:56
portfolio-watcher2026-03-30 23:43:02
fgs2026-03-30 23:01:46
fgs2026-03-30 22:40:49
fgs2026-03-30 22:39:44
fgs2026-03-30 21:38:03
fgs2026-03-30 13:00:54
blog2026-03-28 18:41:58
gomergesortcli2026-03-28 18:34:32
gomergesortcli2026-03-28 18:07:28
fgs2026-03-28 17:58:50
fgs2026-03-28 17:41:47
fgs2026-03-28 16:21:51
fgs2026-03-27 21:36:26
gomergesortcli2026-03-26 12:18:30
fgs2026-03-26 11:30:51
fgs2026-03-25 16:05:42
fgs2026-03-25 15:00:23
fgs2026-03-25 14:41:49
fgs2026-03-25 12:31:49
portfolio-watcher2026-03-25 11:41:43
portfolio-watcher2026-03-24 21:58:59
portfolio-watcher2026-03-24 21:30:34
portfolio-watcher2026-03-24 20:17:32
portfolio-watcher2026-03-24 17:49:47
portfolio-watcher2026-03-24 16:53:49
portfolio-watcher2026-03-24 16:25:16
portfolio-watcher2026-03-24 15:17:39
portfolio-watcher2026-03-23 20:13:15
portfolio-watcher2026-03-23 18:00:21
portfolio-watcher2026-03-23 17:55:41
portfolio-watcher2026-03-23 17:29:09
portfolio-watcher2026-03-23 17:29:01
portfolio-watcher2026-03-23 17:07:10
inventorymanager2026-03-22 17:40:07
portfolio-watcher2026-03-22 16:56:48
portfolio-watcher2026-03-22 12:54:55
portfolio-watcher2026-03-22 12:51:37
portfolio-watcher2026-03-22 10:44:47
portfolio-watcher2026-03-20 21:00:23
portfolio-watcher2026-03-20 19:32:38
portfolio-watcher2026-03-19 14:29:49
portfolio-watcher2026-03-19 14:25:04
portfolio-watcher2026-03-19 11:38:09
mgck2026-03-18 15:24:17
portfolio-watcher2026-03-18 07:58:09
musictags2026-03-14 20:04:48
portfolio-watcher2026-03-14 00:19:58
portfolio-watcher2026-03-13 23:45:06
portfolio-watcher2026-03-13 23:44:50
portfolio-watcher2026-03-13 23:38:28
portfolio-watcher2026-03-10 23:52:45
portfolio-watcher2026-03-10 18:14:49
blog2026-03-10 17:33:58
blog2026-03-08 13:29:43
blog2026-03-07 15:26:33
blog2026-03-07 13:54:00
blog2026-03-07 13:37:01
blog2026-03-07 13:21:22
blog2026-03-03 15:03:13
research-bot2026-03-03 13:58:54
research-bot2026-03-03 12:49:22
research-bot2026-03-03 10:44:36
research-bot2026-03-03 09:16:30
research-bot2026-03-02 15:12:48
portfolio-watcher2026-03-02 13:09:04
portfolio-watcher2026-03-01 20:26:26
research-bot2026-03-01 19:23:53
research-bot2026-03-01 17:54:08
research-bot2026-03-01 17:50:11
research-bot2026-02-28 18:52:54
moodtea2026-02-28 14:23:20
research-bot2026-02-28 13:28:59
research-bot2026-02-28 13:10:50
research-bot2026-02-28 12:45:02
research-bot2026-02-28 12:30:59
portfolio-watcher2026-02-28 12:15:31
portfolio-watcher2026-02-28 12:09:13
research-bot2026-02-28 11:49:32
portfolio-watcher2026-02-28 11:31:12
research-bot2026-02-28 11:12:58
research-bot2026-02-28 10:49:48
research-bot2026-02-28 10:33:53
portfolio-watcher2026-02-27 19:35:53
fgs2026-02-27 19:26:37
portfolio-watcher2026-02-27 18:51:13
portfolio-watcher2026-02-26 15:29:36
research-bot2026-02-26 13:55:33
research-bot2026-02-26 13:23:31
research-bot2026-02-26 11:09:26
research-bot2026-02-25 19:17:10
inventorymanager2026-02-25 18:06:25
inventorymanager2026-02-25 18:06:06
inventorymanager2026-02-25 17:03:59
inventorymanager2026-02-25 13:48:55
inventorymanager2026-02-25 11:37:55
inventorymanager2026-02-25 08:06:13
moodtea2026-02-24 21:06:45
moodtea2026-02-24 20:55:24
moodtea2026-02-24 20:32:31
moodtea2026-02-24 20:29:54
moodtea2026-02-24 19:52:39
research-bot2026-02-24 19:20:33
research-bot2026-02-24 19:05:24
research-bot2026-02-24 16:07:02
research-bot2026-02-24 13:44:42
research-bot2026-02-24 12:54:38
moodtea2026-02-23 19:13:36
research-bot2026-02-23 18:59:42
research-bot2026-02-23 18:50:24
research-bot2026-02-23 18:44:44
research-bot2026-02-23 17:55:10
research-bot2026-02-23 15:34:10
research-bot2026-02-23 14:59:19
research-bot2026-02-23 14:12:11
research-bot2026-02-23 13:47:52
research-bot2026-02-23 13:20:35
research-bot2026-02-19 18:33:48
fgs2026-02-19 16:53:29
fgs2026-02-19 14:22:47
fgs2026-02-19 13:24:54
research-bot2026-02-18 19:13:22
research-bot2026-02-18 18:07:53
research-bot2026-02-18 13:38:36
research-bot2026-02-18 11:22:05
research-bot2026-02-18 09:03:09
research-bot2026-02-17 20:53:40
research-bot2026-02-17 20:30:26
research-bot2026-02-17 19:34:00
research-bot2026-02-17 19:32:01
research-bot2026-02-17 18:51:59
research-bot2026-02-17 18:38:59
research-bot2026-02-17 18:38:21
research-bot2026-02-17 18:36:26
research-bot2026-02-17 17:46:35
research-bot2026-02-17 13:53:58
research-bot2026-02-16 16:56:52
mgck2026-02-16 16:33:57
blog2026-02-16 16:33:46
blog2026-02-16 16:24:37
blog2026-02-16 16:24:20
blog2026-02-16 14:45:03
blog2026-02-16 13:06:16
blog2026-02-16 13:04:53
blog2026-02-16 12:46:17
blog2026-02-16 12:36:47
blog2026-02-16 12:36:21
blog2026-02-16 11:31:39
fgs2026-02-15 19:36:42
fgs2026-02-15 17:19:41
fgs2026-02-15 17:01:59
fgs2026-02-15 16:59:56
fgs2026-02-15 16:50:21
fgs2026-02-15 16:38:00
fgs2026-02-15 11:16:39
fgs2026-02-15 11:14:27
fgs2026-02-15 10:57:05
fgs2026-02-15 10:41:49
fgs2026-02-14 18:41:46
fgs2026-02-14 18:38:06
fgs2026-02-14 18:16:22
fgs2026-02-14 18:04:11
fgs2026-02-14 17:57:50
fgs2026-02-14 17:53:40
fgs2026-02-14 17:46:10
fgs2026-02-14 17:43:55
fgs2026-02-14 17:36:19
fgs2026-02-14 17:09:50
fgs2026-02-14 16:53:35
fgs2026-02-14 16:06:55
fgs2026-02-14 15:19:16
fgs2026-02-14 12:54:30
fgs2026-02-14 11:50:41
fgs2026-02-14 09:16:18
fgs2026-02-13 21:19:42
fgs2026-02-13 20:25:04
fgs2026-02-13 19:29:17
fgs2026-02-13 19:24:38
fgs2026-02-13 18:09:21
fgs2026-02-13 18:02:38
fgs2026-02-13 17:22:17
fgs2026-02-13 13:50:07
fgs2026-02-13 13:01:33
fgs2026-02-13 12:59:41
fgs2026-02-13 12:39:18
fgs2026-02-13 12:24:23
fgs2026-02-13 11:31:41
fgs2026-02-13 11:10:26
fgs2026-02-13 10:54:45
fgs2026-02-12 17:20:02
fgs2026-02-12 16:10:20
fgs2026-02-12 16:00:42
fgs2026-02-12 12:44:48
fgs2026-02-11 15:08:38
fgs2026-02-11 14:16:25
fgs2026-02-11 14:16:17
fgs2026-02-11 10:26:00
fgs2026-02-11 09:47:23
fgs2026-02-09 15:52:37
blog2026-02-09 13:59:08
fgs2026-02-09 11:46:50
fgs2026-02-09 11:30:12
fgs2026-02-06 15:32:16
fgs2026-02-06 12:15:56
fgs2026-02-05 16:27:11
fgs2026-02-05 15:47:13
fgs2026-02-05 15:45:08
fgs2026-02-05 15:21:56
fgs2026-02-05 13:54:19
fgs2026-02-04 10:43:18
fgs2026-02-04 10:40:11
fgs2026-02-04 09:45:33
fgs2026-02-03 18:46:44
moodtea2026-02-03 18:46:36
moodtea2026-02-03 18:26:39
moodtea2026-02-03 18:14:19
moodtea2026-02-03 18:07:16
moodtea2026-02-03 16:23:42
mgck2026-02-03 13:58:55
foodinventorymanager2026-02-02 15:22:14
spotify-playlist-cli2026-02-02 12:12:06
fgs2026-02-02 12:11:39
fgs2026-01-30 15:39:15
fgs2026-01-30 15:23:15
fgs2026-01-30 15:08:01
fgs2026-01-30 14:36:43
fgs2026-01-29 18:19:54
foodinventorymanager2026-01-29 18:09:30
foodinventorymanager2026-01-29 17:45:50
foodinventorymanager2026-01-29 17:23:52
foodinventorymanager2026-01-27 16:31:18
foodinventorymanager2026-01-27 16:03:50
foodinventorymanager2026-01-27 15:24:25
RbbBot2026-01-25 10:12:23
mgck2026-01-16 16:11:20
badmagick3292026-01-05 14:05:47
mgck2026-01-02 11:38:43
mgck2026-01-02 11:15:54
mgck2026-01-02 11:09:46
mgck2026-01-01 17:18:53
ffmpeg_service2026-01-01 17:05:08
mgck2026-01-01 16:33:08
mgck2026-01-01 16:32:59
mgck2026-01-01 15:21:45
mgck2026-01-01 15:16:58
mgck2026-01-01 15:12:25
mgck2026-01-01 14:43:16
mgck2026-01-01 14:23:19
mgck2026-01-01 13:51:07
mgck2025-12-27 16:24:30
mgck2025-12-26 20:25:23
mgck2025-12-26 17:41:02
mgck2025-12-26 15:47:32
mgck2025-12-26 15:43:49
mgck2025-12-26 13:39:07
mgck2025-12-26 13:28:47
mgck2025-12-26 13:01:54
mgck2025-12-26 00:53:57
mgck2025-12-25 23:35:27
mgck2025-12-25 23:28:50
mgck2025-12-25 21:53:39
mgck2025-12-25 13:50:59
mgck2025-12-25 13:37:00
mgck2025-12-25 13:26:37
mgck2025-12-25 13:19:56
mgck2025-12-25 12:43:44
mgck2025-12-25 11:22:58
mgck2025-12-25 10:06:19
mgck2025-12-24 23:51:05
mgck2025-12-24 22:25:27
mgck2025-12-24 20:49:40
mgck2025-12-24 18:40:37
mgck2025-12-24 13:13:33
mgck2025-12-24 12:04:48
mgck2025-12-23 14:08:45
mgck2025-12-23 13:55:00
mgck2025-12-23 13:43:34
mgck2025-12-23 12:06:04
mgck2025-12-23 11:41:50
mgck2025-12-23 11:34:37
mgck2025-12-23 11:03:55
mgck2025-12-23 08:09:54
mgck2025-12-22 20:00:43
mgck2025-12-22 14:37:56
mgck2025-12-22 14:37:38
mgck2025-12-22 14:17:21
mgck2025-12-22 08:51:36
mgck2025-12-21 00:04:43
mgck2025-12-20 23:42:10
mgck2025-12-20 23:07:20
mgck2025-12-20 21:02:17
mgck2025-12-20 18:35:04
mgck2025-12-20 17:17:46
mgck2025-12-20 16:41:38
mgck2025-12-20 02:53:04
mgck2025-12-20 01:56:33
mgck2025-12-20 00:53:44
mgck2025-12-19 23:43:10
mgck2025-12-19 03:18:30
mypage2025-12-19 01:35:41
mypage2025-12-18 22:02:12
mypage2025-12-18 20:58:17
mypage2025-12-18 01:53:16
mypage2025-12-17 16:00:56
timeuntilcli2025-12-16 13:33:51
mypage2025-12-16 01:40:10
mypage2025-12-16 01:39:58
mypage2025-12-16 00:01:10
mypage2025-12-15 19:59:33
mypage2025-12-15 18:17:32
mypage2025-12-15 17:56:58
mypage2025-12-15 14:58:52
mypage2025-12-15 14:48:27
mypage2025-12-15 13:51:41
mypage2025-12-15 13:44:43
mypage2025-12-15 13:14:18
mypage2025-12-15 00:26:37
mypage2025-12-14 23:31:44
mypage2025-12-14 17:23:27
mypage2025-12-14 14:59:46
mgck2025-12-13 22:03:45
mypage2025-12-13 16:25:32
mypage2025-12-12 22:35:44
mypage2025-12-12 22:35:44
mypage2025-12-12 21:19:04
mypage2025-12-12 21:09:22
mypage2025-12-12 20:05:38
mypage2025-12-12 19:03:54
mypage2025-12-11 18:03:50
mypage2025-12-11 18:03:39
mypage2025-12-11 15:47:08
ffmpeg_service2025-12-10 17:53:29
blog2025-12-10 17:23:59
blog2025-12-10 17:21:16
blog2025-12-10 17:09:29
blog2025-12-10 16:13:01
blog2025-12-09 20:04:45
mypage2025-12-09 20:04:28
mypage2025-12-09 18:12:35
mypage2025-12-09 18:11:34
mypage2025-12-09 15:42:34
mypage2025-12-08 20:44:33
mypage2025-12-08 20:41:05
mypage2025-12-08 20:11:47
mypage2025-12-08 15:27:43
mypage2025-12-08 13:54:23
mypage2025-12-08 13:20:21
mypage2025-12-08 13:07:51
mypage2025-12-08 12:13:49
mypage2025-12-08 12:11:49
mgck2025-12-08 12:10:55
mgck2025-12-07 21:41:36
mypage2025-12-07 21:37:59
mypage2025-12-07 21:37:54
mypage2025-12-07 21:17:57
mypage2025-12-07 20:55:48
mypage2025-12-07 20:55:36
mypage2025-12-07 20:04:26
mypage2025-12-07 18:38:15
mypage2025-12-07 17:35:01
mypage2025-12-07 15:31:39
mypage2025-12-07 15:22:56
mypage2025-12-07 01:11:03
mypage2025-12-06 23:33:51
mypage2025-12-06 23:27:40
mypage2025-12-06 22:06:51
mypage2025-12-06 20:51:31
mypage2025-12-06 20:35:47
mypage2025-12-06 17:17:01
mypage2025-12-05 12:10:48
mypage2025-12-05 12:10:42
mypage2025-12-04 16:28:41
mypage2025-12-04 15:46:23
mypage2025-12-04 15:45:56
mypage2025-12-04 14:21:37
mypage2025-12-04 00:00:23
mypage2025-12-04 00:00:04
mypage2025-12-03 23:37:53
mypage2025-12-03 16:43:30
mypage2025-12-03 15:47:11
mypage2025-12-03 11:46:33
mypage2025-12-03 00:23:38
mypage2025-12-02 22:44:58
mypage2025-12-02 17:01:16
mypage2025-12-01 23:12:25
mypage2025-12-01 17:45:11
astro-learning2025-12-01 14:49:03
astro-learning2025-11-30 01:03:41
astro-learning2025-11-29 23:45:14
astro-learning2025-11-29 22:52:54
astro-learning2025-11-29 22:43:29
astro-learning2025-11-29 22:32:10
astro-learning2025-11-29 22:30:13
astro-learning2025-11-29 22:26:23
astro-learning2025-11-29 21:18:23
astro-learning2025-11-29 20:41:23
astro-learning2025-11-29 20:31:04
astro-learning2025-11-29 20:11:49
astro-learning2025-11-29 18:16:31
astro-learning2025-11-29 18:10:38
astro-learning2025-11-29 18:07:01
astro-learning2025-11-29 17:56:16
astro-learning2025-11-29 17:24:03
astro-learning2025-11-29 17:18:38
astro-learning2025-11-29 17:06:48
astro-learning2025-11-29 16:53:22
astro-learning2025-11-29 16:43:38
astro-learning2025-11-29 16:08:41
astro-learning2025-11-29 15:49:27
astro-learning2025-11-29 15:23:15
astro-learning2025-11-28 16:20:53
ffmpeg_service2025-11-28 16:12:49
ffmpeg_service2025-11-27 18:12:16
spotify-playlist-cli2025-11-27 17:48:41
spotify-playlist-cli2025-11-27 17:39:12
spotify-playlist-cli2025-11-27 17:23:26
download-watcher2025-11-27 16:39:18
gamejam242025-11-27 16:10:52
tetris2025-11-27 16:08:51
tetris2025-11-27 15:52:51
tetris2025-11-27 15:39:14
tetris2025-11-27 15:34:33
tetris2025-11-27 15:34:21
tetris2025-11-27 15:15:14
gemini_summariser2025-11-27 14:47:40
gemini_summariser2025-11-27 14:45:54
gemini_summariser2025-11-27 14:44:57
gemini_summariser2025-11-27 14:44:12
gemini_summariser2025-11-25 16:33:08
blog2025-11-25 13:37:40
foodinventorymanager2025-11-22 23:19:31
blog2025-11-22 22:41:35
foodinventorymanager2025-11-21 20:20:35
blog2025-11-21 18:58:09
mgck2025-11-21 18:55:01
mgck2025-11-21 18:14:36
mgck2025-11-21 18:04:52
mgck2025-11-21 17:55:24
mgck2025-11-21 17:33:53
mgck2025-11-21 17:09:58
mgck2025-11-20 23:37:17
mgck2025-11-20 21:37:52
mgck2025-11-19 19:31:29
mgck2025-11-19 19:30:17
mgck2025-11-19 19:21:43
mgck2025-11-19 16:53:17
mgck2025-11-19 14:43:17
mgck