microfed 0.0.8 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/CORE.md +10 -10
  2. package/DESIGN.md +23 -13
  3. package/README.md +6 -0
  4. package/package.json +1 -1
package/CORE.md CHANGED
@@ -1,15 +1,15 @@
1
- # Microfed Core
1
+ # 🧩 Microfed Core
2
2
 
3
3
  Microfed Core is the central module that manages communication between different components of the Microfed framework and provides utility functions. This document outlines the core design of Microfed Core, focusing on its integration with ActivityPub.
4
4
 
5
5
  ## Table of Contents
6
6
 
7
- - [Core Components](#core-components)
8
- - [ActivityPub Integration](#activitypub-integration)
9
- - [API Interface](#api-interface)
10
- - [Error Handling and Logging](#error-handling-and-logging)
7
+ - [🔧 Core Components](#core-components)
8
+ - [🌐 ActivityPub Integration](#activitypub-integration)
9
+ - [🗄️ API Interface](#api-interface)
10
+ - [🔍 Error Handling and Logging](#error-handling-and-logging)
11
11
 
12
- ## Core Components
12
+ ## 🔧 Core Components
13
13
 
14
14
  Microfed Core comprises the following components:
15
15
 
@@ -18,7 +18,7 @@ Microfed Core comprises the following components:
18
18
  3. **ActivityPub Adapter**: Provides a set of utility functions and classes to interact with ActivityPub, parse and serialize data, and manage ActivityPub objects.
19
19
  4. **Networking**: Handles networking tasks, such as HTTP requests, WebSocket connections, and peer-to-peer communication.
20
20
 
21
- ## ActivityPub Integration
21
+ ## 🌐 ActivityPub Integration
22
22
 
23
23
  Microfed Core integrates with ActivityPub using the ActivityPub Adapter component. The adapter offers the following functionality:
24
24
 
@@ -27,7 +27,7 @@ Microfed Core integrates with ActivityPub using the ActivityPub Adapter componen
27
27
  3. **Activity Handling**: Implements methods for processing incoming and outgoing activities, such as Create, Update, Delete, Follow, and Like, according to the ActivityPub specification.
28
28
  4. **ActivityPub API**: Offers an API for interacting with ActivityPub services, such as fetching and updating Actor profiles, sending activities, and managing followers and following collections.
29
29
 
30
- ## API Interface
30
+ ## 🗄️ API Interface
31
31
 
32
32
  Microfed Core exposes a simple and intuitive API interface for developers to interact with the framework and its modules. The API includes methods for:
33
33
 
@@ -35,7 +35,7 @@ Microfed Core exposes a simple and intuitive API interface for developers to int
35
35
  2. **ActivityPub Interaction**: Sending and receiving ActivityPub activities, managing Actor profiles, and handling collections.
36
36
  3. **Utility Functions**: Accessing common utility functions, such as data validation, conversion, and formatting.
37
37
 
38
- ## Error Handling and Logging
38
+ ## 🔍 Error Handling and Logging
39
39
 
40
40
  Microfed Core provides a robust error handling and logging system to ensure that any issues or errors are properly reported and logged. This system includes:
41
41
 
@@ -45,4 +45,4 @@ Microfed Core provides a robust error handling and logging system to ensure that
45
45
 
46
46
  ---
47
47
 
48
- Microfed Core is the backbone of the Microfed framework, providing seamless integration with ActivityPub and managing communication between its components. By handling the core functionality, Microfed Core allows developers to focus on building innovative and decentralized applications that leverage the power of microservices and the fediverse.
48
+ Microfed Core is the backbone of the Microfed framework, providing seamless integration with ActivityPub and managing communication between its components. By handling the core functionality, Microfed Core allows developers to focus on building innovative and decentralized applications that leverage the power of microservices and the fediverse.
package/DESIGN.md CHANGED
@@ -17,18 +17,20 @@ This document provides a high-level overview of Microfed's design, outlining the
17
17
 
18
18
  ## Table of Contents
19
19
 
20
- - [Microfed Core](#microfed-core)
21
- - [Profile Module](#profile-module)
22
- - [Inbox Module](#inbox-module)
23
- - [Outbox Module](#outbox-module)
24
- - [Authentication Module](#authentication-module)
25
- - [Utility Functions](#utility-functions)
20
+ - [🧩 Microfed Core](#microfed-core)
21
+ - [👥 Profile Module](#profile-module)
22
+ - [📥 Inbox Module](#inbox-module)
23
+ - [📤 Outbox Module](#outbox-module)
24
+ - [🔐 Authentication Module](#authentication-module)
25
+ - [🛠️ Utility Functions](#utility-functions)
26
26
 
27
- ## Microfed Core
27
+ ## 🧩 Microfed Core
28
28
 
29
29
  The Microfed Core serves as the central module that manages communication between different components and provides utility functions.
30
30
 
31
- ## Profile Module
31
+ [Core Design](./CORE.md)
32
+
33
+ ## 👥 Profile Module
32
34
 
33
35
  The Profile Module consists of the following features:
34
36
 
@@ -39,7 +41,7 @@ The Profile Module consists of the following features:
39
41
 
40
42
  [Profile Design](./PROFILE.md)
41
43
 
42
- ## Inbox Module
44
+ ## 📥 Inbox Module
43
45
 
44
46
  The Inbox Module is designed to offer the following functionality:
45
47
 
@@ -47,7 +49,9 @@ The Inbox Module is designed to offer the following functionality:
47
49
  - Methods for filtering messages based on user preferences.
48
50
  - Support for Activity Pub JSON compatibility and message signatures.
49
51
 
50
- ## Outbox Module
52
+ [Inbox Design](./INBOX.md)
53
+
54
+ ## 📤 Outbox Module
51
55
 
52
56
  The Outbox Module includes the following capabilities:
53
57
 
@@ -55,7 +59,9 @@ The Outbox Module includes the following capabilities:
55
59
  - Methods for storing private keys and signing outgoing messages.
56
60
  - Support for routing messages to appropriate endpoints.
57
61
 
58
- ## Authentication Module
62
+ [Outbox Design](./OUTBOX.md)
63
+
64
+ ## 🔐 Authentication Module
59
65
 
60
66
  The Authentication Module provides a flexible and extensible authentication system:
61
67
 
@@ -64,10 +70,14 @@ The Authentication Module provides a flexible and extensible authentication syst
64
70
  - Support for delegated authentication (e.g., OAuth, OIDC) if needed.
65
71
  - Integration with enterprise authentication systems.
66
72
 
67
- ## Utility Functions
73
+ [Authentication Design](./AUTHENTICATION.md)
74
+
75
+ ## 🛠️ Utility Functions
68
76
 
69
77
  The Utility Functions module offers various general-purpose functions, such as data validation, conversion, and formatting.
70
78
 
79
+ [Utility Design](./UTILS.md)
80
+
71
81
  ---
72
82
 
73
- With its modular and extensible design, Microfed provides a robust and flexible foundation for developing decentralized applications that harness the power of microservices and the fediverse. By combining these technologies, Microfed empowers developers to create innovative, secure, and scalable applications for the decentralized web.
83
+ With its modular and extensible design, Microfed provides a robust and flexible foundation for developing decentralized applications that harness the power of microservices and the fediverse. By combining these technologies, Microfed empowers developers to create innovative, secure, and scalable applications for the decentralized web.
package/README.md CHANGED
@@ -63,14 +63,20 @@ The Profile can be self-hosted, or part of a multi user service. It should be a
63
63
 
64
64
  The Inbox should be a place where people can send messages in JSON. The micro service can filter out messages based on user preferences. The message format should be as far as possible compatible with Activity Pub JSON. Signatures can be used to verify the authenticity of a message.
65
65
 
66
+ [Inbox Design](./INBOX.md)
67
+
66
68
  # 📤 Outbox
67
69
 
68
70
  The Outbox is a service that allows messages to be sent to other inboxes. It should also have to ability to store a private key on behalf of a user, in order to sign outgoing messages. It should be able to route messages to the right endpoints.
69
71
 
72
+ [Outbox Design](./OUTBOX.md)
73
+
70
74
  # 🔐 Authentication
71
75
 
72
76
  Initially, strong authentication via PKI will be supported. Delegated authentication, such as OAuth and OIDC may be considered desirable. A loosely coupled authentication suite will allow the user to add different authentication modules. This could also work with enterprise authentication.
73
77
 
78
+ [Authentication Design](./AUTHENTICATION.md)
79
+
74
80
  # ⚖️ License
75
81
 
76
82
  - MIT
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "microfed",
3
- "version": "0.0.8",
3
+ "version": "0.0.10",
4
4
  "description": "microfed",
5
5
  "main": "index.js",
6
6
  "scripts": {