123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231 |
- <!DOCTYPE html>
- <html>
- <head>
- <title>
- {{ instance }} -- Laboratory GitLab frontend.
- </title>
- <meta name="viewport" content="width=device-width">
- </head>
- <body>
- <nav>
- {% if repository %}
- <h1>
- {% if repo_avatar %}
- <img src="{{ repo_avatar }}" />
- {% endif %}
- <div>
- {{ title }}
- <div class="laboratory_desc">{{ repo_description }}</div>
- </div>
- </h1>
- <ul>
- <li><a class="{{ about }}" href="{{ repo_url }}/-/about">about</a></li>
- <li><a class="{{ summary }}" href="{{ repo_url }}/">summary</a></li>
- <li><a class="{{ tree }}" href="{{ repo_url }}/-/tree/">tree</a></li>
- <li><a class="{{ log }}" href="{{ repo_url }}/-/commits/">log</a></li>
- <li><a class="{{ refs }}" href="{{ repo_url }}/-/branches">refs</a></li>
- <li><a class="{{ issues }}" href="{{ repo_url }}/-/issues">issues</a></li>
- <li><a class="{{ wikis }}" href="{{ repo_url }}/-/wikis/home">wiki</a></li>
- </ul>
- {% elif user %}
- <h1>
- {% if user_avatar %}
- <img src="{{ user_avatar }}" />
- {% endif %}
- <div>
- {{ title }}
- <div class="laboratory_desc">{{ user_name }}</div>
- </div>
- </h1>
- <ul>
- <li><a class="{{ about }}" href="{{ user_url }}/-/about">about</a></li>
- </ul>
- {% elif group %}
- <h1>
- {% if group_avatar %}
- <img src="{{ group_avatar }}" />
- {% endif %}
- <div>
- {{ title }}
- <div class="laboratory_desc">{{ group_desc }}</div>
- </div>
- </h1>
- <ul>
- <li><a class="{{ projects }}" href="{{ group_url }}">projects</a></li>
- <li><a class="{{ subgroups }}" href="{{ group_url }}/-/subgroups">subgroups</a></li>
- <form method="post">
- <input name="laboratory_searchquery">
- <input type="submit" value="search">
- </form>
- </ul>
- {% else %}
- <h1>
- <div>
- <img src="{{ url_for('static', filename='logo.png') }}" />
- <div class="laboratory_desc">{{ repo_description }}</div>
- </div>
- </h1>
- <ul>
- <li><a href="/" class="{{ about }}">about</a></li>
- <li><a href="/projects" class="{{ projects }}">projects</a></li>
- {% if projects %}
- <form method="post">
- <input name="laboratory_searchquery">
- <input type="submit" value="search">
- </form>
- {% endif %}
- </ul>
- {% endif %}
- </nav>
- <main>
- {% if repository %}
- {% include 'repo.html' %}
- {% elif user %}
- {% include 'users_groups.html' %}
- {% elif group %}
- {% include 'users_groups.html' %}
- {% elif err %}
- <p style="background-color: orangered; padding: 10px">an error occured: {{ err }}</p>
- {% elif about %}
- <p>
- Welcome to Laboratory, a frontend for GitLab!<br />
- Checkout some GitLab instances with Laboratory!<br />
-
- <li><strong>Enterprise Edition instances</strong>:</li>
- <li><a href="/gitlab.com">GitLab.com</a></li>
- <li><strong>Community Edition instances</strong>:</li>
- <li><a href="/gitlab.freedesktop.org">Freedesktop GitLab</a></li>
- <li><a href="/gitlab.archlinux.org">Arch Linux GitLab</a></li>
- <h2>Features</h2>
- <li>No proprietary JavaScript - Only CSS and HTML are used</li>
- <li>Usable in a text-only browser</li>
- <li>Free Software - You can modify it, redistribute it and use it for whatever purpose</li>
- <li>Works on both GitLab Enterprise Edition and Community Edition</li>
- <li>Interface inspired by Cgit and SourceHut - A minimal interface that Just Works</li>
- <li>AGPLv3-licensed</li>
- <i>
- Laboratory doesn't let you clone repositories from GitLab instances.
- It's just a GitLab frontend for those that want a minimal interface when
- browsing repos. If you want to stay private it's recommended to use
- <a href="http://torproject.org">Tor</a>.
- </i>
- <h2>Usage</h2>
- Prefix your instance domain (e.g <code>gitlab.alpinelinux.org</code>) with
- <code>https://[Domain where Laboratory is served]/</code>
- (e.g. <code>https://[Domain where Laboratory is served]/gitlab.freedesktop.org/</code>).
- </p>
- {% elif projects %}
- {{ projects_list }}
- {% endif %}
- </main>
- <hr />
- <footer>
- Generated by the
- <a href="https://git.vitali64.duckdns.org/utils/laboratory.git">Laboratory GitLab frontend</a>,
- a minimal frontend for GitLab instances.
- {% if instance %}
- <small>Instance name: {{ instance }}</small>
- {% endif %}
- </footer>
- <style>
- body {
- font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
- max-width: 1150px;
- margin: 0 auto;
- }
- * { line-height: 1.5; }
- .laboratory_bloblines pre {
- background-color: #f5f5f5;
- text-align: right;
- padding-left: 10px;
- padding-right: 5px;
- }
- .laboratory_blob { font-size: 12pt; }
- nav { margin-bottom: 1em; }
- nav h1 {
- /*font-family: 'Courier New', Courier, monospace;
- margin-left: 1ch;*/
- margin-bottom: 0;
- font-size: 22pt;
- }
- nav h1 div {
- flex-direction: column;
- }
- nav h1, nav ul, nav {
- display: flex;
- align-self: flex-end;
- }
- .laboratory_issues {
- background-color: #eee;
- }
- .laboratory_issuestabs {
- display: flex;
- align-self: flex-end;
- margin: 3px;
- }
- .laboratory_issuestabs li {
- list-style: none;
- margin: 0 2px;
- }
- .laboratory_issuestabs li a {
- padding: 5px 16px 5px 16px;
- text-decoration: none;
- color: grey;
- background-color: #eee;
- color: black;
- }
- nav small {
- font-family: 'Courier New', Courier, monospace;
- position: absolute;
- right: 1.0em;
- }
- .laboratory_desc {
- margin: 0 40px;
- font-size: 11pt;
- font-weight: normal;
- }
- nav ul { margin-bottom: 0; }
- nav ul li {
- list-style: none;
- margin: 0;
- }
- nav ul li a {
- padding: 5px 16px 5px 16px;
- text-decoration: none;
- color: grey;
- }
- nav ul li a:hover, nav ul li a.active {
- background-color: #ccc;
- color: black;
- }
- table.laboratory_list {
- width: 100%;
- border-spacing: 0;
- }
- table.laboratory_list tr:nth-child(even) { background-color: #f7f7f7; }
- table.laboratory_list tr:hover { background-color: #eee; }
- table.laboratory_list tr td a {
- color: black;
- text-decoration: none;
- }
- table.laboratory_list tr td a:hover {
- color: blue;
- text-decoration: underline;
- }
- nav h1 img {
- margin-right: 1ch;
- height: 66.656px;
- }
- nav ul form {
- font-family: 'Courier New', Courier, monospace;
- margin-left: 1em;
- }
- .project_readme pre {
- white-space: pre-wrap;
- border-radius: 8px;
- padding: 10px;
- background: #efefef;
- }
- </style>
- </body>
- </html>
|