|
|
7c967b179e
|
feat: new route architecture
|
2025-12-24 18:45:54 +01:00 |
|
|
|
a67a6214d1
|
feat: add a ping method
|
2025-12-24 18:45:41 +01:00 |
|
|
|
f0731b40f8
|
fix: preserve unicode letters/digits while still stripping unsafe characters
|
2025-12-24 18:45:30 +01:00 |
|
|
|
990a471af4
|
revert: error, we need it
|
2025-12-24 18:14:00 +01:00 |
|
|
|
fd51393917
|
clean: get rid of FindBin
|
2025-12-23 08:31:20 +01:00 |
|
|
|
cf9597a25d
|
feat: ignore local at docker build
|
2025-12-23 04:14:58 +01:00 |
|
|
|
f1197626be
|
fix: double copy + local useless copy
|
2025-12-23 04:14:50 +01:00 |
|
|
|
76cbd130a0
|
refactor: export functions
|
2025-12-22 20:23:42 +01:00 |
|
|
|
6a5dcd91b7
|
refactor: explicit function imports
|
2025-12-22 20:20:41 +01:00 |
|
|
|
e495bc6f4f
|
refactor: explicit function import
|
2025-12-22 20:20:27 +01:00 |
|
|
|
5241c1b758
|
clean: remove unused import
|
2025-12-22 20:20:01 +01:00 |
|
|
|
f259113a88
|
feat: Dockerfile
|
2025-12-22 20:13:23 +01:00 |
|
|
|
b368b4103a
|
fix: hypnotoad runs by default on 8080
|
2025-12-22 20:13:05 +01:00 |
|
|
|
d992f68a6a
|
build: re-add Mojolicious
|
2025-12-22 18:54:17 +01:00 |
|
|
|
8c4f376563
|
feat: create docker-compose.yml for the app
|
2025-12-22 17:57:12 +01:00 |
|
|
|
a6e3866427
|
test: add use_ok()
|
2025-12-22 17:43:48 +01:00 |
|
|
|
9ce3a97ca9
|
test: add utils unit tests
|
2025-12-22 17:40:21 +01:00 |
|
|
|
0228cd9c9d
|
feat: harden sanitize_url host parsing
|
2025-12-22 17:37:37 +01:00 |
|
|
|
3369b018e3
|
test: API unit testing
|
2025-12-22 17:24:02 +01:00 |
|
|
|
db9fab083d
|
test: add integration tests
|
2025-12-22 17:04:44 +01:00 |
|
|
|
747dbc3782
|
build: update cpanfile
|
2025-12-22 16:35:19 +01:00 |
|
|
|
47302c4bf2
|
docs: update readme
|
2025-12-22 16:35:11 +01:00 |
|
|
|
87f1f67c50
|
refactor: use Utils get_error_status
|
2025-12-22 15:42:53 +01:00 |
|
|
|
52ec5a010a
|
clean: remove redundant helper
|
2025-12-22 15:42:36 +01:00 |
|
|
|
ab68257e74
|
feat: add URL shortening API endpoints to app
|
2025-12-22 15:39:46 +01:00 |
|
|
|
50a12816b1
|
feat: implement API
|
2025-12-22 15:39:28 +01:00 |
|
|
|
65570d3b6d
|
fix: remove redundant short code validation from get_original_url
|
2025-12-22 15:35:18 +01:00 |
|
|
|
86258332c8
|
feat: sanitize error message
|
2025-12-22 15:34:25 +01:00 |
|
|
|
0743db5a12
|
feat: comprehensive URL validation module with security checks
|
2025-12-22 15:04:57 +01:00 |
|
|
|
2b993e11a4
|
feat: create setnx()
|
2025-12-22 15:03:43 +01:00 |
|
|
|
57fd42604e
|
feat: add app utils
|
2025-12-22 15:03:31 +01:00 |
|
|
|
1b79d48dc6
|
feat: url generation and handling logic
|
2025-12-22 15:03:20 +01:00 |
|
|
|
9cf87f6e57
|
feat: add check ssl and check url reachability
|
2025-12-22 14:13:06 +01:00 |
|
|
|
3eb09c5cda
|
feat: add basic validators
|
2025-12-22 14:01:18 +01:00 |
|
|
|
bc4e5c353c
|
feat: add incr() and exists() methods
|
2025-12-22 13:52:16 +01:00 |
|
|
|
45f8072679
|
feat: render the dummy test in json
|
2025-12-18 09:31:57 +01:00 |
|
|
|
984438729e
|
docs: update readme
|
2025-12-18 07:28:59 +01:00 |
|
|
|
1e8bfc2ac0
|
build: update cpan.snapshot
|
2025-12-18 07:28:46 +01:00 |
|
|
|
1148a65355
|
build: add Mojo::Redis2 as a requirement
|
2025-12-18 07:28:41 +01:00 |
|
|
|
acb1f63bae
|
feat: add a dummy set/get in the main route to try redis
|
2025-12-18 07:28:24 +01:00 |
|
|
|
6565be735d
|
feat: add basic db logic
|
2025-12-18 07:27:55 +01:00 |
|
|
|
1de83a858e
|
docs: update roadmap
|
2025-12-17 16:54:38 +01:00 |
|
|
|
7d7360fc16
|
feat: first version of installation script
|
2025-12-17 16:54:07 +01:00 |
|
|
|
8d6f2df942
|
docs: carton handles deps
|
2025-12-17 16:53:59 +01:00 |
|
|
|
34f400b421
|
docs: wording again
|
2025-12-17 14:43:10 +01:00 |
|
|
|
f98b67292b
|
docs: fix wording
|
2025-12-17 14:29:33 +01:00 |
|
|
|
a00d409aba
|
docs: get rid of Makefile.PL
|
2025-12-17 14:28:53 +01:00 |
|
|
|
f84c9dcbb4
|
feat: add basic skeleton app
|
2025-12-17 14:15:27 +01:00 |
|
|
|
5596014f8d
|
build: add cpanfile.snapshot
|
2025-12-17 14:15:18 +01:00 |
|
|
|
912e8a35ab
|
build: add cpanfile
|
2025-12-17 14:15:13 +01:00 |
|