🚀 Launch v0.0.2

This commit is contained in:
Korbs 2025-01-23 17:44:22 -05:00
parent 318acee9c1
commit 30fcab5f7c
Signed by: Korbs
SSH key fingerprint: SHA256:Q0b0KraMldpAO9oKa+w+gcsXsOTykQ4UkAKn0ByGn5U
130 changed files with 322 additions and 134 deletions

0
.dockerignore Normal file → Executable file
View file

0
.gitignore vendored Normal file → Executable file
View file

11
Dockerfile Normal file → Executable file
View file

@ -1,6 +1,15 @@
FROM node:lts AS runtime
FROM node:alpine3.20 AS runtime
WORKDIR /app
# Metadata
LABEL org.opencontainers.image.title="Blackclip"
LABEL org.opencontainers.image.vendor="SudoVanilla"
LABEL org.opencontainers.image.description="Link Sharing"
LABEL org.opencontainers.image.licenses="AGPL-3.0-or-later"
LABEL org.opencontainers.image.url="https://ark.sudovanilla.org/Korbs/Blackclip/"
LABEL org.opencontainers.image.source="https://ark.sudovanilla.org/Korbs/Blackclip/"
LABEL org.opencontainers.image.version="0.0.2"
# Copy site to Docker image
COPY . .

0
LICENSE Normal file → Executable file
View file

167
README.md Normal file → Executable file
View file

@ -1,2 +1,169 @@
# BlackClip
BlackClip is a link sharing project, open source and can be self-hosted.
## Setup with Docker
Create a folder for BlackClip and craete two files, the compose and ENV file:
```bash
# Create Folder
mkdir ./blackclip
cd ./blackclip
# Create Files
touch docker-compose.yml
touch .env
```
In `docker-compose.yml`:
```yaml
services:
blackclip:
image: oci.registry.sudovanilla.org/blackclip:latest
restart: always
ports:
- 6533:4321
```
If you need to, you can set BlackClip to any port you want to use, just change `6533`. Do not change `4321`, as this is the port used inside the container.
In `.env`:
```env
# Customization
Wallpaper="https://random-image-pepebigotes.vercel.app/api/random-image"
# About You
Name="John Smith"
Email="j.smith@sudovanilla.org"
Avatar="/avatar.png"
# Links
Mastodon="https://mastodon.social/@mastodon"
Tumblr="https://www.tumblr.com/shencomix"
# Add whatever links you want here, as long as it's supported. Mastodon and Tumblr not required, they're just examples.
```
## Email
In your `.env` file, there is a `Email` variable that you can set. If set, a button labeled "Email" will show up at the top of that page with your profile, right it's right-hand side. This button will use a `href` parameter, utilzing the `mailto:` protocol.
SudoVanilla recommends that add something to the email address to prevent spam. A lot of scrapers like to grab `mailto` links and email addresses on websites, since then I recommend adding `-REMOVE-TO-PREVENT-SPAM` to your email address.
Example:
- Plain email: `johnsmith@example.org`
- Recommended: `johnsmith-REMOVE-TO-PREVENT-SPAM@example.org`
In your email provider, setup an email rule to trash and delete all emails containting the `-REMOVE-TO-PREVENT-SPAM` email address.
## Supported:
- Amazon
- AppleBooks
- AppleMusic
- ApplePodcasts
- Appstore
- Bandcamp
- Behance
- Blog
- Bluesky
- Bookwyrm
- Booth
- Briar
- Cashapp
- Castopod
- Codeberg
- Codepen
- Coffee
- Cryptpad
- Custom
- Deezer
- DevTo
- Discord
- EpicGames
- Etsy
- Facebook
- FDroid
- Firefish
- Figma
- Flickr
- Firefox
- Funkwhale
- Friendica
- Gdrive
- Furaffinity
- Gitlab
- Github
- Hearthisat
- Goodreads
- Instagram
- HumbleBundle
- Itchio
- Itaku
- Kit
- Kickstarter
- LastFM
- KoFi
- Letterboxd
- Lemmy
- Linkedin
- Liberapay
- Littlelink
- Linkstack
- Mastodon
- Llc
- Medium
- Matrix
- Misskey
- Messenger
- Odysee
- Notion
- Openstreetmap
- Onlyfans
- Patreon
- Owncast
- Peertube
- Paypal
- Picarto
- Phone
- Piwigo
- Pinterest
- Playstore
- Pixelfed
- Producthunt
- Pleroma
- Reddit
- Pronounspage
- Share
- Session
- Simplex
- Signal
- Snapchat
- Skoob
- Spotify
- Soundcloud
- Strava
- Steam
- Telegram
- Streams
- Throne
- Threema
- Trakt
- Tiktok
- Tumblr
- Trello
- Twitter
- Twitch
- Unraid
- Unity
- Upptime
- Untappd
- Venmo
- Vcard
- Vrchat
- Vimeo
- Whatsapp
- Website
- Xing
- Wordpress
- YoutubeMusic
- Youtube

0
astro.config.mjs Normal file → Executable file
View file

BIN
bun.lockb

Binary file not shown.

6
docker-compose.yml Normal file → Executable file
View file

@ -1,6 +1,6 @@
services:
blackclip:
image: docker.io/library/link
restart: unless-stopped
image: oci.registry.sudovanilla.org/blackclip:latest
restart: always
ports:
- 5522:4321
- 6533:4321

12
package.json Normal file → Executable file
View file

@ -1,19 +1,21 @@
{
"name": "blackclip",
"type": "module",
"version": "0.0.1",
"version": "0.0.2",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview",
"astro": "astro"
"astro": "astro",
"docker:build": "buildah build -t oci.registry.sudovanilla.org/blackclip --no-cache",
"docker:push": "buildah push oci.registry.sudovanilla.org/blackclip"
},
"dependencies": {
"@astrojs/node": "^8.3.1",
"astro": "^4.10.3"
"@astrojs/node": "^9.0.2",
"astro": "^5.1.9"
},
"devDependencies": {
"sass": "^1.77.5"
"sass": "^1.83.4"
}
}

0
public/avatar.png Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
public/favicon.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 749 B

After

Width:  |  Height:  |  Size: 749 B

0
public/icons/amazon.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

0
public/icons/applebooks.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

0
public/icons/applemusic.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

0
public/icons/applepodcasts.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
public/icons/appstore.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/bandcamp.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/behance.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 630 B

After

Width:  |  Height:  |  Size: 630 B

0
public/icons/blog.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 791 B

After

Width:  |  Height:  |  Size: 791 B

0
public/icons/bluesky.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 640 B

After

Width:  |  Height:  |  Size: 640 B

0
public/icons/bookwyrm.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 372 KiB

After

Width:  |  Height:  |  Size: 372 KiB

0
public/icons/booth.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

0
public/icons/briar.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

0
public/icons/cashapp.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/castopod.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

0
public/icons/codeberg.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

0
public/icons/codepen.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

0
public/icons/coffee.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

0
public/icons/cryptpad.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

0
public/icons/custom.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 915 B

After

Width:  |  Height:  |  Size: 915 B

0
public/icons/deezer.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 766 B

After

Width:  |  Height:  |  Size: 766 B

0
public/icons/dev-to.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 788 B

After

Width:  |  Height:  |  Size: 788 B

0
public/icons/discord.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

0
public/icons/email.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 310 B

0
public/icons/email_alt.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 673 B

After

Width:  |  Height:  |  Size: 673 B

0
public/icons/epic-games.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

0
public/icons/etsy.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/icons/facebook.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 478 B

After

Width:  |  Height:  |  Size: 478 B

0
public/icons/fdroid.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
public/icons/figma.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/firefish.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

0
public/icons/firefox.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

0
public/icons/flickr.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/friendica.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 7.2 KiB

0
public/icons/funkwhale.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/furaffinity.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

0
public/icons/gdrive.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 755 B

After

Width:  |  Height:  |  Size: 755 B

0
public/icons/github.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/gitlab.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

0
public/icons/goodreads.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

0
public/icons/hearthisat.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

0
public/icons/humblebundle.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/instagram.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

0
public/icons/itaku.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/icons/itchio.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

0
public/icons/kickstarter.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/icons/kit.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

0
public/icons/kofi.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 1 KiB

0
public/icons/lastfm.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/icons/lemmy.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

0
public/icons/letterboxd.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

0
public/icons/liberapay.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/linkedin.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 638 B

After

Width:  |  Height:  |  Size: 638 B

0
public/icons/linkstack.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

0
public/icons/littlelink.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

0
public/icons/llc.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

0
public/icons/mastodon.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

0
public/icons/matrix.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

0
public/icons/medium.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 722 B

After

Width:  |  Height:  |  Size: 722 B

0
public/icons/messenger.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 903 B

After

Width:  |  Height:  |  Size: 903 B

0
public/icons/misskey.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

0
public/icons/notion.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
public/icons/odysee.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

0
public/icons/onlyfans.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

0
public/icons/openstreetmap.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 122 KiB

0
public/icons/owncast.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

0
public/icons/patreon.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 243 B

After

Width:  |  Height:  |  Size: 243 B

0
public/icons/paypal.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/peertube.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/phone.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/picarto.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 501 B

After

Width:  |  Height:  |  Size: 501 B

0
public/icons/pinterest.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

0
public/icons/piwigo.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

0
public/icons/pixelfed.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
public/icons/playstore.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 881 B

After

Width:  |  Height:  |  Size: 881 B

0
public/icons/pleroma.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/producthunt.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 716 B

After

Width:  |  Height:  |  Size: 716 B

0
public/icons/pronounspage.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 959 B

After

Width:  |  Height:  |  Size: 959 B

0
public/icons/reddit.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2 KiB

After

Width:  |  Height:  |  Size: 2 KiB

0
public/icons/session.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 1 KiB

0
public/icons/share.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

0
public/icons/signal.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

0
public/icons/simplex.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

0
public/icons/skoob.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

0
public/icons/snapchat.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 5.9 KiB

0
public/icons/soundcloud.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

0
public/icons/spotify.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1,004 B

After

Width:  |  Height:  |  Size: 1,004 B

0
public/icons/steam.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 940 B

After

Width:  |  Height:  |  Size: 940 B

0
public/icons/strava.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 322 B

After

Width:  |  Height:  |  Size: 322 B

0
public/icons/streams.svg Normal file → Executable file
View file

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Some files were not shown because too many files have changed in this diff Show more