The Securepub site is organized into two kinds of sections:
- documentation sections which describe it
- application sections which provide functionality
Each section is numbered as shown below to make it easy to identify and locate in Securepub's source code repository. For
example the content for the "welcome" section is kept in the folder src/01.welcome
documentation application sections sections ┌─────────┴─────────┐ ┌────────────────────────┴──────────────────────────┐ 01. welcome 10. create 20. bundlelist 40. memberlist 02. how-it-works 11. profile 21. bundle 41. member 03. design 04. development 60. join 30. topiclist 05. deployment 61. signin 31. topic 06. about 32. review 07. licenses
All URL paths of pages in these sections begin with a Securepub release prefix:
/_v1.2401_/
/XX/_v1.2401_/
where XX represents a two character ISO 639-1 ↗︎ language code. The relevant section name follows the release prefix. For example, pages in the design section have URL paths starting with
/_v1.2401_/design/
/XX/_v1.2401_/design/
Documentation Sections
The documentation sections explain various aspects of Securepub:
-
Welcome
Explain Securepub's purpose and why someone would use it. -
How it works
Explains Securepub's core concepts and how they relate to each other. -
Design
Securepub's requirements, design decisions, architecture and components. -
Development
What developers need to know to work on it. -
Deployment
Where and how Securepub is deployed. -
About
About the Securepub project and people. -
License
Securepub's license and the licenses of third-party components it uses.
Application Sections
The pages in the application sections are organized based on the nature of information they manage and the role they play. The numbering of the sections roughly follows the order the section would be used by the host or guest. E.g. the "create" section comes first because the others aren't relevant until after the engagement is created, followed by the "profile" section because after they create an engagement a host must add their profile and so forth.
-
Bundle List
Allows the host to view the list of all the bundles they've added.
Allows other members to list all the bundles the host has shared with them.
-
Bundle
Allows members to examine a bundle and exchange comments on it with the host.
Allows the host to add a new bundle and specify the members it's shared with.
Allows the host to modify a bundle and/or share and comment on it with members.
Allows members to download unrestricted bundles shared with them.
Allows accepted members to download restricted bundles shared with them.
-
Topic List
Allows members to view the list of topics shared with them.
Allows accepted members to add new topics. -
Topic
Allows members to review the content of a topic.
Allows accepted members to read and add comments on a topic.
Allows accepted members to create new topics and specify required bundles.
Allows the topic creator to share the topic with other members.
-
Review
Pages in this section allow the Topic pages to safely serve content
reviewed in the preview iframe or new browser tab from a separate origin.
-
Member List
Allows members to view the list of members in the engagement.
Allows the host to view invitation links of members. -
Member
Allows members to view the profile of a member.
Allows members to edit a private note they've made about a member.
Allows accepted members to share their topics with other members.
Allows the host to add a member to the engagement with an initial profile.
Allows the host to specify bundles shared with the new member.
Application Site Map
The following diagram shows most of the navigational paths between the application sections. Some paths may only be taken by the host or by members after they have satisified related preconditions.
invitation link securepub or securepub menu menu │ │ │ │ ▼ link ▼ 60. /join pw 61. /signin 10. /create/have ┏━━━━━━┓ failed ┏━━━━━━━━┓ ┏━━━━━━━━┓ ┃ join ┃ ─────────▶ ┃ signin ┃ ◀┐ ┃ create ┃ ┗━━━━━━┛ ┗━━━━━━━━┛ │ fail ┗━━━━━━━━┛ │ │ host │ └────┘ │ proceed │ │ without │ │ │ │ profile │ ▼ │ │ │ 11. /profile/add │ │ │ ┏━━━━━━━━━━━━━┓ │ └───────────────────────────────────▶ ┃ add profile ┃ │ │ ┌────── ┗━━━━━━━━━━━━━┛ │ link pw │ │ │ update │ worked │ │ │ ▼ │ │ ▼ 30. /topiclist │ │ 11. /profile/update ┏━━━━━━━━┓ ◀───────────┘◀──────────┘ ┏━━━━━━━━━┓ ┌────▶ ┃ topics ┃ ◀─────────────────────────────▶ ┃ profile ┃ ◀┐ │ menu ┗━━━━━━━━┛─────────────┐ ┗━━━━━━━━━┛ │ update │ │ details │ add └────┘ │ │ │ │ ▼ ▼ │ 31. /topic/#n 31. /topic/add │ ┏━━━━━━━━┓ ┏━━━━━━━━━━━┓ │ ┌─▶ ┃ topic ┃◀────────┃ add topic ┃ │ │ ┗━━━━━━━━┛ ┗━━━━━━━━━━━┛ │ └────┘ │ update │ │ │ 20. /bundlelist │ ┏━━━━━━━━━┓ ├────▶ ┃ bundles ┃────────────┐ │ menu ┗━━━━━━━━━┛ │ │ │ details │ add │ │ │ │ ▼ ▼ │ 21. /bundle/#n 21. /bundle/add │ ┏━━━━━━━━┓ ┏━━━━━━━━━━━━┓ │ ┌─▶ ┃ bundle ┃◀────────┃ add bundle ┃ │ │ ┗━━━━━━━━┛ ┗━━━━━━━━━━━━┛ │ └────┘ │ update │ │ │ 40. /memberlist │ ┏━━━━━━━━━┓ └────▶ ┃ members ┃────────────┐ menu ┗━━━━━━━━━┛ │ │ details │ add │ │ ▼ ▼ 41. /member/#n 41. /member/add ┏━━━━━━━━┓ ┏━━━━━━━━━━━━┓ ┌─▶ ┃ member ┃◀────────┃ add member ┃ │ ┗━━━━━━━━┛ ┗━━━━━━━━━━━━┛ └────┘ update