feat: fix buiild

This commit is contained in:
2026-04-03 10:40:14 +02:00
parent 82cb4a9786
commit 576af715bd
4 changed files with 34 additions and 14 deletions

View File

@@ -61,11 +61,37 @@ python -m uframe deploy page.uf # compile + copy to NomadNet pages
### Docker ### Docker
```bash ```bash
cd frontend && npm install && npm run build && cd .. # 1. Build the frontend
docker compose up --build cd frontend
npm install
npm run build
cd ..
# 2. Build and start all services
docker compose up --build -d
``` ```
App at http://localhost:8080. Add Tailscale: `tailscale serve --bg https+insecure://localhost:8080` This starts two containers:
- **micronomicon** — the web IDE + API on <http://localhost:8080>
- **nomadnet** — NomadNet node serving your published `.mu` pages
Pages published through the IDE are written to a shared volume that NomadNet reads from. The Docker socket is mounted read-only so the IDE can restart NomadNet when needed.
To follow logs: `docker compose logs -f`
To stop: `docker compose down`
To expose over Tailscale: `tailscale serve --bg https+insecure://localhost:8080`
#### Deploy a page via CLI (into the running stack)
```bash
cd backend && source .venv/bin/activate
python -m uframe deploy page.uf --dest "$(docker volume inspect micronomicon_pages -f '{{.Mountpoint}}')"
```
Or use the web IDE at <http://localhost:8080> and click **Publish**.
--- ---
@@ -187,7 +213,7 @@ banner "My Node" "Mesh Network" # use library component
```bash ```bash
cd backend && source .venv/bin/activate cd backend && source .venv/bin/activate
python -m pytest uframe/tests/ -v # 42 tests python -m pytest uframe/tests/ -v # 91 tests
``` ```
--- ---

View File

@@ -12,10 +12,10 @@ export default function BacklinkIndicator({ backlinks }: Props) {
return ( return (
<Popover> <Popover>
<PopoverTrigger asChild> <PopoverTrigger
<Button variant="ghost" size="sm" className="text-xs text-muted-foreground h-7 px-2"> render={<Button variant="ghost" size="sm" className="text-xs text-muted-foreground h-7 px-2" />}
{backlinks.length} backlink{backlinks.length !== 1 ? "s" : ""} >
</Button> {backlinks.length} backlink{backlinks.length !== 1 ? "s" : ""}
</PopoverTrigger> </PopoverTrigger>
<PopoverContent className="w-64 p-2" align="end"> <PopoverContent className="w-64 p-2" align="end">
<p className="text-xs font-semibold text-muted-foreground mb-2 px-1"> <p className="text-xs font-semibold text-muted-foreground mb-2 px-1">

View File

@@ -189,11 +189,6 @@ function renderFormTag(inner: string): string {
return `<span style="color:#d4a8f8;border:1px solid rgba(212,168,248,0.3);border-radius:3px;padding:0 4px">${esc(placeholder || "...")}</span>`; return `<span style="color:#d4a8f8;border:1px solid rgba(212,168,248,0.3);border-radius:3px;padding:0 4px">${esc(placeholder || "...")}</span>`;
} }
/** Render a form element line as a styled badge. */
function renderForm(line: string): string {
const inner = escapeHtml(line);
return `<span style="color:#d4a8f8;background:rgba(212,168,248,0.08);border:1px solid rgba(212,168,248,0.3);border-radius:3px;padding:0 4px;font-size:0.9em">${inner}</span>`;
}
export function renderMicron(source: string): string { export function renderMicron(source: string): string {
const lines = source.split("\n"); const lines = source.split("\n");

View File

@@ -52,7 +52,6 @@ export default function EditorView() {
override: [uframeCommandSource, uframeValueHintSource], override: [uframeCommandSource, uframeValueHintSource],
icons: false, icons: false,
activateOnTyping: true, activateOnTyping: true,
maxOptions: 50,
}), }),
keywordHoverTooltip, keywordHoverTooltip,
], ],