Releases: LinkStackOrg/LinkStack
LinkStack v4.0.0
New LinkStack release (version 4.0.0)
⚠️ Before you update ⚠️
Name Change
LittleLink Custom is now LinkStack.
Other than the new name and logo, nothing will really change for you.
All coming versions (including this one) are still compatible with the system you're used to.
If you are still using the default app name before you update, the update may log you out after completion.
This is normal and means the update went through successfully. You can simply log back in and use your instance like normal.
New license
With the 4.0 update, the project license has changed.
We have switched from the GNU General Public License version 3.0 (GPLv3) to the GNU Affero General Public License version 3.0 (AGPLv3) to ensure that any modifications made to our project will be available to the wider community, which we believe will benefit the project as a whole.
The AGPLv3 is a copyleft license that applies specifically to network-based software applications, whereas the GPLv3 applies to all software. By using the AGPLv3, we are making a more significant commitment to the open-source community, as it requires all modifications to our project to be made public. This ensures that everyone benefits from any improvements or bug fixes made to the software.
Advanced Config
The update to version 4 will reset your Advanced Config!
If you have advanced settings you would like to bring to the new version, we strongly urge you to back up your settings before you update.
✨ Version 4.0.0 - The new look ✨
Version 4 represents our most significant update yet, as we have completely overhauled the entire page. We have worked diligently to update every single page, resulting in a sleeker and more visually appealing look and feel.
New additions:
- New layout
- Manual user verification
- Multi domain support
- Hide share button
- Advanced user statistics for admins
- Admin Panel themes
- Bugfixes and comfort changes
New layout
With version 4 the layout of your application has changed a bit. You can still find most pages, how you are used to.
We changed everything to a naming scheme that is supposed to give new users a better overview of the site.
New sidebar:
The navbar has become a more integral part to the app. Every element now serves a purpose and can be interacted with.
New share dialog drop down menu
With now QR code share function
New notification and update notification menu. If a new notification or update becomes available one of these icons will display a colored dot.
Click on these to reveal a notification drop down menu to view all notifications and updates.
Personalization drop down menu. Click on your profile picture or name to reveal your personal settings.
This is the place to access your personal settings or log out.
The new styling menu gives you some options to customize your Admin Panel.
Here you can select dark or light mode and select one of the predefined color schemes if you don't like the default one.
Manual user verification
Admins can now select to manually verify every newly registered user.
This replaces the previous "block" function but works similarly.
When enabled in the config, if a new user registers, their status will be set to Pending by default. An admin can now approve this user on the users tab.
When a use's approval status is still pending, a message will be displayed, and they won't be able to use the application until they get approved.
Multi domain support
You can now run your server with multiple domains at once.
A new setting in the config allows admins to display multiple domains in the share dialog on the Admin Panel.
For this, make sure all domains are pointing to your web server and are used by your vhost.
You can then enter each domain (without HTTPS or HTTP) in the config entry
SUPPORTED_DOMAINS like shown below:
Make sure to wrap everything in quotes when doing this.
This setting can only be made by editing the .env config directly or using the alternative config editor.
Hide share button
Users can now hide their share button on their personal pages if they don't want to display it.
Advanced user statistics for admins
Admins now have a bit more information on how active users are and how many individuals register over certain time frames.
It is planned to expand this feature more in the near future to include advanced analytics for the users.
Admin Panel themes?
Admins can customize the feel and look of the entire page.
This marks the first step towards a full Admin Panel theme system.
Admins can customize the color scheme of the entire page and edit CSS to overwrite desired default styling.
Additionally, The banner image can be replaced to give admins more control over their page appearance.
Currently, this feature is aimed at semiprofessionals and professionals.
How to do it:
Upload and rename this file as "dashboard.css" to the folder "assets/dashboard-themes". This file contains all variables to edit the default color scheme.
To upload a custom header image, upload a PNG called "header.png" to the same folder.
Bugfixes and comfort changes
- Now displaying placeholder image if getting custom favicon fails
- Fixed Vcard throwing error on MySQL
Added "Save and Add More" button to add link page.
As always, we count have done this without our monthly subscribers and donors.
A huge “Thank You” goes out to everyone who supported this project.
Thanks to all our beta testers and everyone who participated in the public beta.
LittleLink Custom v3.6.0 redux
LittleLink Custom v3.5.4
New LittleLink Custom release (version 3.5.4)
New additions:
Fixed error undefined constant "STDIN" when updating
Fixed an issue that caused an "Undefined constant 'STDIN'" error during updates, resulting in a 500 error.
This issue has been fixed in version 3.5.4 and onward, and users should no longer experience this issue with future updates.
LittleLink Custom v3.5.3
LittleLink Custom v3.5.2
New LittleLink Custom release (version 3.5.2)
New additions:
- Updated Framework to Laravel 9
- Added phone and email block
- Added option to import and export user data
- Improved LittleLink page loading time
- Improved loading time on the themes page
- Removed unique constrain from usernames
- Fixed page description spacing issue
- Fixed text input limited to 255 characters on MySQL
Docker only:
v3.5.1 hotfix:
- Fixed default avatar being used on mobile
- Added new button "BookWyrm"
v3.5.2 security patch and bugfixes:
- Added option to test SMTP setup
- Fixed custom logo not showing on login/register page
- Fixed cross-realm object access in Webpack 5 (security update)
Updated Framework to Laravel 9
We switched from Laravel 8 to Laravel 9. Laravel 9 introduces important security updates and improvements to the framework, which make it more secure and reliable. Additionally, Laravel 8 has reached its end of life, which means that it will no longer receive updates or security patches, leaving the application vulnerable to potential security risks. Initially, we couldn't update to Laravel 9 due to our dependencies not supporting it.
By upgrading to Laravel 9, we ensure that our application is up-to-date and secure.
Laravel 10 has been released, but it requires at least PHP 8.1, which means that we won't be switching to it just yet to retain support for PHP 8.0.
Added phone and email block
The page item blocks now include two new additions, the phone and email blocks.
Here, users can simply enter their E-Mail address or phone number, respectively. This will generate a button that opens a system dialog to compose a new email or initiate a phone call.
The same can still be done with all regular buttons by saving your phone number or E-Mail by adding tel:
or mailto:
at the beginning.
Added option to import and export user data
Users can now export and import their user data and links. This allows users to transfer their accounts from one instance to another. This new options can be accessed from the account settings.
Users can choose to either export all their data or just their links.
This export includes:
- all links and page icons
- LittleLink name
- username
- page description
- profile picture
the export won't include:
- user email
- user password
- the selected theme
- theme background image
Things like roles, blocked status or email verification will be ignored by the import system.
Importing user data from a file will result in overwriting of the current user's data, including replacing all their current links.
Admins can disable both import and export separately in their config in the security section.
Improved LittleLink page loading time
Recent code refactoring on the LittleLink page has resulted in significant improvements in page load times. By rendering most of the CSS and JavaScript assets inline, we have been able to reduce the number of requests made to the server, which has contributed to faster loading times.
Additionally, we also changed the code for rendering links from to a switch case, which has helped to simplify the code and improve its maintainability.
What the future holds:
The current use of Font Awesome is negatively impacting the performance of the website, causing slower load times. We will look into solving this issue and improving load time, even further.
Loading time without Font Awesome:
Improved loading time on the themes page
The loading time on the themes page has been improved through the implementation of lazy loading the theme updater using Ajax.
The updater part has been moved off the page, resulting in a faster loading time even if you have many themes installed. A loading animation is displayed until all external requests to the themes have been made to check the version, after which the updater becomes interactive.
Removed unique constrain from usernames
The database used to have a restriction that each user had to have a unique name. This meant that if two users tried to register with the same name, the system would not allow it and the second user would have to choose a different name.
However, now, the unique constraint has been removed, which means that users can now have the same username. This update allows multiple users to choose the same name without any issues or restrictions. So, if two users want to use the same username, they are now free to do so, and the system will accept both names without any issues.
Fixed page description spacing issue
The line breaks in the page description have been adjusted to have less spacing between them.
Fixed text input limited to 255 characters on MySQL
Previously, users were restricted to a maximum of 255 characters when inputting text for page descriptions on MySQL. This meant that users had to limit their descriptions to fit within this character limit.
However, with the recent update, users are no longer restricted to a specific character limit. This means that they can enter longer descriptions for their pages without any restrictions. They are free to input as much text as they need to effectively describe their page, without worrying about hitting a character limit.
Enabled compression for docker image
The Docker image has been updated to include compression, which is a technique used to reduce the size of data sent between the website server and the user's browser.
By enabling mod_deflate for text compression, we can reduce the size of files before they are sent from the server to the client. This is achieved by compressing the data using the Deflate algorithm and then sending the compressed data to the client. This process reduces the amount of data that needs to be transferred and therefore may improve the page load time.
To enable compression, we have updated the Apache configuration file to include the necessary directives to enable mod_deflate and configure the output filters for various file types. By doing so, we can compress all text-based content types such as HTML, CSS, and JavaScript files, as well as certain image and font formats.
Overall, this change improves the performance of the application, reduces bandwidth usage, and provides a faster browsing experience for users.
To make use of this update, users will have to update their docker instance or reinstall it manually.
LittleLink Custom v3.5.1
New LittleLink Custom release (version 3.5.1)
New additions:
- Updated Framework to Laravel 9
- Added phone and email block
- Added option to import and export user data
- Improved LittleLink page loading time
- Improved loading time on the themes page
- Removed unique constrain from usernames
- Fixed page description spacing issue
- Fixed text input limited to 255 characters on MySQL
Docker only:
v3.5.1 hotfix:
- Fixed default avatar being used on mobile
- Added new button "BookWyrm"
Updated Framework to Laravel 9
We switched from Laravel 8 to Laravel 9. Laravel 9 introduces important security updates and improvements to the framework, which make it more secure and reliable. Additionally, Laravel 8 has reached its end of life, which means that it will no longer receive updates or security patches, leaving the application vulnerable to potential security risks. Initially, we couldn't update to Laravel 9 due to our dependencies not supporting it.
By upgrading to Laravel 9, we ensure that our application is up-to-date and secure.
Laravel 10 has been released, but it requires at least PHP 8.1, which means that we won't be switching to it just yet to retain support for PHP 8.0.
Added phone and email block
The page item blocks now include two new additions, the phone and email blocks.
Here, users can simply enter their E-Mail address or phone number, respectively. This will generate a button that opens a system dialog to compose a new email or initiate a phone call.
The same can still be done with all regular buttons by saving your phone number or E-Mail by adding tel:
or mailto:
at the beginning.
Added option to import and export user data
Users can now export and import their user data and links. This allows users to transfer their accounts from one instance to another. This new options can be accessed from the account settings.
Users can choose to either export all their data or just their links.
This export includes:
- all links and page icons
- LittleLink name
- username
- page description
- profile picture
the export won't include:
- user email
- user password
- the selected theme
- theme background image
Things like roles, blocked status or email verification will be ignored by the import system.
Importing user data from a file will result in overwriting of the current user's data, including replacing all their current links.
Admins can disable both import and export separately in their config in the security section.
Improved LittleLink page loading time
Recent code refactoring on the LittleLink page has resulted in significant improvements in page load times. By rendering most of the CSS and JavaScript assets inline, we have been able to reduce the number of requests made to the server, which has contributed to faster loading times.
Additionally, we also changed the code for rendering links from to a switch case, which has helped to simplify the code and improve its maintainability.
What the future holds:
The current use of Font Awesome is negatively impacting the performance of the website, causing slower load times. We will look into solving this issue and improving load time, even further.
Loading time without Font Awesome:
Improved loading time on the themes page
The loading time on the themes page has been improved through the implementation of lazy loading the theme updater using Ajax.
The updater part has been moved off the page, resulting in a faster loading time even if you have many themes installed. A loading animation is displayed until all external requests to the themes have been made to check the version, after which the updater becomes interactive.
Removed unique constrain from usernames
The database used to have a restriction that each user had to have a unique name. This meant that if two users tried to register with the same name, the system would not allow it and the second user would have to choose a different name.
However, now, the unique constraint has been removed, which means that users can now have the same username. This update allows multiple users to choose the same name without any issues or restrictions. So, if two users want to use the same username, they are now free to do so, and the system will accept both names without any issues.
Fixed page description spacing issue
The line breaks in the page description have been adjusted to have less spacing between them.
Fixed text input limited to 255 characters on MySQL
Previously, users were restricted to a maximum of 255 characters when inputting text for page descriptions on MySQL. This meant that users had to limit their descriptions to fit within this character limit.
However, with the recent update, users are no longer restricted to a specific character limit. This means that they can enter longer descriptions for their pages without any restrictions. They are free to input as much text as they need to effectively describe their page, without worrying about hitting a character limit.
Enabled compression for docker image
The Docker image has been updated to include compression, which is a technique used to reduce the size of data sent between the website server and the user's browser.
By enabling mod_deflate for text compression, we can reduce the size of files before they are sent from the server to the client. This is achieved by compressing the data using the Deflate algorithm and then sending the compressed data to the client. This process reduces the amount of data that needs to be transferred and therefore may improve the page load time.
To enable compression, we have updated the Apache configuration file to include the necessary directives to enable mod_deflate and configure the output filters for various file types. By doing so, we can compress all text-based content types such as HTML, CSS, and JavaScript files, as well as certain image and font formats.
Overall, this change improves the performance of the application, reduces bandwidth usage, and provides a faster browsing experience for users.
To make use of this update, users will have to update their docker instance or reinstall it manually.
LittleLink Custom v3.5.0
New LittleLink Custom release (version 3.5.0)
New additions:
- Updated Framework to Laravel 9
- Added phone and email block
- Added option to import and export user data
- Improved LittleLink page loading time
- Improved loading time on the themes page
- Removed unique constrain from usernames
- Fixed page description spacing issue
- Fixed text input limited to 255 characters on MySQL
Docker only:
Updated Framework to Laravel 9
We switched from Laravel 8 to Laravel 9. Laravel 9 introduces important security updates and improvements to the framework, which make it more secure and reliable. Additionally, Laravel 8 has reached its end of life, which means that it will no longer receive updates or security patches, leaving the application vulnerable to potential security risks. Initially, we couldn't update to Laravel 9 due to our dependencies not supporting it.
By upgrading to Laravel 9, we ensure that our application is up-to-date and secure.
Laravel 10 has been released, but it requires at least PHP 8.1, which means that we won't be switching to it just yet to retain support for PHP 8.0.
Added phone and email block
The page item blocks now include two new additions, the phone and email blocks.
Here, users can simply enter their E-Mail address or phone number, respectively. This will generate a button that opens a system dialog to compose a new email or initiate a phone call.
The same can still be done with all regular buttons by saving your phone number or E-Mail by adding tel:
or mailto:
at the beginning.
Added option to import and export user data
Users can now export and import their user data and links. This allows users to transfer their accounts from one instance to another. This new options can be accessed from the account settings.
Users can choose to either export all their data or just their links.
This export includes:
- all links and page icons
- LittleLink name
- username
- page description
- profile picture
the export won't include:
- user email
- user password
- the selected theme
- theme background image
Things like roles, blocked status or email verification will be ignored by the import system.
Importing user data from a file will result in overwriting of the current user's data, including replacing all their current links.
Admins can disable both import and export separately in their config in the security section.
Improved LittleLink page loading time
Recent code refactoring on the LittleLink page has resulted in significant improvements in page load times. By rendering most of the CSS and JavaScript assets inline, we have been able to reduce the number of requests made to the server, which has contributed to faster loading times.
Additionally, we also changed the code for rendering links from to a switch case, which has helped to simplify the code and improve its maintainability.
What the future holds:
The current use of Font Awesome is negatively impacting the performance of the website, causing slower load times. We will look into solving this issue and improving load time, even further.
Loading time without Font Awesome:
Improved loading time on the themes page
The loading time on the themes page has been improved through the implementation of lazy loading the theme updater using Ajax.
The updater part has been moved off the page, resulting in a faster loading time even if you have many themes installed. A loading animation is displayed until all external requests to the themes have been made to check the version, after which the updater becomes interactive.
Removed unique constrain from usernames
The database used to have a restriction that each user had to have a unique name. This meant that if two users tried to register with the same name, the system would not allow it and the second user would have to choose a different name.
However, now, the unique constraint has been removed, which means that users can now have the same username. This update allows multiple users to choose the same name without any issues or restrictions. So, if two users want to use the same username, they are now free to do so, and the system will accept both names without any issues.
Fixed page description spacing issue
The line breaks in the page description have been adjusted to have less spacing between them.
Fixed text input limited to 255 characters on MySQL
Previously, users were restricted to a maximum of 255 characters when inputting text for page descriptions on MySQL. This meant that users had to limit their descriptions to fit within this character limit.
However, with the recent update, users are no longer restricted to a specific character limit. This means that they can enter longer descriptions for their pages without any restrictions. They are free to input as much text as they need to effectively describe their page, without worrying about hitting a character limit.
Enabled compression for docker image
The Docker image has been updated to include compression, which is a technique used to reduce the size of data sent between the website server and the user's browser.
By enabling mod_deflate for text compression, we can reduce the size of files before they are sent from the server to the client. This is achieved by compressing the data using the Deflate algorithm and then sending the compressed data to the client. This process reduces the amount of data that needs to be transferred and therefore may improve the page load time.
To enable compression, we have updated the Apache configuration file to include the necessary directives to enable mod_deflate and configure the output filters for various file types. By doing so, we can compress all text-based content types such as HTML, CSS, and JavaScript files, as well as certain image and font formats.
Overall, this change improves the performance of the application, reduces bandwidth usage, and provides a faster browsing experience for users.
To make use of this update, users will have to update their docker instance or reinstall it manually.
LittleLink Custom v3.4.2
New LittleLink Custom release version 3.4.2
New additions:
- Fixed built in SMTP service
- Fixed Advanced Config example
Thank you for making all of this possible! Our supporters on GitHub and Patreon are the backbone of this project, and we are grateful for each and every one of you. A special thank you to everyone who supports this project!
If you would like to help keep this project and its services running for as long as possible, we invite you to learn more about sponsoring us here. Your support means the world to us, and we thank you for your generosity!
LittleLink Custom v3.4.1
New LittleLink Custom release (version 3.4.1)
Happy Birthday LittleLink Custom! 🎉
Happy one-year anniversary to our amazing open source project, LittleLink Custom!
It's been an incredible journey, and we're thrilled to celebrate all that we've accomplished in just one year.
Over the past year, we've made steady updates to LittleLink Custom, and we're proud to say that we've now reached a full year of active development. It's amazing to see how far we've come, and we're even more excited about the possibilities that lie ahead.
Thanks to the support of our community, we've reached over 650 stars on GitHub and have had over 30,000 downloads.
Thank you for being a part of this incredible journey, and here's to another year!
To mark the occasion, we're excited to release LittleLink Custom 3.4.0! This update includes custom background images for users, a highly requested feature from our community.
Now, users can personalize their links even more and make their LittleLink pages truly unique. Plus, we're introducing a sleek new theme called PolySleek.
Thank you for your continued support and feedback, and we hope you enjoy this update!
Your LLC Team
New additions:
- Added option to upload custom background image
- Improved "Manage Users" page
- Minor fixes and improvements
Patches:
- Fixed email button icons not displaying.
- Fixed login button layout on home page
- Fixed option to disable custom background
- Other minor bugfixes
Added option to upload custom background image
Users now have the option to upload custom background images to use on their pages. This is compatible with most themes. This image can be uploaded in the most common image types, including PNG, JPG, WebP and GIF.
This new option can be found on the themes page.
When using the default theme, the custom background image overwrite the automatic color scheme of the site and matches it according to the uploaded image. This is not possible with custom themes, there, users have to use images that support the theme's color scheme.
Improved "Manage Users" page
On the users page, admins are now able to sort table column alphabetically.
When sorting a column, the admin row will always remain on top.
Additionally, more entries have been added:
- User ID
- Total links
- Total clicks
- Created at
- Last seen
Minor fixes and improvements
- Added option for verified users to disable checkmark
- Added actual URL to query string for links and page icons
- Added option to config to disable custom background images
LittleLink Custom v3.4.0
New LittleLink Custom release (version 3.4.0)
Happy Birthday LittleLink Custom! 🎉
Happy one-year anniversary to our amazing open source project, LittleLink Custom!
It's been an incredible journey, and we're thrilled to celebrate all that we've accomplished in just one year.
Over the past year, we've made steady updates to LittleLink Custom, and we're proud to say that we've now reached a full year of active development. It's amazing to see how far we've come, and we're even more excited about the possibilities that lie ahead.
Thanks to the support of our community, we've reached over 650 stars on GitHub and have had over 30,000 downloads.
Thank you for being a part of this incredible journey, and here's to another year!
To mark the occasion, we're excited to release LittleLink Custom 3.4.0! This update includes custom background images for users, a highly requested feature from our community.
Now, users can personalize their links even more and make their LittleLink pages truly unique. Plus, we're introducing a sleek new theme called PolySleek.
Thank you for your continued support and feedback, and we hope you enjoy this update!
Your LLC Team
New additions:
- Added option to upload custom background image
- Improved "Manage Users" page
- Minor fixes and improvements
Added option to upload custom background image
Users now have the option to upload custom background images to use on their pages. This is compatible with most themes. This image can be uploaded in the most common image types, including PNG, JPG, WebP and GIF.
This new option can be found on the themes page.
When using the default theme, the custom background image overwrite the automatic color scheme of the site and matches it according to the uploaded image. This is not possible with custom themes, there, users have to use images that support the theme's color scheme.
Improved "Manage Users" page
On the users page, admins are now able to sort table column alphabetically.
When sorting a column, the admin row will always remain on top.
Additionally, more entries have been added:
- User ID
- Total links
- Total clicks
- Created at
- Last seen
Minor fixes and improvements
- Added option for verified users to disable checkmark
- Added actual URL to query string for links and page icons
- Added option to config to disable custom background images