thedevs-network/kutt
Free Modern URL Shortener.
25 Releases
Latest: 1mo ago
v3.2.5Latest
Update packages to fix package vulnerabilities. Please see [v3.2.4](https://github.com/thedevs-network/kutt/releases/tag/v3.2.4) for the full changelog.
v3.2.4
📦 IMPORTANT NOTICE
- Release notes:
- Change kutt.it to kutt.to
- Add support for OIDC authentication
- Allow passing passwords as a HTTP Auth parameter in links
- Add robots.txt
- Fix showing custom domain on the table when an link is edited
- Use the correct autofill value for new password fields
v3.2.3
📋 Changes
- Set environment variables by reading a file. Use `<variable_name>_FILE`. Read [configuration](https://github.com/thedevs-network/kutt/tree/main?tab=readme-ov-file#configuration) for more info. (pull request #814)
v3.2.2
📋 Changes
- Use `better-sqlite3` on the `.example.env` and also add `DB_FILENAME`. (ec5a99f)
v3.2.1
📋 Changes
- Fix send button not showing on Safari (fba5a73)
v3.2.0
📋 Changes
- Breaking: Default SQLite driver is changed from `sqlite3` to `better-sqlite3`. This is only breaking if you have set `DB_CLIENT` manually to `sqlite3`. If so, you can change it to `better-sqlite3` or install the driver—`npm install sqlite3`—if you want to keep using sqlite3. (Pull request #796)
- Removed `cross-env` dependency and used `--production` argument instead. (Pull request #796)
- Removed `node-cron` dependency and used `setInterval()` global function instead. (Pull request #796)
- Removed `uuid` dependency and used Node.js built-in function `crypto.randomUUID()` instead. (Pull request #796)
- Removed unused dependency `node-mailer` (not `nodmailer`, that one is still used.) (Pull request #796)
- Require all built-in modules using `node:` prefix. (Pull request #796)
- Standardize to double quotes everywhere (no linting or autoformatting added.) (Pull request #796)
- Remove some unused imports. (Pull request #796)
- + 1 more
v3.1.2
📋 Changes
- Fix missing `link` field when getting responses from the API (https://github.com/thedevs-network/kutt/commit/ffa00acaa4b681b261de6f7c40d0914634f8539a, issue https://github.com/thedevs-network/kutt/issues/795)
v3.1.1
📋 Changes
- Fix searching links, users, and domains in tables when using SQLite or MySQL (https://github.com/thedevs-network/kutt/commit/de103423e3a30d1d21528c12e59cfd5a584636a5)
- Make sure `JWT_SECRET` is not empty (https://github.com/thedevs-network/kutt/commit/fc265ef22154000dab3ad7a6946045c564484ce9)
- Add default `MAIL_PORT` value to the `.example.env` file (https://github.com/thedevs-network/kutt/commit/ab83f60b9741e9d5977f7eff90be68376533cd02)
- Use `count(*)` instead of `count(id)` since it's slightly faster (https://github.com/thedevs-network/kutt/commit/876d12fc9dd9ab7d3128ce852043d7f99fdafcab)
v3.1.0
📋 Changes
- Added themes and customizations (see [Themes and customizations](https://github.com/thedevs-network/kutt/tree/main?tab=readme-ov-file#themes-and-customizations))
- Added `LINK_CUSTOM_ALPHABET` to support custom alphabet when generating short links' address
- Added `TRUST_PROXY` configuration
- Fixed showing empty domain address above input when editing a link
- Fixed error when editing a link by admin
- Breaking: Volume name for the SQLite-Redis Docker compose file was changed from `db-data` to `db_data_sqlite` to be consistent in naming with the other compose files. (https://github.com/thedevs-network/kutt/commit/b596f7e8509080fe21144b0bbd08bd9dbac12bb3)
- Added `custom` folder to Docker compose volumes (https://github.com/thedevs-network/kutt/commit/f4a59d4b14eb00a92ebba6ff9388ebcccffcf124)
- Added default `DB_PORT` to the compose file for Postgres (https://github.com/thedevs-network/kutt/commit/b4849ee7371d702a31c0fbb53f0e7a086b56a3f5)
- + 4 more
v3.0.4
📋 Changes
- Fixed error for using unknown `string_agg` function on MySQL/MariaDB (#788)
v3.0.3
📋 Changes
- Add arm64 build for docker (Pull request #786)
- Fixed showing localhost as domain when editing any link (Issue #777)
v3.0.2
📋 Changes
- Fix migration issue for visits' user_id when there was no visit.
v3.0.1
📋 Changes
- Fixes the migration issues for Postgres.
v3.0.0
📋 Changes
- Removed React and Next.js
- Removed TypeScript
- Removed build steps
- Removed anything Google
- Zero configuration start
- Prompt to create an admin user when app is started the first time
- Added support for SQLite and MySQL/MariaDB
- Made Postgres database optional (uses SQLite by default)
- + 10 more
v2.7.4
📋 Changes
- Fix: Apply disallow anonymous link creation option to v1 API as well.
v2.7.3
**Fix**: Disallow creating duplicated links by editing a link and writing a used custom URL. **Feature**: Add and update docker builds **Chore**: Improve logs **Chore**: Add and use cross-env pacakge
v2.7.1
📋 Changes
- Fix: Multiple users with different domains using the same custom url
- Fix: Only use mail user and password if user is provided
v2.7.0
📋 Changes
- Feature: Add change email functionality.
v2.6.0
📋 Changes
- Feature: Add disallow registration and disallow anonymous links option
v2.5.0
📋 Changes
- Feature: Only use reCaptcha if credentials are provided. (#43, #68)
- Feature: Add link expiration option. (#357)
- Fix: Apply non-logged-in cooldown limit .
- Fix: Searching links.
- Fix: Allow the optional fields of the link creation request body to be null or falsey.
- chore: Increase number of processors for visit queue.
v2.4.5
📋 Changes
- Fix description migration script
- Use Next.js public runtime config instead of webpack and environment variables
- Add official Docker image
v2.4.0
📋 Changes
- Feature: Add description for links. Resolves #51
v2.3.17
📋 Changes
- Feature: Allow multiple custom domains. #230.
- Fix: Skip if default domain is used as custom domain. Resolves #287
- Fix: Responsive design in LinksTable.tsx.
v1.2.0
📋 Changes
- Added Redis as cache layer to the app
- Minor bug fixes
v1.1.0
📋 Changes
- Added admin emails config, so can add admin specific actions.
- Added ban URLs form to settings for admins. Now admins can:
- * Ban links
- * Ban user of that link and all of that user's links
- * Ban domain of that link
- * Ban host/IP of that link
- Added banned landing page for banned links
