G'day! Welcome to Linkarooie - my Linktree alternative built with Astro and Tailwind CSS. It's a blazingly fast, fully customisable way to showcase your online presence with your own links and achievements.
- Profile Showcase: Display your name, bio, avatar, and social media links
- Custom Links: Add your important websites, projects, and resources
- Achievements: Show off certifications, milestones, and accomplishments
- Dark/Light Mode: Toggle between themes with persistent preferences
- Mobile-Friendly: Fully responsive design for all devices
- SEO Optimised: Custom metadata and OG images for better sharing
- Hidden Treasures: Secret cheat code Easter eggs for the true diggers (hint: try typing "iddqd" on my profile)
Click the "Fork" button at the top-right of this repository to create your own copy.
git clone https://github.com/YOUR-USERNAME/linkarooie-3.git
cd linkarooie-3
Using npm:
npm install
Or using Bun (my preference):
bun install
-
Create your profile file:
- Duplicate
src/data/profiles/loftwah.ts
and rename it toyourusername.ts
- Edit the file with your own information, links and achievements
- Duplicate
-
Add your images:
- Place your avatar, banner and OG images in
src/assets/images/
- Update the import paths in your profile file
- Place your avatar, banner and OG images in
-
Update the index:
- Edit
src/data/index.ts
to import and export your profile
- Edit
Linkarooie includes scripts to generate custom Open Graph images for your site and profiles:
- Generate main site OG image:
# Default dark theme
bun run scripts/generate-main-og-image.ts
# Light theme
bun run scripts/generate-main-og-image.ts --theme=light
- Generate profile OG image:
# Default dark theme
bun run scripts/generate-og-image.ts
# Light theme
bun run scripts/generate-og-image.ts --theme=light
These scripts create professional social sharing images with your profile details and the Linkarooie branding.
Start the development server:
npm run dev
# or
bun dev
Visit http://localhost:4321
to see your site in action.
- Go to your forked repository on GitHub
- Navigate to "Settings" > "Pages"
- Under "Build and deployment" > "Source", select "GitHub Actions"
The workflow uses a few environment variables that you can configure as repository secrets:
This is crucial for proper site functioning:
- Go to "Settings" > "Secrets and variables" > "Actions"
- Add the
BASE_URL
secret:- For GitHub Pages:
https://yourusername.github.io/linkarooie-3
- For custom domain:
https://yourdomain.com
- For GitHub Pages:
The BASE_URL ensures all relative links work correctly regardless of deployment method.
Note: The workflow file references POSTHOG_KEY
and POSTHOG_HOST
environment variables, but these aren't currently used in the code. They're likely placeholders for future analytics integration.
- Push your changes to the main branch
- GitHub Actions will automatically build and deploy your site
- You can also manually trigger a deployment from the "Actions" tab using "workflow_dispatch"
After the GitHub Action completes, your site will be live at:
https://yourusername.github.io/linkarooie-3
Want to use your own domain like I did with linkarooie.com
? No worries, here's how:
-
Buy a domain from a decent registrar like Namecheap
-
Set up Cloudflare for DNS:
- Create a free Cloudflare account
- Add your domain to Cloudflare
- Update your domain registrar to use Cloudflare nameservers
- In Cloudflare, add a
CNAME
record pointing toyourusername.github.io
- Set the proxy status to "Proxied" for free SSL and performance benefits
-
Set up in GitHub repo:
- Go to your repo's "Settings" > "Pages"
- Under "Custom domain", enter your domain name and click "Save"
- Make sure "Enforce HTTPS" is ticked for secure connections
-
Update the CNAME file:
- The repo already includes a
CNAME
file - Edit it to replace
linkarooie.com
with your own domain name
- The repo already includes a
-
Update BASE_URL secret:
- Go to "Settings" > "Secrets and variables" > "Actions"
- Update the
BASE_URL
to your custom domain (e.g.,https://yourdomain.com
)
Edit tailwind.config.js
to change the primary and accent colors.
Both OG image generation scripts support dark and light themes:
- Dark theme uses a green accent (#a5fd0e)
- Light theme uses a purple accent (#9233ea)
You can modify these colors in the respective scripts.
The codebase is pretty straightforward. Have a geez at:
src/components/
for UI componentssrc/layouts/
for page layoutssrc/pages/
for the main routessrc/types/
for TypeScript interfacesscripts/
for utility scripts including OG image generation
Feel free to submit pull requests with improvements or new features! I'm always keen to make Linkarooie better.
MIT License - feel free to use, modify and share as you please. Attribution is appreciated but not required.
If you've got questions or want to show me what you've built with Linkarooie, give us a shout:
Built with 💚 by Loftwah - Only the vibe coder remains.