defmodule ComfycampWeb.HomeHTML do @moduledoc """ This module contains pages rendered by HomeController. """ use ComfycampWeb, :html import ComfycampWeb.Icons def index(assigns) do ~H"""

Уютный домик

У меня есть несколько проектов, запущенных на домашнем сервере. Я буду рад, если они будут полезны другим людям.

Создайте аккаунт на этом сайте, чтобы получить доступ к остальным сервисам.

Не стоит ожидать большой надёжности, однако я прикладываю все усилия, чтобы сервисы были доступны 24/7.

- Иван, администратор comfycamp.space

Доступные сервисы

<.service name="Mastodon" domain="m.comfycamp.space" description="Микроблоги с поддержкой fediverse." learn_more_url="/services/mastodon" /> <.service name="Nextcloud" domain="nc.comfycamp.space" description="Облако, календарь, задачи." learn_more_url="/services/nextcloud" /> <.service name="Forgejo" domain="git.comfycamp.space" description="Хостинг для git-проектов." /> <.service name="XMPP" domain="xmpp.comfycamp.space" description="Проверенный временем протокол для обмена сообщениями." enable_link={false} /> <.service name="Matrix" domain="matrix.comfycamp.space" description="Современный протокол для общения." enable_link={false} /> <.service name="Fresh RSS" domain="freshrss.comfycamp.space" description="Сервис для чтения RSS лент." />
""" end @doc """ A component representing one service, like mastodon or nextcloud. """ attr :name, :string, required: true attr :domain, :string, required: true attr :description, :string, required: true attr :enable_link, :boolean, required: false, default: true attr :learn_more_url, :string, required: false def service(assigns) do ~H"""

<%= @name %>

<%= if @enable_link do %> @domain} target="_blank"> <%= @domain %> <.arrow_top_right_on_square_icon /> <% else %> <%= @domain %> <% end %>

<%= @description %> <%= if assigns[:learn_more_url] do %> <.link href={@learn_more_url}>Узнать больше <% end %>

""" end def mastodon(assigns) do ~H"""

Mastodon

m.comfycamp.space

Удобный сервис для ведения микроблогов. Простыми словами, это альтернатива Twitter.

Mastodon умеет подключаться к другим сервисам внутри сети Fediverse. Так, например, вы можете общаться с пользователями Pleroma, Misskey, Friendica, Pixelfed, даже если они находятся на других серверах.

""" end def nextcloud(assigns) do ~H"""

Nextcloud

nc.comfycamp.space

Облако, способное заменить десяток сервисов. При помощи Nextcloud вы можете хранить файлы, вести календарь и список задач, синхронизировать контакты, читать почту и новости... А если этого будет мало, вам доступны десятки приложений на любой вкус и цвет.

""" end end