Initial Commit

This commit is contained in:
netkas 2024-08-31 15:19:36 -04:00
commit f5e16443d8
9 changed files with 264 additions and 0 deletions

3
.obsidian/app.json vendored Normal file
View file

@ -0,0 +1,3 @@
{
"alwaysUpdateLinks": true
}

1
.obsidian/appearance.json vendored Normal file
View file

@ -0,0 +1 @@
{}

30
.obsidian/core-plugins-migration.json vendored Normal file
View file

@ -0,0 +1,30 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"properties": false,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": false,
"audio-recorder": false,
"workspaces": false,
"file-recovery": true,
"publish": false,
"sync": false
}

20
.obsidian/core-plugins.json vendored Normal file
View file

@ -0,0 +1,20 @@
[
"file-explorer",
"global-search",
"switcher",
"graph",
"backlink",
"canvas",
"outgoing-link",
"tag-pane",
"page-preview",
"daily-notes",
"templates",
"note-composer",
"command-palette",
"editor-status",
"bookmarks",
"outline",
"word-count",
"file-recovery"
]

22
.obsidian/graph.json vendored Normal file
View file

@ -0,0 +1,22 @@
{
"collapse-filter": true,
"search": "",
"showTags": false,
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": true,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 1,
"close": true
}

152
.obsidian/workspace.json vendored Normal file
View file

@ -0,0 +1,152 @@
{
"main": {
"id": "47bba9cf8c75a601",
"type": "split",
"children": [
{
"id": "4c66fd1b60c4b183",
"type": "tabs",
"children": [
{
"id": "18385a150e34cecc",
"type": "leaf",
"state": {
"type": "empty",
"state": {}
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "54b6bf4c1ff29dcf",
"type": "split",
"children": [
{
"id": "ea41205b8e902b84",
"type": "tabs",
"children": [
{
"id": "adb4950c2df9ccfd",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical"
}
}
},
{
"id": "e412b4cee1950c9b",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
}
}
},
{
"id": "6eba3e5357f9577d",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {}
}
}
]
}
],
"direction": "horizontal",
"width": 300
},
"right": {
"id": "ba7b4dc56dcb29ca",
"type": "split",
"children": [
{
"id": "a54a1656e887b746",
"type": "tabs",
"children": [
{
"id": "160a787f41e79761",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "4c28b8702d6daed7",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"linksCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "450ad11f7281639e",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true
}
}
},
{
"id": "c3adf48fb693425f",
"type": "leaf",
"state": {
"type": "outline",
"state": {}
}
}
]
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false
}
},
"active": "18385a150e34cecc",
"lastOpenFiles": [
"Object Structures/Entity/User.md",
"Object Structures/Entity.md",
"Object Structures/Entity",
"Limits/UUID Standard.md",
"Limits/Untitled.md",
"Limits",
"Welcome.md",
"Object Structures"
]
}

9
Limits/UUID Standard.md Normal file
View file

@ -0,0 +1,9 @@
The UUID Standard used in Socialbox will almost always be version 4 (Random), see below
---
A version 4 UUID is randomly generated. As in other UUIDs, 4 bits are used to indicate version 4, and 2 or 3 bits to indicate the variant (102 or 1102 for variants 1 and 2 respectively). Thus, for variant 1 (that is, most UUIDs) a random version 4 UUID will have 6 predetermined variant and version bits, leaving 122 bits for the randomly generated part, for a total of 2122, or 5.3×1036 (5.3 [undecillion](https://en.wikipedia.org/wiki/Names_of_large_numbers "Names of large numbers")) possible version-4 variant-1 UUIDs. There are half as many possible version 4, variant 2 UUIDs (legacy GUIDs) because there is one less random bit available, 3 bits being consumed for the variant.
Per [RFC](https://en.wikipedia.org/wiki/RFC_(identifier) "RFC (identifier)") [9562](https://datatracker.ietf.org/doc/html/rfc9562), the seventh octet's most significant 4 bits indicate which version the UUID adheres to. This means that the first hexadecimal digit in the third group always starts with a `4` in UUIDv4s. Visually, this looks like this `xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx`, where `M` is the UUID version field. The upper two or three bits of digit `N` encode the variant. For example, a random UUID version 4, variant 2 could be `8D8AC610-566D-4EF0-9C22-186B2A5ED793`.[[19]](https://en.wikipedia.org/wiki/Universally_unique_identifier#cite_note-19)
Source: [Universally unique identifier - Wikipedia](https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_4_(random))

View file

@ -0,0 +1,12 @@
The Entity object can be used to represent a entity such as a User, Bot or anything to mimic a sender or receiver.
---
- `uuid`: (**String**) *The Unique Universal Identifier of the entity, see [[UUID Standard]] for how the UUID should be structured*
- `type`: (**Enum**) *The Enum value of the entity type*
- `USER`: *This represents a user account on the instance*
- `BOT`: *This represents a bot account managed by a user on the instance*
- `CHANNEL`: *This represents a channel that the user can subscribe and or post as.*
- `username`: (**String**): *This represents the unique username under the domain*
- `domain`: (**String**): *This represents the domain the entity is under*
- `display_name`: (**String**) *The display name of the entity*

View file

@ -0,0 +1,15 @@
The user object is used for storing basic information about the user, authentication details are not stored on this table. Instead it would be a foreign reference key for the available authentication types that this user can use.
This object extends [[Entity]] to represent an entity.
----
## Structure
- `uuid` (**String**): *The Unique Universal Identifier for the user object* #unique #primary_key #indexed This extends [[Entity]]
- `type` (Enum): The entity type, for users it's always `USER`. This extends [[Entity]]
- `username` (**String**): *The Unique username associated with the user* #unique #paired_index (with `domain`) #indexed. This extends [[Entity]]
- `domain` (**String**): *The domain to which this user is associated with, by default `LOCAL` for users created under the server's local domain.* (==This server manages this user==) #paired_index #indexed This extends [[Entity]]
`username` and `domain` are paired unique indexes, which means the username `John` may exist under `LOCAL` but uniquely, no other user under `LOCAL` can claim this username; but someone else from `example.com` may claim the username `John` so that `john@localhost` and `john@example.com` are always unique pairs per server instance
- `display_name`: (**String**) *The display name for the user, non-unique.
- `anonymous`: (Boolean) Indicates if this user account is temporary & anonymous
- `created`: (Timestamp) *The Timestamp for when this account was created*