sjdonado
cd8e2433a5
feat(cli): --update-data download UA Parser and GeoLite2
2025-03-16 13:40:33 +01:00
sjdonado
8cab7a51ad
feat: country ip lookup
2025-03-16 11:42:01 +01:00
sjdonado
ece74226d4
feat: add country to clicks
2025-03-16 11:26:20 +01:00
sjdonado
d26aa2f18a
feat: links redirect forward client ip
2025-03-16 10:20:01 +01:00
sjdonado
a271e7c35d
chore: bump version
2024-11-27 22:51:52 +01:00
sjdonado
dc8c359bfc
test: admin env variables cases
2024-11-27 22:51:18 +01:00
sjdonado
dfb6b10caf
feat: setup admin user via env variables
2024-11-27 22:27:17 +01:00
Juan Rodriguez
98dedc4494
refactor: powered_by_header kemal config
2024-10-27 11:07:59 +01:00
Juan Rodriguez
ea71d3825e
fix: generate slug by user + check existing link on update
2024-07-31 22:09:24 +02:00
Juan Rodriguez
98f103f5cf
fix: url validate format
2024-07-31 21:38:57 +02:00
Juan Rodriguez
6fc48dae83
refactor: replace slug generation with CRC32 + base62
2024-07-31 21:38:36 +02:00
Juan Rodriguez
37e14ec2f8
refactor: sha256 slug generation
2024-07-31 08:07:08 +02:00
Juan Rodriguez
80cebe3357
fix: update slug size after 2nd attempt
2024-07-14 22:30:15 +02:00
Juan Rodriguez
451a5fbf0f
fix: link email validate format regex
2024-07-14 14:33:34 +02:00
Juan Rodriguez
aeb6d1164b
fix: remove X-Powered-By header
2024-07-14 14:33:19 +02:00
Juan Rodriguez
2f14cd82dd
fix: error handling override kemal default response
2024-07-14 11:19:59 +02:00
Juan Rodriguez
faedd0bc7a
fix: missing errors content type
2024-07-14 09:26:38 +02:00
Juan Rodriguez
1d207fae64
fix: log level error for production env
2024-07-14 09:26:25 +02:00
Juan Rodriguez
a71f345f66
refactor: APP_URL + DATABASE_URL default values
2024-07-14 08:46:29 +02:00
Juan Rodriguez
7cc6c1197f
refactor: auto run migrations on startup
2024-07-14 08:46:11 +02:00
Juan Rodriguez
cd9a44fcc9
fix: link controller preload + headers validation
2024-07-12 21:28:44 +02:00
Juan Rodriguez
0758bf4cee
fix: existing_links preload clicks
2024-07-12 20:26:43 +02:00
Juan Rodriguez
8f33375b5f
fix: link clicks empty array validation
2024-07-12 19:00:44 +02:00
Juan Rodriguez
3050c2b100
feat: get link by id endpoint
2024-07-12 08:47:08 +02:00
Juan Rodriguez
a2aa586dae
feat: get all links clicks join
2024-07-12 07:58:21 +02:00
Juan Rodriguez
a1b67b8553
fix: avoid create links duplicates
2024-07-12 07:46:58 +02:00
Juan Rodriguez
dbc81796d6
feat: store click data on redirect
2024-07-12 07:46:49 +02:00
Juan Rodriguez
2f796dbdab
feat: create clicks model + migration
2024-07-12 07:28:27 +02:00
Juan Rodriguez
bac73f2a47
fix: stream is closed before call_next
2024-07-10 21:41:48 +02:00
Juan Rodriguez
f03e0092c8
refactor: move cli methods to app service
2024-05-20 13:13:49 +02:00
Juan Rodriguez
be0ebd1763
test: fix Closed stream (IO::Error)
2024-05-14 06:34:29 +02:00
Juan Rodriguez
a47722cd54
refactor: Link serializer - refer attr
2024-05-13 22:54:49 +02:00
Juan Rodriguez
7f2a27ec79
feat: auth middleware
...
- CORS headers
- Get all links that belong to user
2024-05-13 22:35:22 +02:00
Juan Rodriguez
0ad534065c
feat: user migration + model
...
- link belongs to user
- user api_key index
2024-05-13 22:33:38 +02:00
Juan Rodriguez
80feadfbd2
feat: delete link
2024-05-13 22:30:44 +02:00
Juan Rodriguez
ded84e7fa5
feat: update link
2024-05-13 10:15:08 +02:00
Juan Rodriguez
b20417d579
refactor: error handling return exception message
2024-05-13 09:22:36 +02:00
Juan Rodriguez
9564559610
refactor: rename src folder with app
2024-05-13 08:14:47 +02:00
Juan Rodriguez
720b70c6a0
chore: remove rails app
2024-05-12 15:07:56 +02:00
Juan Rodriguez
f74ec3af20
fix: validate domains, allow only google.com + sjdonado.de for demo purposes (to avoid phishing scam)
2023-04-19 17:07:05 +02:00
Juan Rodriguez
cebdfb35d7
fix: parsed_url + stripped_url
...
- store and redirect urls without protocol
- update README
- increment counter with SQL COALESCE
- add linksHelper
- update tests
2023-03-27 09:53:09 +02:00
Juan Rodriguez
af9c7b0024
feat: meta tags
2023-03-26 21:50:19 +02:00
Juan Rodriguez
211e4f40f4
refactor: improve url regex
2023-03-26 19:37:29 +02:00
Juan Rodriguez
38ce72618a
fix: 🐛 save sessionUsername in localStorage
2021-06-16 10:24:33 -05:00
Juan Rodriguez
73b674b613
refactor: ⚡ Username and slug unique indexes, before actions for set link and user
...
confirm_password_validation around action, unnecessary helpers removed, rubocop-rails suggestions applied
Add username index and unique slug index migrations
2021-06-15 15:24:34 -05:00
Juan Rodriguez
9204abf2e3
refactor: 🔥 Generate slug with attempts
...
Link short method removed, generate_slug test added, deleted unused files
2021-06-15 12:08:01 -05:00
Juan Rodriguez
e9e7c22bfc
refactor: 📱 Responsive modals and meta tags
2021-06-15 06:51:19 -05:00
Juan Rodriguez
54bff064d1
feat: ✨ Fecth link click_counter on come back to site
...
LinksController counter route, tests updated, render link created_by field, order user links by desc
2021-06-14 17:03:11 -05:00
Juan Rodriguez
3feaa5d88f
refactor: ⚡ Modal layout and turbolinks optimization
...
Reload with turbolinks, error messages, confirm password validation
Login and Signup modals
2021-06-14 15:10:56 -05:00
Juan Rodriguez
9c7146820c
feat: ✨ Sessions controller
...
Sessions helper methods, login and signup modals, load partial views with stimulus
Situmuls usersController, Create and Destroy user sessions
2021-06-14 11:46:25 -05:00