Membership prototypes

Table of Contents

1. Summary

Which parties a person works in, and who they report to.

2 prototypes answer to this group. Each one is a static page under doc/prototypes/, opens with no build and no session, and reads mock data only. The table below opens each one and says what it argues. Where a prototype carries a Gemini review, the last column opens it: a review is a generated alternative kept beside the agreed design, never instead of it.

Prototypes is the top page and the only inventory.

2. The prototypes

Prototype What it argues Open it Review
Where I work The member's screen for the parties their account works in: one place each, one list with an action bar, or two columns of "where I am" and "where I can be". Every variant states that no read can name a party yet and that the default cannot be cleared. prototype none
Reporting lines The administrator's view of who reports to whom: an indented tree, a chart of boxes, or a table by depth. Every variant nests the flat roster in the browser, refuses a manager who would close a loop, and states that no approval exists. prototype none

3. Adding a prototype

Create doc/prototypes/membership/<name>/ with an index.html, and a prototype.css and prototype.js when it needs them. Open the page with the links table every prototype carries, and leave its review row at none. Add a row to the table above, with the design note beside the prototype when there is one. Stop there: the site build finds every prototype under this tree, so no build file names it.

A review goes at doc/prototypes/membership/<name>/review/, with an index.html that lists its screens. The row names it, and the prototype's review row points at it. Prototypes states the whole method and the rules that hold for every group.

4. See also

Emacs 29.3 (Org mode 9.6.15)