Network pages refactoring

This commit is contained in:
lostinlight 2018-08-24 01:18:07 +03:00
parent 7b4825a6ba
commit 06d6951b75
36 changed files with 584 additions and 530 deletions

View File

@ -3,6 +3,8 @@
"data":
{
"title": "aardwolf",
"category": "social network",
"type": "macroblogging",
"logoClr": "46332d",
"created": "2017",
"official": "https://aardwolf.social",
@ -17,12 +19,16 @@
"servers": "",
"mobile": "",
"devTutorials": "https://github.com/BanjoFox/aardwolf/blob/master/INSTALL.md",
"notable": "",
"mascot": [{"item": "aardwolf"}],
"dwellers": "?",
"communities": "",
"descr": "Aardwolf is the newest federated network and still a work-in-progress. Its main goal is to be designed from the ground-up with privacy, security, and freedom in mind.",
"connections": [],
"donate": "https://liberapay.com/Aardwolf",
"tracker": "https://github.com/BanjoFox/aardwolf/issues",
"bounty": "",
"translating": ""
"translating": "",
"reading": "",
"notable": ""
}
}

View File

@ -2,6 +2,36 @@
{
"list":
[
{
"title": "Mastodon",
"url" : "https://joinmastodon.org",
"smallImg": "/img/mastodon.png",
"descr": "Social networking back in your hands. Find your perfect community. Take control of your content"
},
{
"title": "diaspora",
"url" : "https://diaspora.software",
"smallImg": "/img/diaspora.png",
"descr": "Online world where you are in control. Own your data. Choose your audience. Be who you want to be"
},
{
"title": "Friendica",
"url" : "https://friendi.ca",
"smallImg": "/img/friendica.png",
"descr": "Personal network with no central authority or ownership. Keep in contact with people you care about"
},
{
"title": "Hubzilla",
"url" : " https://project.hubzilla.org",
"smallImg": "/img/hubzilla.png",
"descr": "Feature-rich social platform. Create channels with a decentralized nomadic identity"
},
{
"title": "GNU Social",
"url" : "https://gnu.io/social",
"smallImg": "/img/gnusocial.png",
"descr": "Connecting free and independent communities across the web"
},
{
"title": "Socialhome",
"url" : "https://socialhome.network",
@ -14,36 +44,6 @@
"smallImg": "/img/ganggo.png",
"descr": "Decentralized platform in early Alpha stage"
},
{
"title": "Aardwolf",
"url" : "https://aardwolf.social",
"smallImg": "/img/aardwolf.png",
"descr": "Newest federated network, a work-in-progress"
},
{
"title": "Hubzilla",
"url" : " https://project.hubzilla.org",
"smallImg": "/img/hubzilla.png",
"descr": "Feature-rich social platform. Create channels with a decentralized nomadic identity"
},
{
"title": "diaspora",
"url" : "https://diaspora.software",
"smallImg": "/img/diaspora.png",
"descr": "Online world where you are in control. Own your data. Choose your audience. Be who you want to be"
},
{
"title": "Pleroma",
"url" : "https://pleroma.social",
"smallImg": "/img/pleroma.png",
"descr": "Federated microblogging, light as a feather"
},
{
"title": "Mastodon",
"url" : "https://joinmastodon.org",
"smallImg": "/img/mastodon.png",
"descr": "Social networking back in your hands. Find your perfect community. Take control of your content"
},
{
"title": "postActiv",
"url" : "https://www.postactiv.com",
@ -51,16 +51,10 @@
"descr": "Microblogging with additional features and plugins"
},
{
"title": "Friendica",
"url" : "https://friendi.ca",
"smallImg": "/img/friendica.png",
"descr": "Personal network with no central authority or ownership. Keep in contact with people you care about"
},
{
"title": "GNU Social",
"url" : "https://gnu.io/social",
"smallImg": "/img/gnusocial.png",
"descr": "Connecting free and independent communities across the web"
"title": "Pleroma",
"url" : "https://pleroma.social",
"smallImg": "/img/pleroma.png",
"descr": "Federated microblogging, light as a feather"
},
{
"title": "Misskey",
@ -73,14 +67,16 @@
"url" : "https://joinpeertube.org/en",
"smallImg": "/img/peertube.png",
"descr": "Decentralized video hosting. Take back the control of your videos"
},
{
"title": "Aardwolf",
"url" : "https://aardwolf.social",
"smallImg": "/img/aardwolf.png",
"descr": "Newest federated network, a work-in-progress"
}
],
"protocols":
[
{
"name": "OStatus",
"url": "https://github.com/OStatus"
},
{
"name": "diaspora",
"url": "https://github.com/diaspora/diaspora_federation"
@ -89,20 +85,24 @@
"name": "Zot",
"url": "https://project.hubzilla.org/help/developer/zot_protocol"
},
{
"name": "DFRN",
"url": "https://github.com/friendica/friendica/wiki/Protocol"
},
{
"name": "ActivityPub",
"url": "https://activitypub.rocks"
},
{
"name": "OStatus",
"url": "https://github.com/OStatus"
},
{
"name": "DFRN",
"url": "https://github.com/friendica/friendica/wiki/Protocol"
}
],
"langs":
[
{
"name": "PHP",
"networks": "GNU Social, Friendica, Hubzilla, postActiv"
"networks": "GNU Social, Friendica, Hubzilla, postActiv, Pixelfed"
},
{
"name": "Ruby",
@ -110,7 +110,7 @@
},
{
"name": "Python",
"networks": "Socialhome"
"networks": "Socialhome, Funkwhale"
},
{
"name": "Elixir",
@ -118,7 +118,7 @@
},
{
"name": "Rust",
"networks": "Aardwolf"
"networks": "Aardwolf, Rustodon"
},
{
"name": "(Node)JS",

View File

@ -3,6 +3,8 @@
"data":
{
"title": "diaspora",
"category": "social network",
"type": "macroblogging",
"logoClr": "000000",
"created": "2010",
"official": "https://diaspora.software",
@ -14,14 +16,55 @@
"wiki": "https://wiki.diasporafoundation.org/Main_Page",
"servers":
[
{"num": "1", "url": "https://podupti.me"},
{"num": "2", "url": "https://the-federation.info/diaspora"}
{"num": "1", "url": "https://the-federation.info/diaspora"}
],
"serverWizard": "https://podupti.me",
"mobile": "https://f-droid.org/packages/com.github.dfa.diaspora_android",
"proxy": "https://wiki.diaspora.software/Installation/Camo",
"relay": "https://relay.iliketoast.net",
"tutorials": "https://diaspora.software/tutorials",
"devTutorials": "https://wiki.diasporafoundation.org/FAQ_for_pod_maintainers",
"mascot": [{"item": "dandelion"}],
"dwellers": "diasporians",
"descr": "The diaspora* project appeared in 2010, when a group of friends decided to create a social network that would return control to users. The project's mascot is dandelion, and diaspora* servers are called \"pods\". Information about the new network spread far and wide like dandelion's seeds in the wind, attracting newcomers, increasing the number of available pods. Today it's a community project with a stable userbase. Many people joined diaspora* in search of a macroblogging platform independent from corporations.",
"communities": "",
"connections": ["Friendica", "Hubzilla", "Socialhome", "GangGo"],
"features":
[
"tag subscription",
"limited posts",
"making your contact list private",
"markdown support",
"birthday notifications"
],
"information":
[
"Creating a contact group (\"aspect\") and adding specific contacts there, you can make limited posts visible only to these people. After publishing a limited post you won't be able to change its visibility, it will forever be visible only to a particular group of people. New contacts added to that aspect will see only new limited posts published after they've been added to the aspect",
"Direct messages (\"conversations\") can't be deleted. You can mute a conversation and hide it from view. Your conversation will be kept in the database of the server you're registered on and the servers your correspondents are on. Don't use diaspora* conversations for sharing sensitive information",
"When you mute a \"conversation\" with someone, they won't know you did it. If they continue sending you direct messages in that muted conversation, you won't get them. Make sure your contacts know that the conversation was muted and is no longer available on your side"
],
"tracker": "https://github.com/diaspora/diaspora/issues",
"bounty": "https://www.bountysource.com/teams/diaspora",
"translating": "https://wiki.diasporafoundation.org/Contribute_translations",
"reading":
[
{
"title": "Planting a Seed: diaspora story part 1",
"url": "https://medium.com/we-distribute/planting-a-seed-what-working-at-diaspora-was-like-cde26fa29364"
},
{
"title": "Social networking the FOSS way with Diaspora",
"url": "http://www.linux-magazine.com/Issues/2017/194/Diaspora"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Diaspora_(social_network)"
},
{
"title": "FOSDEM 2017 video about diaspora",
"url": "https://archive.fosdem.org/2017/schedule/event/diaspora"
}
],
"notable":
[
{
@ -64,11 +107,6 @@
"url": "https://pod.geraspora.de/u/ey_lou_flynn",
"avatar": "/img/avatars/die_is_lieb.png"
}
],
"communities": "",
"connections": ["Friendica", "Hubzilla", "Socialhome", "GangGo"],
"tracker": "https://github.com/diaspora/diaspora/issues",
"bounty": "https://www.bountysource.com/teams/diaspora",
"translating": "https://wiki.diasporafoundation.org/Contribute_translations"
]
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "friendica",
"category": "social network",
"type": "macroblogging",
"logoClr": "ffb900",
"created": "2010",
"official": "https://friendi.ca",
@ -19,8 +21,10 @@
"servers":
[
{"num": "1", "url": "https://the-federation.info/friendica"},
{"num": "2", "url": "https://dir.friendica.social/servers"}
{"num": "2", "url": "https://dir.friendica.social/servers"},
{"num": "3", "url": "https://fediverse.network/friendica"}
],
"serverWizard": "https://podupti.me",
"mobile": "https://github.com/friendica/friendica/wiki/Clients",
"tutorials":
[
@ -33,6 +37,33 @@
[
{"id": "0", "url": "https://github.com/pafcu/RSStoFriendika"}
],
"mascot": [{"item": "?"}],
"dwellers": "friends",
"communities": [{"title": "List of forums", "url": "https://dir.friendica.social/directory/forums"}],
"descr": "Friendica aims at being a platform that suits everyone. Newcomers will feel right at home: the network's interface and functionality include common features of a mainstream social network. Being comparatively light on resources makes it attractive for administrators to host (Friendica's servers are called \"nodes\"). The community is good-natured and helpful. Friendica is well connected with the rest of Fediverse — its users can follow friends on most other federated networks.",
"connections": ["diaspora*", "Hubzilla", "GNU Social", "Mastodon", "Socialhome", "GangGo", "Pleroma", "postActiv"],
"tracker": "https://github.com/friendica/friendica/issues",
"bounty": "",
"translating": "https://www.transifex.com/Friendica/friendica",
"reading":
[
{
"title": "Encrypting private data in a social network web app. Friendica case.",
"url": "https://blog.mrpetovan.com/web-development/encrypting-private-data-in-a-social-network-web-app"
},
{
"title": "Distributed social networking in 2017: a review",
"url": "https://iwrotethislive.blogspot.ru/2017/11/distributed-social-networking-in-2017.html"
},
{
"title": "Got ZotMike Macgirvin on building your own apps and protocols",
"url": "https://medium.com/we-distribute/got-zot-mike-macgirvin-45287601ff19"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Friendica"
}
],
"notable":
[
{
@ -40,11 +71,6 @@
"url": "https://libranet.de/profile/attac_hl",
"avatar": "/img/avatars/attac_lubeck.png"
}
],
"communities": "https://dir.friendica.social/directory/forums",
"connections": ["diaspora*", "Hubzilla", "GNU Social", "Mastodon", "Socialhome", "GangGo", "Pleroma", "postActiv"],
"tracker": "https://github.com/friendica/friendica/issues",
"bounty": "",
"translating": "https://www.transifex.com/Friendica/friendica"
]
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "ganggo",
"category": "social network",
"type": "macroblogging",
"logoClr": "69d7e2",
"created": "2017",
"official": "https://ggg.social",
@ -14,14 +16,21 @@
{"title": "diaspora", "url": "https://github.com/ganggo/federation"}
],
"wiki": "",
"servers": "https://the-federation.info/ganggo",
"servers":
[
{"num": "1", "url": "https://the-federation.info/ganggo"}
],
"mobile": "https://play.google.com/apps/testing/io.github.ganggo",
"devTutorials": "https://ganggo.github.io/development.html",
"notable": "",
"mascot": [{"item": "GangGo (good-natured creature)"}],
"dwellers": "ganggorians",
"communities": "",
"descr": "GangGo is a new federated social network written in GoLang. The platform is in early Alpha stage.",
"connections": ["diaspora*", "Friendica", "Hubzilla", "Socialhome"],
"tracker": "https://github.com/ganggo/ganggo/issues",
"bounty": "",
"translating": ""
"translating": "",
"reading": "",
"notable": ""
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "gnusocial",
"category": "social network",
"type": "microblogging",
"logoClr": "a22430",
"created": "2010",
"official": "https://gnu.io/social",
@ -12,7 +14,12 @@
"protocols":
[{"title": "OStatus", "url": "https://github.com/OStatus"}],
"wiki": "",
"servers": "https://fediverse.joinout.de",
"servers":
[
{"num": "1", "url": "https://fediverse.joinout.de"},
{"num": "2", "url": "https://fediverse.network/gnusocial"},
{"num": "3", "url": "https://the-federation.info/gnusocial"}
],
"mobile": "https://gitlab.com/distributopia/gnusocial-clients",
"tutorials":
[
@ -25,6 +32,25 @@
{"id": "0", "url": "https://github.com/blankoworld/eli"},
{"id": "1", "url": "https://github.com/mitchellurgero/fediwiki/blob/master/plugins.md"}
],
"mascot": [{"item": "gnu"}],
"dwellers": "GNU-hackers",
"communities": [{"title": "List of groups", "url": "http://laemeur.sdf.org/gs/group-index.html"}],
"descr": "GNU Social creators are the founding fathers of free libre microblogging networks. The platform has a significant userbase and multiple plugins.",
"connections": ["postActiv", "Mastodon", "Pleroma", "Friendica", "Hubzilla"],
"tracker": "https://git.gnu.io/gnu/gnu-social/issues",
"bounty": "",
"translating": "https://www.transifex.com/gnu-social/gnu-social",
"reading":
[
{
"title": "GNU social: Federation against the social model of Twitter",
"url": "https://lasindias.blog/gnu-social-federation-against-the-social-model-twitter"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/GNU_social"
}
],
"notable":
[
{
@ -42,11 +68,6 @@
"url": "https://social.umeahackerspace.se/blog",
"avatar": "/img/avatars/umea.png"
}
],
"communities": "http://laemeur.sdf.org/gs/group-index.html",
"connections": ["postActiv", "Mastodon", "Pleroma", "Friendica", "Hubzilla"],
"tracker": "https://git.gnu.io/gnu/gnu-social/issues",
"bounty": "",
"translating": "https://www.transifex.com/gnu-social/gnu-social"
]
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "hubzilla",
"category": "social network",
"type": "macroblogging",
"logoClr": "43488a",
"created": "2015",
"official": "https://project.hubzilla.org",
@ -17,7 +19,12 @@
{"title": "ActivityPub", "url": "https://activitypub.rocks"}
],
"wiki": "https://project.hubzilla.org/wiki/hubzilla/Hubzilla%2BProject/Home",
"servers": "https://the-federation.info/hubzilla",
"servers":
[
{"num": "1", "url": "https://the-federation.info/hubzilla"},
{"num": "2", "url": "https://fediverse.network/hubzilla"}
],
"serverWizard": "https://podupti.me",
"mobile": "",
"tutorials":
[
@ -31,12 +38,58 @@
[
{"id": "0", "url": "/img/hubzilla-permissions.png"}
],
"notable": "",
"communities": "https://hub.libranet.de/directory?f=&global=1&pubforums=1",
"mascot": [{"item": "red koala"}],
"dwellers": "hubzillians",
"communities": [{"title": "List of forums", "url": "https://hub.libranet.de/directory?f=&global=1&pubforums=1"}],
"descr": "The multi-purpose Hubzilla network is home to nomads and power users. It includes a significant number of features and granular settings. Take your time to explore all of them. If you have questions, don't hesitate to post to developer forums or ask the community. Hubzilla is well connected to the rest of Fediverse and will let you follow users from most other federated networks.",
"connections": ["diaspora*", "Friendica", "GNU Social", "Mastodon", "Pleroma", "Socialhome", "GangGo", "postActiv"],
"features":
[
"forums",
"file sharing",
"nomadic indentity",
"direct messages deletion",
"expiring posts and mail",
"events",
"encrypting comments with passphrase"
],
"information":
[
"By default Hubzilla account federates only within Hubzilla network. You need to turn on ActivityPub and diaspora plugins in profile settings in order to connect with your friends from other networks",
"When you recall a Hubzilla direct message in \"mail\", your message is removed from conversation on both sides (is deleted from the database of the server you're using and from your correspondent's server). This works only between Hubzilla contacts. If you exchange direct messages with friends from diaspora, Friendica, etc, recalling a message will not delete if from their conversations and servers - because those networks do not allow direct message deletion",
"Sharing files is possible only between Hubzilla users, friends from other networks will not have access to shared files"
],
"donate": "https://salt.bountysource.com/teams/hubzilla",
"tracker": "https://github.com/redmatrix/hubzilla/issues",
"bounty": "https://salt.bountysource.com/teams/hubzilla",
"translating": "https://www.transifex.com/Friendica/hubzilla"
"translating": "https://www.transifex.com/Friendica/hubzilla",
"reading":
[
{
"title": "Hubzilla HowTo",
"url": "https://howto.disroot.org/en/dishub"
},
{
"title": "Hubzilla, the Post-Facebook social network",
"url": "https://medium.com/syntomic/the-post-facebook-social-network-d938748be527"
},
{
"title": "Nomadic identity in Hubzilla",
"url": "https://medium.com/@tamanning/nomadic-identity-brought-to-you-by-hubzilla-67eadce13c3b"
},
{
"title": "Getting started with nomadic identityhow to create a personal channel on Hubzilla",
"url": "https://medium.com/@tamanning/getting-started-with-nomadic-identity-how-to-create-a-personal-channel-on-hubzilla-7d9666a428b"
},
{
"title": "The Do-Everything System: An in-depth review of Hubzilla 3.0",
"url": "https://medium.com/we-distribute/the-do-everything-system-an-in-depth-review-of-hubzilla-3-0-692204177d4e"
},
{
"title": "Got ZotMike Macgirvin on building your own apps and protocols",
"url": "https://medium.com/we-distribute/got-zot-mike-macgirvin-45287601ff19"
}
],
"notable": ""
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "mastodon",
"category": "social network",
"type": "microblogging",
"logoClr": "3088d4",
"created": "2016",
"official": "https://joinmastodon.org",
@ -17,9 +19,12 @@
"wiki": "",
"servers":
[
{"num": "1", "url": "https://instances.social"},
{"num": "2", "url": "https://mnm.social/instances"}
{"num": "1", "url": "https://mnm.social/instances"},
{"num": "2", "url": "https://fediverse.network/mastodon"},
{"num": "3", "url": "https://the-federation.info/mastodon"},
{"num": "4", "url": "https://github.com/distributopia/masto-world-overview"}
],
"serverWizard": "https://instances.social",
"mobile": "https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md#mobile-clients",
"forUsers":
[
@ -64,6 +69,40 @@
{"id": "4", "url": "https://fed.brid.gy"},
{"id": "5", "url": "https://gitlab.com/chaica/feed2toot"}
],
"mascot": [{"item": "mastodon", "imgNum": "1"}, {"item": "trumpet", "imgNum": "2"}],
"dwellers": "mastonauts",
"communities": [{"title": "List of servers by theme", "url": "https://github.com/distributopia/masto-world-overview"}],
"descr": "Mastodon network grew quickly and its development is still speedy. You'll find everything you want of a microblogging platform, and much more. There are numerous Mastodon servers (called \"instances\") created specifically for certain communities and dedicated to various interests, spheres of knowledge, regions and activities.",
"connections": ["GNU Social", "Friendica", "Hubzilla", "Pleroma", "PeerTube", "postActiv", "Misskey"],
"features":
[
"contact lists",
"custom emojis",
"pinned posts"
],
"donate": "https://patreon.com/mastodon",
"tracker": "https://github.com/tootsuite/mastodon/issues",
"bounty": "",
"translating": "https://weblate.joinmastodon.org/projects/mastodon/backend",
"reading":
[
{
"title": "One Mammoth of a Job: An Interview with Eugen Rochko of Mastodon",
"url": "https://medium.com/we-distribute/one-mammoth-of-a-job-an-interview-with-eugen-rochko-of-mastodon-23b159d6796a"
},
{
"title": "Two reasons why organizations should switch to self-hosting social media",
"url": "https://blog.joinmastodon.org/2017/03/two-reasons-why-organizations-should-switch-to-self-hosting-social-media"
},
{
"title": "Mastodon Timeline",
"url": "http://ansuz.sooke.bc.ca/entry/335"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Mastodon_(software)"
}
],
"notable":
[
{
@ -236,12 +275,6 @@
"url": "https://mastodon.social/@Purism",
"avatar": "/img/avatars/purism.png"
}
],
"communities": "https://github.com/distributopia/masto-world-overview",
"connections": ["GNU Social", "Friendica", "Hubzilla", "Pleroma", "PeerTube", "postActiv", "Misskey"],
"donate": "https://patreon.com/mastodon",
"tracker": "https://github.com/tootsuite/mastodon/issues",
"bounty": "",
"translating": "https://weblate.joinmastodon.org/projects/mastodon/backend"
]
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "misskey",
"category": "social network",
"type": "microblogging",
"logoClr": "f66e4f",
"created": "2014",
"official": "https://joinmisskey.github.io",
@ -14,14 +16,33 @@
{"title": "ActivityPub", "url": "https://activitypub.rocks"}
],
"wiki": "",
"servers": "https://fediverse.network/misskey",
"servers":
[
{"num": "1", "url": "https://fediverse.network/misskey"}
],
"devTutorials": "https://github.com/syuilo/misskey/blob/master/docs/setup.en.md",
"notable": "",
"mascot": [{"item": "?"}],
"dwellers": "Miskist",
"communities": "",
"descr": "Apart from mainstream microblogging features, this network has many nice additions. User profile can be customized to show less or more available widgets. The project is in active development, parts of its interface have not been fully translated to other languages (main language is Japanese) — anyone can contribute translations and improve the network.",
"connections": ["Mastodon"],
"features":
[
"polls",
"emoji reactions",
"lists",
"calendar",
"trends",
"recommended users",
"tips for newcomers",
"server information",
"games"
],
"donate": "https://www.patreon.com/syuilo",
"tracker": "https://github.com/syuilo/misskey/issues",
"bounty": "",
"translating": "https://crowdin.com/project/misskey"
"translating": "https://crowdin.com/project/misskey",
"reading": "",
"notable": ""
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "peertube",
"category": "federated network",
"type": "video streaming",
"logoClr": "f1680d",
"created": "2017",
"official": "https://joinpeertube.org/en",
@ -16,10 +18,21 @@
"wiki": "https://peertube.frama.wiki",
"servers": [
{"num": "1", "url": "https://instances.joinpeertube.org/instances"},
{"num": "2", "url": "https://peertube.frama.wiki/technics:list-of-servers"}
{"num": "2", "url": "https://fediverse.network/peertube"},
{"num": "3", "url": "https://the-federation.info/peertube"}
],
"mobile": "",
"devTutorials": "https://peertube.frama.wiki/technics:installation",
"mascot": [{"item": "?"}],
"dwellers": "?",
"communities": "",
"descr": "Unlike centralized video platforms, PeerTube considers each user as a person, and not as a product to track and sell advertisements. PeerTube's goal is to create a network of small interconnected video hosting providers. Users are free to choose the hoster of their videos according to terms of service and moderation policy. There are no recommendation algorithms and no need to give away extended copyright to your work. PeerTube video broadcasting is peer-to-peer (through WebRTC): when other people watch a PeerTube video at the same time as you, as long as your tab remains open, your browser shares bits of that video and you participate in a healthier use of the Internet. Videos hosted on PeerTube can be viewed directly from Mastodon and (soon) other Fediverse networks.",
"connections": ["Mastodon", "Pleroma"],
"donate": "https://soutenir.framasoft.org/en",
"tracker": "https://github.com/Chocobozzz/PeerTube/issues",
"bounty": "",
"translating": "",
"reading": "",
"notable":
[
{
@ -47,12 +60,6 @@
"url": "https://peertube.touhoppai.moe/accounts/morevna",
"avatar": "/img/avatars/morevnaproject.png"
}
],
"communities": "",
"connections": ["Mastodon", "Pleroma"],
"donate": "https://soutenir.framasoft.org/en",
"tracker": "https://github.com/Chocobozzz/PeerTube/issues",
"bounty": "",
"translating": ""
]
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "pleroma",
"category": "social network",
"type": "microblogging",
"logoClr": "fba457",
"created": "2017",
"official": "https://pleroma.social",
@ -15,7 +17,12 @@
{"title": "ActivityPub", "url": "https://activitypub.rocks"}
],
"wiki": "",
"servers": "http://distsn.org/pleroma-instances.html",
"servers":
[
{"num": "1", "url": "https://fediverse.network/pleroma"},
{"num": "2", "url": "https://the-federation.info/pleroma"},
{"num": "3", "url": "http://distsn.org/pleroma-instances.html"}
],
"mobile": "https://github.com/tootsuite/documentation/blob/master/Using-Mastodon/Apps.md#mobile-clients",
"forUsers":
[
@ -27,11 +34,37 @@
{"id": "1", "url": "https://git.pleroma.social/pleroma/pleroma-fe/wikis/dual-boot-with-qvitter"}
],
"devTutorials": "https://git.pleroma.social/pleroma/pleroma/wikis/home",
"notable": "",
"mascot": [{"item": "?"}],
"dwellers": "?",
"communities": "",
"descr": "Pleroma microblogging platform was quickly appreciated by the community for its low resource consumption. If you have a Raspberry Pi or similar single-board computer you can use it as Pleroma server for family and friends.",
"connections": ["GNU Social", "Mastodon", "Friendica", "Pleroma", "postActiv"],
"tracker": "https://git.pleroma.social/pleroma/pleroma/issues",
"bounty": "",
"translating": ""
"translating": "",
"reading":
[
{
"title": "What is Pleroma",
"url": "https://blog.soykaf.com/post/what-is-pleroma"
},
{
"title": "ActivityPub in Pleroma",
"url": "https://blog.soykaf.com/post/activity-pub-in-pleroma"
},
{
"title": "Gopher Support in Pleroma",
"url": "https://blog.soykaf.com/post/gopher-support-in-pleroma"
},
{
"title": "Hacking the Pleroma: Elixir, Phoenix and a bit of ActivityPub",
"url": "https://github.com/wimvanderbauwhede/limited-systems/wiki/Hacking-the-Pleroma:-Elixir,-Phoenix-and-a-bit-of-ActivityPub"
},
{
"title": "Blushy-Crushy Fediverse Idol: A Chat with Lain about Pleroma",
"url": "https://medium.com/we-distribute/blushy-crushy-fediverse-idol-a-chat-with-lain-about-pleroma-4ff578b99752"
}
],
"notable": ""
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "postactiv",
"category": "social network",
"type": "microblogging",
"logoClr": "ad68d5",
"created": "2016",
"official": "https://postactiv.com",
@ -15,15 +17,22 @@
],
"docs": "http://www.postactiv.com/docs",
"wiki": "",
"servers": "https://fediverse.network/postactiv",
"servers":
[
{"num": "1", "url": "https://fediverse.network/postactiv"}
],
"mobile": "",
"devTutorials": "http://gitea.postactiv.com/postActiv/postActiv/src/master/INSTALL.md",
"notable": "",
"mascot": [{"item": "?"}],
"dwellers": "postActivists",
"communities": "",
"descr": "It was the dawn of the third age of Fediverse, eight years after the Matrix war. The OStatus project was a dream given form, it's goal — to give a place where people could work out their differences peacefully. It's a port of call, a home away from home, for free libre developers, stubborn hackers, persistent activists, and restless wanderers. It can be a dangerous place, but it is our last, best hope for peace. This is the story of the last of the OStatus networks. The year is 2018. The name of the place is postActiv.",
"connections": ["GNU Social", "Mastodon"],
"donate": "https://www.patreon.com/postActiv",
"tracker": "http://gitea.postactiv.com/postActiv/postActiv/issues",
"bounty": "https://www.postactiv.com/bounties/index.html",
"translating": ""
"translating": "",
"reading": "",
"notable": ""
}
}

View File

@ -3,6 +3,8 @@
"data":
{
"title": "socialhome",
"category": "social network",
"type": "macroblogging",
"logoClr": "2fcbbe",
"created": "2016",
"official": "https://socialhome.network",
@ -14,14 +16,31 @@
{"title": "diaspora", "url": "https://github.com/diaspora/diaspora_federation"}
],
"wiki": "",
"servers": "https://the-federation.info/socialhome",
"servers":
[
{"num": "1", "url": "https://the-federation.info/socialhome"}
],
"mobile": "",
"devTutorials": "https://socialhome.readthedocs.io/en/latest/running.html",
"notable": "",
"mascot": [{"item": "pony"}],
"dwellers": "?",
"communities": "",
"descr": "Socialhome's column grid layout makes it a perfect network for sharing image content or creating personal portfolio and delivering new posts to friends from other Fediverse platforms.",
"connections": ["diaspora*", "Friendica", "Hubzilla", "GangGo"],
"features":
[
"pinned posts"
],
"tracker": "https://github.com/jaywink/socialhome/issues",
"bounty": "",
"translating": ""
"translating": "",
"reading":
[
{
"title": "Faces of the FederationJason Robinson of Socialhome",
"url": "https://medium.com/we-distribute/faces-of-the-federation-jason-robinson-of-socialhome-7f6aa0b77915"
}
],
"notable": ""
}
}

View File

@ -1,243 +0,0 @@
{
"worlds":
{
"diasporaWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "dandelion",
"dwellers": "diasporians",
"descr": "The first diaspora* seeds were planted long ago in the land where milky haze embraces the towering peaks of mighty mountains. The dandelion's seeds flew round like parachutes in the wind, growing more network pods, spreading the idea of a federated social network far and wide. Today diaspora* network is a community project with a stable userbase and a defined development cycle. Many people have joined the diaspora clan in search of a macroblogging social platform that returns control to the users. At first glance diaspora* may seem quiet. But a curious eye and an open mind will find knowledge and kindred spirits here.",
"reading":
[
{
"title": "Planting a Seed: diaspora story part 1",
"url": "https://medium.com/we-distribute/planting-a-seed-what-working-at-diaspora-was-like-cde26fa29364"
},
{
"title": "Social networking the FOSS way with Diaspora",
"url": "http://www.linux-magazine.com/Issues/2017/194/Diaspora"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Diaspora_(social_network)"
},
{
"title": "FOSDEM 2017 video about diaspora",
"url": "https://archive.fosdem.org/2017/schedule/event/diaspora"
}
]
},
"mastodonWorld":
{
"category": "social network",
"type": "microblogging",
"mascot": "mastodon, trumpet",
"dwellers": "mastonauts, mastodonians",
"communities": "List of instances by theme",
"descr": "Under dark blue skies, amidst crystal blue lakes lies the land of Mastodon. Vast are its territories, light-hearted and frolicsome are its dwellers. Lout toots are heard from dawn till dusk all around the place, pineapple showers pour every now and then, though how pineapples appeared there no one knows. Young and motivated Mastodon grew quickly as an independent federated network and its development is still speedy. You'll find everything you want of a microblogging platform, and much more. There are numerous Mastodon instances dedicated to various interests, spheres of knowledge, regions and activities.",
"reading":
[
{
"title": "One Mammoth of a Job: An Interview with Eugen Rochko of Mastodon",
"url": "https://medium.com/we-distribute/one-mammoth-of-a-job-an-interview-with-eugen-rochko-of-mastodon-23b159d6796a"
},
{
"title": "Two reasons why organizations should switch to self-hosting social media",
"url": "https://blog.joinmastodon.org/2017/03/two-reasons-why-organizations-should-switch-to-self-hosting-social-media"
},
{
"title": "Mastodon Timeline",
"url": "http://ansuz.sooke.bc.ca/entry/335"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Mastodon_(software)"
}
]
},
"gnusocialWorld":
{
"category": "social network",
"type": "microblogging",
"mascot": "gnu",
"dwellers": "GNU-socialites, GNU-hackers",
"communities": "List of groups",
"descr": "In the misty valley where crimson sunrise succeeds maroon sunset, among noble mountains and grovy hills are located the lands of GNU Social, founding fathers of free libre microblogging networks. Daring travellers and adventures have trodden these paths in search of a better free social platform. The network has a significant userbase and is abundant in plugins.",
"reading":
[
{
"title": "GNU social: Federation against the social model of Twitter",
"url": "https://lasindias.blog/gnu-social-federation-against-the-social-model-twitter"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/GNU_social"
}
]
},
"friendicaWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "?",
"dwellers": "friends",
"communities": "List of forums",
"descr": "Morning sun gilds swaying tree tops, warm wind makes subtle ripples on the waters. This is the land of hearty laughter, serene friendship, and brilliant conversations — cordial land of Friendica. Dwellers of this land can connect with all other federated networks, due to Friendica's support of common federated protocols. Its community is not large, but good-natured and helpful. Newcomers will feel right at home, as Friendica's layout and functionality include all common features of a mainstream social network familiar to most users.",
"reading":
[
{
"title": "Encrypting private data in a social network web app. Friendica case.",
"url": "https://blog.mrpetovan.com/web-development/encrypting-private-data-in-a-social-network-web-app"
},
{
"title": "Distributed social networking in 2017: a review",
"url": "https://iwrotethislive.blogspot.ru/2017/11/distributed-social-networking-in-2017.html"
},
{
"title": "Got ZotMike Macgirvin on building your own apps and protocols",
"url": "https://medium.com/we-distribute/got-zot-mike-macgirvin-45287601ff19"
},
{
"title": "Wikipedia article",
"url": "https://en.wikipedia.org/wiki/Friendica"
}
]
},
"ganggoWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "GangGo (good-natured creature)",
"dwellers": "ganggorians",
"communities": "",
"descr": "Swift and strong are the waters of the river making its way under the deep blue sky amidst gigantic mountain ranges. It is home to GangGo, the new federated social network written in GoLang. These lands are not densely populated yet, since the platform is in early Alpha stage. Soon it will add unique features, support ActivityPub, attract pioneering explorers and shine in all its glory.",
"reading": ""
},
"socialhomeWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "pony",
"dwellers": "socialhomies",
"communities": "",
"descr": "Endless carpet of turquoise hills and deep blue waters, mingled with springgreen shimmering of Northern lights. No sound pierces the frosty air, except soft distant clopping of hooves. Quiet and radiant is the land of Socialhome, a federated network that lets one create ample home pages and federate content to thousands of users. Due to its column grid layout the platform is most suitable for image content. Socialhome has become part of the Fediverse only recently, but its ambitions are extensive and the protocols it is determined to support effectively connect it with the rest of the federated universe.",
"reading":
[
{
"title": "Faces of the FederationJason Robinson of Socialhome",
"url": "https://medium.com/we-distribute/faces-of-the-federation-jason-robinson-of-socialhome-7f6aa0b77915"
}
]
},
"hubzillaWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "koala (Zot protocol mascot)",
"dwellers": "hubzillians",
"communities": "List of forums",
"descr": "Cool salty breeze plays on the midnightblue waters of Hubzilla bay. Small islands are scattered across the bay, all interconnected, continuously exchanging news, gossip and latest experiments. This is the home to powerful nomads who implemented not only their own Zot protocol which in itself hides many interesting opportunities, but were wise enough to support other federated protocols, thus making their land fully connected with the outer Fediverse. The multi-purpose Hubzilla network may overwhelm with the number of its features, but to those who master it, all horizons are visible.",
"reading":
[
{
"title": "Hubzilla HowTo",
"url": "https://howto.disroot.org/en/dishub"
},
{
"title": "Hubzilla, the Post-Facebook social network",
"url": "https://medium.com/syntomic/the-post-facebook-social-network-d938748be527"
},
{
"title": "Nomadic identity in Hubzilla",
"url": "https://medium.com/@tamanning/nomadic-identity-brought-to-you-by-hubzilla-67eadce13c3b"
},
{
"title": "Getting started with nomadic identityhow to create a personal channel on Hubzilla",
"url": "https://medium.com/@tamanning/getting-started-with-nomadic-identity-how-to-create-a-personal-channel-on-hubzilla-7d9666a428b"
},
{
"title": "The Do-Everything System: An in-depth review of Hubzilla 3.0",
"url": "https://medium.com/we-distribute/the-do-everything-system-an-in-depth-review-of-hubzilla-3-0-692204177d4e"
},
{
"title": "Got ZotMike Macgirvin on building your own apps and protocols",
"url": "https://medium.com/we-distribute/got-zot-mike-macgirvin-45287601ff19"
}
]
},
"pleromaWorld":
{
"category": "social network",
"type": "microblogging",
"mascot": "?",
"dwellers": "pleromates",
"communities": "",
"descr": "Magic stream flows across Pleroma land. Like elixir of life it powers everything around it, nourishing fragrant wild flowers, colouring the ground with everlasting spring. Amiable and talkative dwellers live here. Pleroma microblogging platform appeared only recently, and was quickly appreciated by the community for its low resource consumption and the ability to use it with different frontend layouts. New features are added quickly, while the support of ActivityPub protocol connects Pleroma users with people from other micro- and macro-blogging federated networks.",
"reading":
[
{
"title": "What is Pleroma",
"url": "https://blog.soykaf.com/post/what-is-pleroma"
},
{
"title": "ActivityPub in Pleroma",
"url": "https://blog.soykaf.com/post/activity-pub-in-pleroma"
},
{
"title": "Gopher Support in Pleroma",
"url": "https://blog.soykaf.com/post/gopher-support-in-pleroma"
},
{
"title": "Hacking the Pleroma: Elixir, Phoenix and a bit of ActivityPub",
"url": "https://github.com/wimvanderbauwhede/limited-systems/wiki/Hacking-the-Pleroma:-Elixir,-Phoenix-and-a-bit-of-ActivityPub"
},
{
"title": "Blushy-Crushy Fediverse Idol: A Chat with Lain about Pleroma",
"url": "https://medium.com/we-distribute/blushy-crushy-fediverse-idol-a-chat-with-lain-about-pleroma-4ff578b99752"
}
]
},
"postactivWorld":
{
"category": "social network",
"type": "microblogging",
"mascot": "?",
"dwellers": "postActivists",
"communities": "",
"descr": "It was the dawn of the third age of Fediverse, eight years after the Matrix war. The OStatus project was a dream given form, it's goal — to give a place where people could work out their differences peacefully. It's a port of call, a home away from home, for free libre developers, stubborn hackers, persistent activists, and restless wanderers. It can be a dangerous place, but it is our last, best hope for peace. This is the story of the last of the OStatus networks. The year is 2018. The name of the place is postActiv.",
"reading": ""
},
"aardwolfWorld":
{
"category": "social network",
"type": "macroblogging",
"mascot": "aardwolf",
"dwellers": "?",
"communities": "",
"descr": "Under the dazzling sienna sun for miles and miles stretch Aardwolf lands. Its the home of craftsmen and groundbreakers, always willing to create something new, solid and consistent. Aardwolf is the newest federated network and still a work-in-progress. Its main goal is to be designed from the ground-up with privacy, security, and freedom in mind.",
"reading": ""
},
"peertubeWorld":
{
"category": "federated network",
"type": "video streaming",
"mascot": "",
"dwellers": "?",
"communities": "",
"descr": "PeerTube, a rich and fertile place reveling in warm orange sun rays, is home to visual creators and video gurus. As an alternative to centralized closed-source websites, PeerTube considers each user as a person, and not as a product to track, profile, and better sell available brain time. PeerTube's goal is to create a network of small interconnected video hosting providers. Users are free to choose the hoster of their videos according to terms of service and moderation policy. There are no obscure recommendation algorithms and no need to give away extended copyright to the platform. PeerTube video broadcasting is peer-to-peer (through WebRTC), so when other people are watching a PeerTube video at the same time as you, as long as your tab remains open, your browser shares bits of that video and you participate in a healthier use of the Internet. Videos hosted on PeerTube can be viewed directly from Mastodon and (soon) other Fediverse networks.",
"reading": ""
},
"misskeyWorld":
{
"category": "social network",
"type": "microblogging",
"mascot": "?",
"dwellers": "Miskist",
"communities": "",
"descr": "Up among young winds beneath a dome of stars rises Misskey. Apart from mainstream micro blogging features, this network has nice additions: emoji reactions, polls, recommended users, lists, server information, calendar, trends, tips for newcomers, and even gaming. User profile can be customized to show less or more available widgets. Misskey supports ActivityPub protocol, so users of Misskey can communicate with Mastodon, Friendica, Pleroma and Hubzilla. The project is in active development, parts of its interface have not been fully translated to other languages yet (main language is Japanese) — anyone can contribute translations and help the network.",
"reading": ""
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -56,12 +56,11 @@ wiki: wiki
docs: docs
resources: resources
join: join the network
nodeList: server list
nodeList: Servers list
admins: for administrators
users: for users
techies: for techies
mobapp: mobile app
mobapps: mobile apps
mobapps: Mobile apps
tuts: tutorials
utilities: utilities
forks: forks / modifications
@ -78,10 +77,13 @@ dwellers: dwellers
communities: communities
connections: connects
stars: notable accounts
features: features
information: information
contributing: contributing
note: note
soon: coming soon
uMatch: Find users similar to you by their vocabulary
wizard: SERVER WIZARD
# diaspora page
proxy: proxy

View File

@ -1,18 +1,15 @@
<%
const network = page.network;
const w = network + 'World';
const world = site.data.worldi18n.worlds[w];
const data = site.data[network].data;
const protocols = data.protocols;
%>
<section class="column">
<div class="section">
<h4><%- __('category') %></h4><span><%= world.category %></span>
<h4><%- __('category') %></h4><span><%= data.category %></span>
</div>
<div class="section">
<h4><%- __('type') %></h4><span><%= world.type %></span>
<h4><%- __('type') %></h4><span><%= data.type %></span>
</div>
<div class="section">
<h4><%- __('created') %></h4><span><%= data.created %></span>
@ -32,9 +29,9 @@
<div class="section">
<h4><%- __('protocols') %></h4>
<ul class="section-list">
<% for (item in protocols) { %>
<% for (item in data.protocols) { %>
<li class="u-inline">
<a href="<%= protocols[item].url %>"><%= protocols[item].title %></a><span>,&nbsp;&nbsp;</span>
<a href="<%= data.protocols[item].url %>"><%= data.protocols[item].title %></a><span>,&nbsp;&nbsp;</span>
</li>
<% } %>
</ul>

View File

@ -0,0 +1,33 @@
<%
const network = page.network;
const data = site.data[network].data;
%>
<div class="section-title">
<div style="background-color: #<%= data.logoClr %>">
<svg class="icon-logotype" role="img" aria-labelledby="logo<%= data.title %>">
<title id="logo<%= data.title %>"><%= data.title %> logo</title>
<use xlink:href="#icon-<%= data.title %>">
</svg>
</div><h2><%- __('join') %></h2>
</div>
<div>
<p><svg class="f-highlight <%- network %>" role="img" aria-labelledby="f-snow" style="position: relative"><title id="f-snow">network logo colour icon</title><use xlink:href="#icon-snowflake"></use></svg> Choose a server with open registrations and create an account:</p>
<ul class="server-list">
<% for (item in data.servers) { %>
<li>
<a href="<%= data.servers[item].url %>"><%- __('nodeList') %> /<%= data.servers[item].num %>/ </a></span>
</li>
<% } %>
</ul>
<% if (data.serverWizard) { %>
<p><svg class="f-highlight <%- network %>" role="img" aria-labelledby="f-snow" style="position: relative"><title id="f-snow">network logo colour icon</title><use xlink:href="#icon-snowflake"></use></svg> Or use a wizard to help you pick a server from the list:</p>
<a href="<%= data.serverWizard %>" class="u-block u-emphasize btn-action u-center"><%- __('wizard') %></a>
<% } %>
<% if (data.mobile) { %>
<p><svg class="f-highlight <%- network %>" role="img" aria-labelledby="f-snow" style="position: relative"><title id="f-snow">network logo colour icon</title><use xlink:href="#icon-snowflake"></use></svg> Choose a mobile application from the available ones:</p>
<div class="server-list"><a href="<%= data.mobile %>"><%- __('mobapps') %></a></div>
<% } %>
</div>

View File

@ -1,13 +1,8 @@
<%
const network = page.network;
const w = network + 'World';
const world = site.data.worldi18n.worlds[w];
const data = site.data[network].data;
const numbers = site.data.numbers.list[network];
const connections = data.connections;
const stars = data.notable;
const reading = world.reading;
%>
<section class="section-hero">
@ -27,59 +22,109 @@
</section>
<div class="section-title">
<h2><%- __('world') %></h2>
<div style="background-color: #<%= data.logoClr %>">
<svg class="icon-logotype" role="img" aria-labelledby="logo<%= data.title %>">
<title id="logo<%= data.title %>"><%= data.title %> logo</title>
<use xlink:href="#icon-<%= data.title %>">
</svg>
</div><h2><%- __('world') %></h2>
</div>
<div class="section-wrapper">
<div class="column">
<div class="section">
<h4><%- __('mascot') %></h4><span><%= world.mascot %></span>
<h4 style="width: 100px;"><%- __('mascot') %></h4>
<ul class="section-list">
<% for (i in data.mascot) { %>
<li class="u-inline">
<% if (data.mascot[i].imgNum) { %>
<img class="mascot" src="/img/mascots/<%=network%>-<%=data.mascot[i].imgNum%>.png" alt="mascot picture"><% } %><%= data.mascot[i].item %><span>,&nbsp;&nbsp;</span>
</li>
<% } %>
</ul>
</div>
<div class="section">
<h4><%- __('dwellers') %></h4><span><%= world.dwellers %></span>
<h4 style="width: 100px;"><%- __('dwellers') %></h4><span><%= data.dwellers %></span>
</div>
</div>
<div class="column">
<div class="section">
<h4><%- __('communities') %></h4>
<% if (data.communities) { %>
<span><a href="<%= data.communities %>"><%= world.communities %></a></span>
<ul class="section-list">
<% for (item in data.communities) { %>
<li class="u-inline">
<a href="<%= data.communities[item].url %>"><%= data.communities[item].title %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
<% } else { %>
<span class="u-temp"><%- __('soon') %></span>
<% } %>
</div>
<div class="section">
<div class="section connections">
<h4><dfn title="The platform let's you follow users of these networks"><%- __('connections') %></dfn></h4>
<ul class="article-list">
<% for (item in connections) { %>
<li class="u-inline"><%= connections[item] %><span>,&nbsp;</span></li>
<ul class="section-list">
<% for (item in data.connections) { %>
<li class="u-inline">
<svg class="f-highlight <%- network %>" role="img" aria-labelledby="f-snow" style="position: relative"><title id="f-snow">network logo colour icon</title><use xlink:href="#icon-snowflake"></use></svg><%= data.connections[item] %><span>,&nbsp;</span></li>
<% } %>
</ul>
</div>
</div>
</div>
<p class="description"><%= world.descr %> <a href="<%= data.official %>">Join <%= page.title %> today!</a></p>
<p class="description u-nomargin"><%= data.descr %></p>
<% if (stars) { %>
<div class="section u-block with-image">
<h4><%- __('stars') %></h4>
<ul class="section-list">
<% for (item in stars) { %>
<li class="u-inline">
<a href="<%= stars[item].url %>" title="<%= stars[item].name %>"><img src="<%= stars[item].avatar %>" alt="user"></a>
<% if (data.features) { %>
<div class="section u-block">
<h4><%- __('features') %></h4>
<ul class="section-list article-list">
<% for (item in data.features) { %>
<li>
<%= data.features[item] %>
</li>
<% } %>
</ul>
</div>
<% } %>
<% if (reading) { %>
<% if (data.information) { %>
<div class="section u-block">
<h4><%- __('reading') %></h4>
<ul class="article-list">
<% for (item in reading) { %>
<li><a href="<%= reading[item].url %>"><%= reading[item].title %></a></li>
<h4><%- __('information') %></h4>
<ul class="section-list article-list warning-list">
<% for (item in data.information) { %>
<li>
<%= data.information[item] %>
</li>
<% } %>
</ul>
</div>
<% } %>
<% if (data.stars) { %>
<div class="section u-block with-image">
<h4><%- __('stars') %></h4>
<ul class="section-list">
<% for (item in data.stars) { %>
<li class="u-inline">
<a href="<%= data.stars[item].url %>" title="<%= data.stars[item].name %>"><img src="<%= data.stars[item].avatar %>" alt="user"></a>
</li>
<% } %>
</ul>
</div>
<% } %>
<br>
<%- partial('_partial/join') %>
<br>
<% if (data.reading) { %>
<div class="section u-block">
<h4><%- __('reading') %></h4>
<ul class="article-list">
<% for (item in data.reading) { %>
<li><a href="<%= data.reading[item].url %>"><%= data.reading[item].title %></a></li>
<% } %>
</ul>
</div>

View File

@ -19,17 +19,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<ul class="section-list">
<% for (item in servers) { %>
<li class="u-inline">
<a href="<%= servers[item].url %>"><%- __('nodeList') %> <%= servers[item].num %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
<p><a href="<%= data.mobile %>"><%- __('mobapp') %></a></p>
</div>
<div class="section u-block">
<h4><%- __('admins') %></h4>
<span><a href="<%= data.proxy %>">Camo <%- __('proxy') %></a></span>

View File

@ -53,7 +53,7 @@ layout: layout
<p><%= fv.info %></p>
<p class="u-center">
<a href="https://the-federation.info" class="u-block u-emphasize btn-action"><%- __('joinF') %></a>
<a href="https://the-federation.info" class="u-block u-emphasize btn-action centered"><%- __('joinF') %></a>
<small>* alternative lists of servers may be found on some network pages under “join the network” title</small>
</p>

View File

@ -5,11 +5,8 @@ layout: layout
<%
const data = site.data.friendica.data;
const servers = data.servers;
const tutorials = data.tutorials;
const dreamhost = 'Dreamhost ' + __('guide');
const tuts = [__('installation'), dreamhost, __('selfhost')];
const utilities = data.utilities;
const utils = [__('rss2Friendica')];
%>
@ -24,24 +21,13 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<ul class="section-list">
<% for (item in servers) { %>
<li class="u-inline">
<a href="<%= servers[item].url %>"><%- __('nodeList') %> <%= servers[item].num %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
<span class="u-block"><a href="<%= data.mobile %>"><%- __('mobapps') %></a></span>
</div>
<div class="section u-block">
<h4><%- __('techies') %></h4>
<ul class="section-list">
<% for (item in tutorials) { %>
<% let n = tutorials[item].id %>
<% for (item in data.tutorials) { %>
<% let n = data.tutorials[item].id %>
<li class="u-inline">
<a href="<%= tutorials[item].url %>"><%= tuts[n] %></a><span>&nbsp;/&nbsp;</span>
<a href="<%= data.tutorials[item].url %>"><%= tuts[n] %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
@ -49,10 +35,10 @@ layout: layout
<div class="section u-block">
<h4><%- __('utilities') %></h4>
<ul class="section-list">
<% for (item in utilities) { %>
<% let u = utilities[item].id %>
<% for (item in data.utilities) { %>
<% let u = data.utilities[item].id %>
<li>
<a href="<%= utilities[item].url %>"><%= utils[u] %></a>
<a href="<%= data.utilities[item].url %>"><%= utils[u] %></a>
</li>
<% } %>
</ul>

View File

@ -17,13 +17,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
<span class="u-block"><a href="<%= data.mobile %>"><%- __('mobapp') %></a></span>
</div>
</section>
</div>
<%- partial('_partial/world') %>

View File

@ -22,11 +22,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
<span class="u-block"><a href="<%= data.mobile %>"><%- __('mobapps') %></a></span>
</div>
<div class="section u-block">
<h4><%- __('tuts') %></h4>
<ul class="section-list">

View File

@ -22,10 +22,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
</div>
<div class="section u-block">
<h4><%- __('tuts') %></h4>
<ul class="section-list">

View File

@ -5,14 +5,7 @@ layout: layout
<%
const data = site.data.mastodon.data;
const servers = data.servers;
const tutorials = data.tutorials;
const metrics = data.metrics;
const services = data.services;
const utilities = data.utilities;
const forks = data.forks;
const tuts = [__('intro'), __('howto'), __('guide')];
const ux = data.forUsers;
const uxList = [__('twFriends'), __('uMatch'), __('mastoGallery')];
const stats = [__('dashboards'), __('stats'), __('graphs')];
const tools = [__('mastoPreinstalled'), __('mastoHosting')];
@ -31,46 +24,37 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<ul class="section-list">
<% for (item in servers) { %>
<li class="u-inline">
<a href="<%= servers[item].url %>"><%- __('nodeList') %> <%= servers[item].num %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
<span><a href="<%= data.mobile %>"><%- __('mobapps') %></a></span>
</div>
<div class="section u-block">
<h4><%- __('users') %></h4>
<ul class="section-list">
<% for (item in ux) { %>
<% let n = ux[item].id %>
<% for (item in data.forUsers) { %>
<% let n = data.forUsers[item].id %>
<li>
<a href="<%= ux[item].url %>"><%= uxList[n] %></a>
<a href="<%= data.forUsers[item].url %>"><%= uxList[n] %></a>
</li>
<% } %>
</ul>
</div>
<div class="section u-block">
<h4><%- __('tuts') %></h4>
<h4><%- __('techies') %></h4>
<p class="u-nomargin"><a href="<%= data.awesome %>"><%- __('awesome') %></a></p>
<p class="u-nomargin"><a href="<%= data.backup %>"><%- __('backup') %></a></p>
<ul class="section-list">
<% for (item in tutorials) { %>
<% let n = tutorials[item].id %>
<% for (item in data.services) { %>
<% let b = data.services[item].id %>
<li class="u-inline">
<a href="<%= tutorials[item].url %>"><%= tuts[n] %></a><span>&nbsp;/&nbsp;</span>
<a href="<%= data.services[item].url %>"><%= tools[b] %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
</div>
<div class="section u-block">
<h4><%- __('metrics') %></h4>
<ul class="section-list">
<% for (item in metrics) { %>
<% let s = metrics[item].id %>
<li class="u-inline">
<a href="<%= metrics[item].url %>"><%= stats[s] %></a><span>&nbsp;/&nbsp;</span>
<h4><%- __('forks') %></h4>
<% for (item in data.forks) { %>
<% let b = data.forks[item].id %>
<li>
<a href="<%= data.forks[item].url %>"><%= forkTitles[b] %></a>
</li>
<% } %>
</ul>
@ -83,10 +67,10 @@ layout: layout
<div class="section u-block">
<h4><%- __('utilities') %></h4>
<ul class="section-list">
<% for (item in utilities) { %>
<% let u = utilities[item].id %>
<% for (item in data.utilities) { %>
<% let u = data.utilities[item].id %>
<li>
<a href="<%= utilities[item].url %>"><%= utils[u] %></a>
<a href="<%= data.utilities[item].url %>"><%= utils[u] %></a>
</li>
<% } %>
</ul>
@ -94,25 +78,23 @@ layout: layout
</div>
<div class="column">
<div class="section u-block">
<h4><%- __('techies') %></h4>
<p class="u-nomargin"><a href="<%= data.awesome %>"><%- __('awesome') %></a></p>
<p class="u-nomargin"><a href="<%= data.backup %>"><%- __('backup') %></a></p>
<h4><%- __('tuts') %></h4>
<ul class="section-list">
<% for (item in services) { %>
<% let b = services[item].id %>
<% for (item in data.tutorials) { %>
<% let n = data.tutorials[item].id %>
<li class="u-inline">
<a href="<%= services[item].url %>"><%= tools[b] %></a><span>&nbsp;/&nbsp;</span>
<a href="<%= data.tutorials[item].url %>"><%= tuts[n] %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
</div>
<div class="section u-block">
<h4><%- __('metrics') %></h4>
<ul class="section-list">
<h4><%- __('forks') %></h4>
<% for (item in forks) { %>
<% let b = forks[item].id %>
<li>
<a href="<%= forks[item].url %>"><%= forkTitles[b] %></a>
<% for (item in data.metrics) { %>
<% let s = data.metrics[item].id %>
<li class="u-inline">
<a href="<%= data.metrics[item].url %>"><%= stats[s] %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>

View File

@ -17,12 +17,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
</div>
</section>
</div>
<%- partial('_partial/world') %>

View File

@ -16,19 +16,6 @@ layout: layout
<div class="section-wrapper">
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<ul class="section-list">
<% for (item in servers) { %>
<li class="u-inline">
<a href="<%= servers[item].url %>"><%- __('nodeList') %> <%= servers[item].num %></a><span>&nbsp;/&nbsp;</span>
</li>
<% } %>
</ul>
</div>
</section>
</div>
<%- partial('_partial/world') %>

View File

@ -20,11 +20,6 @@ layout: layout
<div class="section-wrapper">
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
<span><a href="<%= data.mobile %>"><%- __('mobapps') %></a> - Mastodon apps should all work</span>
</div>
<div class="section u-block">
<h4><%- __('users') %></h4>
<ul class="section-list">

View File

@ -17,10 +17,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
</div>
<div class="section u-block">
<h4><%- __('techies') %></h4>
<p class="u-nomargin"><a href="<%= data.docs %>"><%- __('docs') %></a></p>

View File

@ -17,12 +17,6 @@ layout: layout
<%- partial('_partial/generalinfo') %>
<section class="column">
<div class="section u-block">
<h4><%- __('join') %></h4>
<span class="u-block"><a href="<%= data.servers %>"><%- __('nodeList') %></a></span>
</div>
</section>
</div>
<%- partial('_partial/world') %>

View File

@ -178,7 +178,7 @@ $taglist: (diaspora, $diaspora),
(misskey, $misskey);
@each $tag, $color in $taglist {
svg.f-tag.#{$tag} {
svg.#{$tag} {
fill: $color;
}
}

View File

@ -15,8 +15,29 @@
text-align: right;
}
.network p.description {
margin: 1em 0 2em;
.network .connections li {
margin-right: .3em;
}
.connections .section-list {
margin-top: -.4em;
}
svg.f-highlight {
position: relative;
width: 18px;
height: 18px;
top: .2em;
right: .2em;
}
.server-list {
margin-left: 1.3em;
}
img.mascot {
display: inline-block;
margin: 0 .2em;
}
@media screen and (max-width: $mq-small) {

View File

@ -1,6 +1,7 @@
$white: #ffffff;
$golden: #daba76;
$coral: #e93a32;
$black: #0e0a0c;

View File

@ -104,8 +104,7 @@ ol {
dfn {
font-style: inherit;
cursor: pointer;
border: 1px dashed $golden;
padding: .2em .1em .1em;
border-bottom: 1px dashed $grey;
}
.f-icon {
@ -118,7 +117,7 @@ dfn {
.btn-action {
max-width: 170px;
border: none;
margin: .5em auto;
margin: .5em 0;
background-color: $golden;
border-radius: 6px;
padding: 7px;
@ -129,6 +128,10 @@ dfn {
}
}
.btn-action.centered {
margin: .5em auto;
}
.container,
.container-wrapper {
height: inherit;
@ -197,7 +200,7 @@ dfn {
}
.section:not(.u-block) h4 {
margin-right: 1.5em;
margin-right: 1em;
width: 150px;
}
@ -269,7 +272,7 @@ dfn {
}
.section-hero > h3:first-child {
margin-top: 1.5em;
margin-top: .5em;
}
.section-hero > h3:last-child {
@ -316,17 +319,25 @@ dfn {
}
}
.article-list li:before {
.article-list li:before,
.warning-list li:before {
content: "";
width: 7px;
margin-right: .4em;
margin-bottom: 3px;
height: 7px;
display: inline-block;
background: $golden;
border-radius: 50%;
}
.article-list li:before {
background: $golden;
}
.warning-list li:before {
background: $coral;
}
.browserupgrade {
margin: .2em 0;
background: $grey;
@ -358,8 +369,8 @@ dfn {
font-size: 2rem;
}
h4 {
padding: 0 3em;
.section-hero {
width: 90%;
}
.contents {
@ -377,8 +388,13 @@ dfn {
line-height: 1.3;
}
h2 {
font-size: 1rem;
h2,
.section-title h2 {
font-size: 1.2rem;
}
h3 {
font-size: 1.1rem;
}
h4 {