1
# Pipa
2
3
* [Features](https://nossa.ee/~talya/pipa/#features)
4
* [Overview](https://nossa.ee/~talya/pipa/#getting-started)
5
* [Getting started](https://nossa.ee/~talya/pipa/#getting-started)
6
* [Legal](https://nossa.ee/~talya/pipa/#legal)
7
* [Contact](https://nossa.ee/~talya/pipa/#contact)
8
9
10
## <a id="features"></a>Features
11
12
* Greasemonkey script to insert the Pipa on target pages.
13
* Light/dark mode.
14
* Link multiple URLs to a single entry to tie them together.
15
* Reorder URLs to keep what's most relevant at top.
16
* Define columns for each entry; can also be used to sort. Default sort is saved.
17
* Add comments to entries; supports image attachments.
18
* All changes recorded in a per-entry event log.\
19
<img src="help/event-feature.png" width="969"><br><br>
20
* Supports gitlab.com and github.com for most activities:
21
* Friendly display of URLs.
22
* Fetch MR/issue status via API, displayed next to MR/issue title reference wherever it appears.\
23
<img src="help/status.png" width="655"><br><br>
24
* Fetch MR/issue labels and MR mergeability via API, displayed under URL in sidebar.\
25
<img src="help/mergeability.png" width="456"><br><br>
26
* All fetched data is cached, and refreshed in the background on access when stale.
27
* Closed or merged issues/MRs are considered stale much less frequently than open ones.
28
* Show CI status in columns for easier view. \
29
<img src="help/ci1.png" width="388"><br> \
30
<img src="help/ci2.png" width="388"><br> \
31
<img src="help/ci3.png" width="388"><br> \
32
<img src="help/ci4.png" width="388"><br><br>
33
* Columns and comments can refer to other entries, linked issues and MRs with
34
shorthand reference syntax.\
35
<img src="help/depends1.png" width="273"><br> \
36
<img src="help/depends2.png" width="675"><br><br>
37
* Due and overdue dates in columns highlighted.\
38
<img src="help/dates.png" width="201"><br><br>
39
* Confidential issues and non-public projects highlighted.\
40
<img src="help/secure.png" width="158"><br><br>
41
* Index view ages completed items out by quarter.\
42
<img src="help/fyq.png" width="641"><br><br>
43
44
See [TODO](TODO) for what might come next.
45
46
47
## <a id="overview"></a>Overview
48
49
The Pipa Index.
50
51
A [Greasemonkey script](gm.js) inserts [this little guy](https://www.instagram.com/pipapeep/):
52
53

54
55
... onto pages of your choosing:
56
57

58
59
He will take you to the Pipa Index for that page:
60
61

62
63
Page isn't in the Index? The Pipa is angry!
64
65

66
67
Do not be alarmed. He will invite you to create a new entry in the Pipa Index:
68
69

70
71
The columns in the Index are defined by you.
72
73

74
75
All changes are saved in an event log.
76
77

78
79
80
## <a id="getting-started"></a>Getting started
81
82
This section is TODO, but I'm including it now to record things that will be
83
useful for it.
84
85
Serving suggestion for "User matches":
86
87
```
88
https://gitlab.com/*
89
https://dev.gitlab.org/*
90
https://github.com/*
91
```
92
93
Serving suggestion for "User excludes" (so you don't get Pipa appearing in
94
iframes):
95
96
```
97
https://gitlab.com/-/sandbox/mermaid*
98
```
99
100
Serving suggestion for "User domain whitelist" (to be used with a `pipa.index`
101
entry in `/etc/hosts`):
102
103
```
104
pipa.index
105
```
106
107
108
## <a id="legal"></a>Legal
109
110
[Pipa](https://www.instagram.com/pipapeep/) is art by
111
[Rigatoni Garrido](https://www.rigatonigarrido.com/)! You can
112
[buy Pipa merchandise](https://pipapeep.shop/)! This use of the Pipa is
113
totally unauthorised! I will most likely have to change
114
[the included artwork](https://nossa.ee/~talya/pipa/tree/main/-/priv/static/images)
115
if anyone ever notices this!
116
117
118
## <a id="contact"></a>Contact
119
120
@kivikakk on Slack if you're tanuki, otherwise <ashe@kivikakk.ee>.
121