A lightweight, privacy-focused, and fully responsive Linktree alternative built with pure HTML, CSS, and JavaScript. Designed for developers and creators who want a fast, customizable, and open-source "link in bio" solution without the bloat of third-party platforms.
This template is packed with modern features to give your link page a professional edge:
- Modern Glassmorphism UI: A sleek, frosted-glass design with smooth animations and a dynamic particle background.
- Dark/Light Mode: Fully functional theme toggler with system preference detection and local storage persistence.
- Fully Responsive: Optimized for mobile, tablet, and desktop screens using CSS Grid and Flexbox.
- Zero Dependencies: No frameworks, no build steps, and no external CSS/JS libraries. Just pure, performant code.
- Privacy First: No tracking cookies or external analytics scripts included by default.
- Share Functionality: Native Web Share API integration for mobile devices, with a clipboard fallback for desktop.
- QR Code Generator: Automatically generates a QR code for your profile URL for easy offline sharing.
- Back to Top: A convenient button to quickly navigate back to the top of the page.
- EU Compliance Ready: Includes placeholders for Impressum (Legal Notice) and Privacy Policy modals.
- Customizable: Easily edit your profile, bio, and social links via a simple JavaScript configuration object.
- A code editor (e.g., VS Code, Sublime Text).
- A GitHub account (for hosting).
- A profile picture (recommended size: 200x200px).
Open script.js in your code editor. You will see a userConfig object at the very top. This is where you customize the page.
const userConfig = {
name: "Your Name", // Change this
bio: "Your Title | Your Skillset | Your Passion", // Change this
avatar: "URL_TO_YOUR_IMAGE", // See below for avatar setup
// ...
};You have two options for the avatar URL:
- Direct URL: Paste a link to your image (e.g., from AWS S3, Imgur, or your own server).
- GitHub Avatar: Use your GitHub User ID.
- Go to your GitHub profile.
- Look at the URL:
github.com/USERNAME. - Your avatar URL is:
https://avatars.githubusercontent.com/u/YOUR_USER_ID.
The categories array contains your links. You can add as many categories and links as you want.
categories: [
{
title: "Professional", // Category Header
links: [
{
title: "My Portfolio", // Button Text
url: "https://example.com", // Destination URL
icon: "website" // Icon Key (see list below)
},
{
title: "GitHub",
url: "https://github.com/yourusername",
icon: "github"
}
]
},
// Add more categories here...
]Available Icons:
The template supports a wide range of icons. Use the keys below in the icon property:
github, twitter, linkedin, instagram, youtube, facebook, website, email, whatsapp, telegram, discord, tiktok, snapchat, reddit, pinterest, tumblr, threads, mastodon, bluesky, twitch, quora, rumble, lemon8, kuaishou, douyin, wechat, vk, line, xiaohongshu, sharechat, huggingface, kaggle, slack.
This template includes modals for Impressum and Privacy Policy to help with EU compliance (GDPR).
- Open
index.html. - Scroll down to the
<!-- MODALS -->section. - Find the
impressum-modalandprivacy-modaldivs. - Replace the placeholder text (e.g., "Max Mustermann") with your actual legal information.
This template is designed to be hosted for free on GitHub Pages.
- Log in to GitHub.
- Click the + icon in the top-right and select New repository.
- Name your repository (e.g.,
links). - Make sure it is set to Public.
- Click Create repository.
- In your new repository, click Add file > Upload files.
- Drag and drop your
index.html,style.css, andscript.jsfiles. - In the "Commit changes" box, type a message like "Initial commit".
- Click Commit changes.
- Go to your repository Settings (top tab).
- On the left sidebar, click Pages.
- Under Build and deployment > Source, select Deploy from a branch.
- Select
main(ormaster) branch and the/ (root)folder. - Click Save.
GitHub will take a few minutes to build your site. Once ready, you will see a link at the top of the Pages settings page (e.g., https://yourusername.github.io/links/).
Open style.css and modify the :root variables at the top.
:root {
--accent-color: #3b82f6; /* Change this to your brand color */
--accent-hover: #2563eb;
/* ... */
}If you prefer a static background:
- Open
index.html. - Delete the line:
<canvas id="bg-canvas"></canvas>. - Open
script.js. - Remove the call to
initAnimation()inside theDOMContentLoadedevent listener.
If you own a domain (e.g., harisn.de), you can connect it to GitHub Pages:
- Go to your repository Settings > Pages.
- Under Custom domain, type your domain.
- Update your DNS provider (Namecheap, GoDaddy, etc.) with the CNAME or A records provided by GitHub.
This project is open source and available under the MIT License.
- Built with semantic HTML5 & CSS3.
- Icons sourced from open-source SVG libraries.
- Inspired by the need for privacy-focused, developer-friendly link tools.
Note: This template was created with assistance from modern LLM (GLM-4.7) to ensure clean code and accessibility standards.