Vervis/templates/browse.hamlet
2024-04-10 17:27:40 +03:00

120 lines
3.4 KiB
Text

$# This file is part of Vervis.
$#
$# Written in 2016, 2018, 2019, 2022, 2023, 2024
$# by fr33domlover <fr33domlover@riseup.net>.
$#
$# ♡ Copying is an act of love. Please copy, reuse and share.
$#
$# The author(s) have dedicated all copyright and related and neighboring
$# rights to this software to the public domain worldwide. This software is
$# distributed without any warranty.
$#
$# You should have received a copy of the CC0 Public Domain Dedication along
$# with this software. If not, see
$# <http://creativecommons.org/publicdomain/zero/1.0/>.
<p>
Vervis is a work-in-progress federated project and repository hosting and
collaboration platform. Its development is meant to help form the ForgeFed
specification for project hosting platform federation, and hopefully get
existing platforms (such as Forgejo, Gitea, GitLab CE, etc.) to support it.
<p>
Help wanted! Vervis is meant to be just a backend. We're looking for
developers to work on the
<a href="https://codeberg.org/Anvil/Anvil">
Anvil
frontend.
<p>
Vervis is a web application written in the Haskell programming language and
the Yesod web framework. It's free as in freedom, under AGPLv3. It's being
developed by fr33domlover, who can be found under this nickname on
<a href="https://libera.chat">
Libera Chat
in the #peers channel.
<p>
Vervis currently supports Git and Darcs repositories.
<ul>
<li>
Vervis web app
<a href="https://vervis.peers.community/repos/rjQ3E">
Git repository
with the source code
<li>
<a href="https://codeberg.org/ForgeFed/Vervis">
Mirror on Codeberg
<li>
IRC:
<a href="https://web.libera.chat/#forgefed">
#forgefed @ Libera Chat
<li>
Matrix:
<a href="https://matrix.to/#/#general-forgefed:matrix.batsense.net">
#general-forgefed:matrix.batsense.net
<li>
ForgeFed
<a href="https://forgefed.org">website
<h2>People
<ul>
$forall (Entity personID person, Entity _ actor) <- people
<li>
<a href=@{PersonR $ hashPerson personID}>
~#{username2text $ personUsername person} #{actorName actor}
<h2>Teams
<ul>
$forall (Entity groupID _, Entity _ actor) <- groups
<li>
<a href=@{GroupR $ hashGroup groupID}>
&#{keyHashidText $ hashGroup groupID} #{actorName actor}
<h2>Repos
<ul>
$forall (Entity repoID _, Entity _ actor) <- repos
<li>
<a href=@{RepoR $ hashRepo repoID}>
^#{keyHashidText $ hashRepo repoID} #{actorName actor}
<h2>Ticket Trackers
<ul>
$forall (Entity deckID _, Entity _ actor) <- decks
<li>
<a href=@{DeckR $ hashDeck deckID}>
=#{keyHashidText $ hashDeck deckID} #{actorName actor}
<h2>Merge Request Trackers
<ul>
$forall (Entity loomID _, Entity _ actor) <- looms
<li>
<a href=@{LoomR $ hashLoom loomID}>
+#{keyHashidText $ hashLoom loomID} #{actorName actor}
<h2>Projects
<ul>
$forall (Entity projectID _, Entity _ actor, components, children) <- projects
<li>
<a href=@{ProjectR $ hashProject projectID}>
\$#{keyHashidText $ hashProject projectID} #{actorName actor}
<ul>
$if not $ null components
<li>Components
<ul>
$forall c <- components
<li>
^{componentLinkFedW c}
$if not $ null children
<li>Children
<ul>
$forall c <- children
<li>
^{projectLinkFedW c}