DEPRECATED - Laravel is way to overkill for the simple thing i've planned, I switched to the static site generator jigsaw
This repository has been archived on 2022-11-29. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
nikurasu c07caafc91 FIX: Fixed issue with mixed content 2022-01-02 17:44:58 +01:00
docker FIX: profile pictures not loading correctly, swiched to loading from link instead of filesystem 2022-01-02 16:37:15 +01:00
src FIX: Fixed issue with mixed content 2022-01-02 17:44:58 +01:00
.dockerignore FIX: profile pictures not loading correctly, swiched to loading from link instead of filesystem 2022-01-02 16:37:15 +01:00
.gitignore FEATURE: Modify userdatas table with json file 2021-12-18 23:13:48 +01:00
LICENSE FEATURE: Added readme, License and last fixes for 1.0 release 2022-01-01 21:50:37 +01:00
README.md FIX: profile pictures not loading correctly, swiched to loading from link instead of filesystem 2022-01-02 16:37:15 +01:00
demo.png FEATURE: Added readme, License and last fixes for 1.0 release 2022-01-01 21:50:37 +01:00

README.md

Socialtree

demoimage

MIT license Docker Maintainer

A webpage to display links to your social media accounts, not more, but also not less.

OverviewInstallationBuildingLicense

Overview

Socialtree is a Webpage writen in php with the laravel framework to display all the links to your social media accounts. It is ment to run within docker, but it also works on baremetal.

Features

  • Preloading the links and settings before first start with a json file
  • Laravel command to reload the config and links
  • Laravel command to change the links
  • Different Themes (The next theme planned is a DoodleCSS Theme)
  • Admin interface

Installation

As mentioned, the easiest way to do this is via Docker. For that you can use this docker-compose.yml file or modify it for your needs.

version: "3"
services:
  web:
    image: nikurasukun/socialtree:latest
    volumes:
      - PATH/TO/CONFIG.json:/var/www/html/src/resources/data.json
    ports:
      - "40890:80"

Mount a json with the config to /var/www/html/src/resources/data.json

It has to look like this

{
  "username": "Nikurasu",
  "theme": "orange",
  "profilepicture": "https://link.to.profilepicture.com/image.png",
  "links": [{
    "platform": "Twitter",
    "link": "https://twitter.com/nik_png",
    "linktext": "Twitter",
    "brandcolors": 1
  },
  {
    "platform": "Mastodon",
    "link": "https://layer8.space/@Nikurasukun",
    "linktext": "Mastodon",
    "brandcolors": 0
  }
  ]
}

With username you specify the displayed name. The theme option specifies the theme of the page. Currently these themes are available:

  • orange

With profilepicture you specify the displayed profile picture. Upload it at the image hoster or cloud provider of your choice (imgur, imbb, Google Drive, nextcloud, etc.) and paste the direct link to the image here.

In the links array you can specify as many links as you want. The platform option is used for the coloring of the link. At the moment I support these platforms:

  • YouTube
  • Pinterest
  • Twitter
  • TikTok
  • Telegram
  • Facebook
  • LinkedIn
  • Mastodon
  • Tumblr
  • VK
  • Discord
  • Twitch
  • Instagram
  • Flickr
  • Deviantart
  • Spotify
  • Snapchat
  • Reddit
  • Soundcloud
  • Steam

Besides coloring this option has no effect. You can make a Green Youtube Link with the Deviantart option if you want. And this option isn't case sensitive.

Link specifies, of corse the link. With linktext you can specify the displayed text for the link. And with brandcolors you can enable the coloring of the link in the colors of the platform you specified with platform.

You can change all of the settings in the running container with:

docker exec -d CONTAINER-NAME php src/artisan preloadDB:all

You can use the project without docker for sure, but I don't provide support for that.

Building

If you want you can build the container by yourself. Simply run docker build from the project root. The Dockerfile is in the docker/images/base directory. But you have to create your own env file and src/resources/database.db file for that.