Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

12,114 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

MeshWeaver

MeshWeaver is an open-source framework for building data meshes: documents, data, code, AI agents, and UI live together as addressable nodes on a mesh — versioned, collaboratively editable, vector-searchable, and processed by an actor-model message hub with a reactive Blazor UI. Memex, the portal application included in this repository, is a knowledge portal built on it where people and AI agents work on the same content.

See it live at memex.meshweaver.cloud — try the portal and read the full documentation at memex.meshweaver.cloud/Doc. The same docs are in this repo under src/MeshWeaver.Documentation/Data/.

Installation

Run from source

git clone https://github.com/Systemorph/MeshWeaver.git
cd MeshWeaver
dotnet run --project ../MeshWeaver.Plugins/src/Memex.Portal.Monolith

Opens at https://localhost:7122. Single process, no Docker — if you are unsure which setup to pick, pick this one.

For the microservices setup orchestrated with .NET Aspire (requires Docker):

dotnet run --project ../MeshWeaver.Plugins/src/Memex.AppHost

Portal at https://localhost:7202, with PostgreSQL persistence and the Aspire dashboard.

Create your own portal

dotnet new install MeshWeaver.MemexTemplate
dotnet new meshweaver-memex -n MyPortal
cd MyPortal
dotnet run --project MyPortal.Portal.Monolith

The template contains the complete Memex portal solution (Blazor Server monolith + Aspire microservices, Graph + AI integration), renamed to your project name.

Local Kubernetes stack (macOS)

A prod-like stack on Colima k3s. The default (local-build) path needs a checkout, so the CLI runs straight from it:

./deploy/homebrew/bin/memex-local up
# …or symlink it onto your PATH: ln -s "$PWD/deploy/homebrew/bin/memex-local" ~/.local/bin/memex-local

Opens at https://memex.localhost:8443. A Homebrew install (via a local tap) is also supported — see deploy/homebrew for details.

Deploy to production

Production deployment recipes live under deploy/:

These are recipes, not the configuration of any running service. Point them at your own infrastructure: copy deploy/aks/envs/example to your own environment folder and fill in your values. The files that carry real per-environment values — values.<env>.yaml, secretproviderclass.yaml — are git-ignored and never committed here.

The AKS material is deliberately written as a worked example rather than an abstraction, so parts of it name the cluster and hosts it was first proven on. Read those as illustration; they are not config you inherit, and nothing in this repo is authoritative about a live installation.

If you are self-hosting, the recipes above plus your own values are the whole story.

If you are operating an installation Systemorph runs, its per-environment configuration and the record of what runs where live in the private Systemorph/Memex repo. Start there.

CLI

The memex CLI operates any portal's mesh over the REST API — read, search, mutate, compile, and mirror nodes from the shell:

dotnet tool install -g MeshWeaver.Cli --prerelease
memex login mw_yourtoken --base-url https://memex.meshweaver.cloud
memex search "nodeType:Agent"

See src/MeshWeaver.Cli for the full command reference.

NuGet packages

The framework ships as MeshWeaver.* packages on nuget.org — use them to build your own modules, node types, and agents against the mesh.

Community

Join our Discord to discuss features, report issues, or get help. Licensed under MIT.

About

No description, website, or topics provided.

Resources

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages