Commit Graph
700 Commits
Author SHA1 Message Date
Zef Hemel 5a61423a85 Update the docker image to be built on Alpine 2025-09-23 15:27:10 +02:00
Zef Hemel 44a77ed5da Push website content as a docker image 2025-09-22 09:14:50 +02:00
Zef Hemel aa8ac7a0a0 Add PDF plug to list of third-party plugs 2025-09-22 09:00:16 +02:00
Zef Hemel fdd8899b33 Fix SB_URL_PREFIX handling, added SB_LOG_PUSH to ask clients to push
client logs to the server
2025-09-19 16:10:14 +02:00
Zef HemelandGitHub a524c64884 Go backend (#1555)
* Replaces old Deno server with a Go implementation
* Restructured the code base accordingly
2025-09-19 13:23:20 +02:00
Andy CostanzaandGitHub ff2cb27a1b fix #1538 and all wikilinks in a frontmatter block are now navigable (#1552)
* feat: Render external links inside frontmatter code as clickable anchors
* fix: Enable alt-clicking inside frontmatter links #1538
* feat: make Internal links (WikiLinks [[...]])  navigable in a frontmatter block
* feat: add success-admonition and danger-admonition
2025-09-19 08:21:42 +02:00
LogeshandGitHub 83256627b4 Add excalidraw plug for diagram rendering (#1543) 2025-09-14 14:59:41 +02:00
Zef Hemel e3f1641f48 Added some notes on service worker behavior 2025-09-13 17:48:43 +02:00
Zef Hemel 7ccf07dfba Add the PikaPods option to Install.md 2025-09-12 17:04:32 +02:00
Zef Hemel deaba44513 Update changelog with latest features and improvements 2025-09-12 15:06:59 +02:00
Zef HemelandGitHub dc2987a3f9 Sync engine rearchitecture (#1516)
* Don't require auth for .ping
* Finally introducing loggers
* Remove file list caching from disk_space_primitives
I don't think this is required anymore with the sync model
* Simplification of space primitives and more tests
* More reliable online status
* Add .zed settings
* Remove selfUpdate argument from `writeFile` no longer used
- Add `sync` config schema and document sync options
- Move sync config handling to client boot logic
- Move BootConfig type to ui_types.ts
- Remove sync env vars from server
- Update documentation for sync and architecture
* Improve sync logic and proxy routing for full sync state
* Add BoxProxy for late-bound client and improve Lua boot
- Add isMobile syscall for editor
* Add concurrency to sync process and log indexing duration
* Better service worker lifecycle management
2025-09-12 14:43:57 +02:00
LogeshandGitHub ec873c25ca Add plantuml and drawio plugs for diagram rendering (#1535) 2025-09-12 08:13:21 +02:00
Alex DobinandGitHub 956b7a947f document editor.getCurrentLine() function (#1531) 2025-09-11 08:31:44 +02:00
aphymiandGitHub 6914d4bc31 Add command to toggle markdown syntax rendering (#1502)
* feat: add command to toggle clean mode

* refactor: simplify wiki_link no-clean-mode logic

* refactor: use more sensible clean-mode toggling logic

* fix: fix clean-mode-off not lasting across reloads

* refactor: move var declaration to where it's used

* feat: add root data attribute for clean mode state

This allows writing styles based on whether clean mode is currently
enabled or disabled.

* feat: reset clean-mode-off syntax color

* feat: un-hide lua directives in clean-mode-off

* style: format changes from 60379b1

* feat: rename 'Toggle Clean Mode' command

'Toggle Clean Mode' is now 'Toggle Markdown Syntax Rendering', and along
with the change in semantics, now defaults to false. The associated
variables have also been renamed.

* docs: add MD syntax rendering command to docs
2025-09-10 08:28:21 +02:00
MrMugameandGitHub 4706be29e6 Update document editors (#1526)
* Remove old document editor skeleton

* Adjust image viewer to new api

* Add more documentation
2025-09-10 08:26:00 +02:00
Zef HemelandGitHub 7a4affa285 Add Mermaid plug for diagram rendering 2025-09-04 14:33:51 +02:00
Zef Hemel bdfc607697 Add graphview to website 2025-09-03 09:09:03 +02:00
Zef Hemel b85b090c30 Adding back slashCommand with different casing... 2025-09-03 08:15:42 +02:00
Zef Hemel 32ac93cd34 Delete old slashcommand to be replace 2025-09-03 08:15:26 +02:00
Zef Hemel a7b284938f Revert back slashcommand to slashCommand 2025-09-03 08:14:39 +02:00
Zef HemelandGitHub 554744c794 Update slashcommand.md 2025-09-02 20:34:05 +02:00
Zef HemelandGitHub 4ebea149dc Update slashcommand.md 2025-09-02 20:33:45 +02:00
Zef Hemel 5eafd13587 Add github and sponsorship to website's top bar 2025-08-29 16:27:06 +02:00
Zef Hemel 1ba6938f96 Website content updates 2025-08-29 15:21:01 +02:00
Zef Hemel 01f85f82ad Content updates for v2 release 2025-08-29 12:07:12 +02:00
Zef Hemel 0eb191e43b Fix server-side rendering and CHANGELOG link 2025-08-27 14:55:58 +02:00
Zef Hemel 40d298b0e2 Added automatic script running from CONTAINER_BOOT page
This replaces the old SB_APT_PACKAGES feature (which is still there, just deprecated for now).
2025-08-27 14:43:10 +02:00
Zef Hemel c74e878897 Shell command whitelisting and stdin support 2025-08-27 11:14:21 +02:00
Zef HemelandGitHub fe5dc80a14 Expose file system API on /.fs instead of root (#1507)
Fixes #1506
2025-08-27 09:58:11 +02:00
aa0b95b31d The one about refs (#1496)
* [Major] Introduce a new `Ref` and `Path` type

This introduces a new `Ref` and `Path` type, which try to be as lightweight and rigorous as possible. More description in the PR

* [Minor] Updated Syntax

* [Minor] Updated Type

* [Minor] Renamed file

* [Minor] Updated type

* [Minor] Updated Syntax

* [Major] Rename css classes for wiki links

Previously all the parts of a wiki link were tagged with `sb-wiki-link-page`. This didn't make a whole lot of sense. Also the tag `sb-wiki-link` was could never render, because of the way `HighlightStyle` works. Now every part of a wiki link will be tagged with `sb-wiki-link` (i.e. the link, the alias, the dimensions). Invalid and missing links will be styled separately in a later commit.

* [Minor] Adjust to new API

* [Minor] Small changes

* [Minor] Function and file renames

* [Major] Syscall adjusments

Change behavior of `getCurrentPath` to actually return what's now considered a `Path`. `getCurrentPage(Meta)` now also correctly returns for documents. We could consider a rename to get rid of the `page` association

* [Major] Rework `Client`

Mostly minor adjustments for the new API. Some major changes in `navigateWithinPage` and some unecessary checks removed now

* [Major] Errors on navigate

This now throws an error when the user tries to navigate to a link that is invalid

* [Major] Minor adjustments and remove some old bulk

This does the typicall adjustments to the new API. A thing to consider is that invalid links aren't indexed. Also removed old code about template and query stuff. And reused a regex instead of copy pasting it.

* [Minor] Cleanup editor ui

* [Minor] Adjust to new API

* [Minor] Adjust to new API and reduce ugly regex

* [Minor] New API

* [Minor] Rework link cm plugin

* [Major] Rework wiki links

A lot of code cleanup, reworked for new APIs and also introduces "invalid links"

* [Minor] Part of the editor ui rework

* [Major] Adjust to new API

This also removes the `looksLikePathWithExtension` check. I don't think it was necessary.

* [Minor] PArt of editor ui rewrite

* [Minor] Adjust to new API

* [Major] Adjust renderer to new API

Invalid links now link to `#`

* [Major] Rewrite navigator

This still needs major rework, currently in a "got it working" state

* [Minor] Adjust file name

* [Minor] Mistake during rebase

* [Minor] Navigate to end of header

* [Minor] Remove `tweakEditorDOM` and use proper CM extensions

* [Major] Heavily clean up the navigation code

* [Minor] Make `PageNavigator` closable again

* [Minor] Small fixes to reduce errors bubbling up

* [Minor] Show error message if navigate fails

* [Major] Remove legacy `navigate({ kind = ` syntax

This removes the old navigation syntax. It's still supported but the user will be warned then using it. I also added some validation to editor.navigate for user provided refs.

* [Minor] Make notifications errors

* [Minor] Don't fail if header isn't found

* [Minor] Typo

* [Major] Remove cleanPageRef

* [Minor] Small bug

* [Minor] Align behavior between render and editor

* [Major] Remove `PageRef`. Pretty sure it's obsolete

* [Major] Remove pos from header as it's an invalid ref

* [Minor] Align with original behavior

* [Minor] Get tests working again

* [Minor] check that indexPage is valid

* [Major] Rewrite `resolve.ts` file

* [Minor] More tests, more fixes

* [Minor] Don't just append .md this is weird

* [Minor] More edge cases

* [Minor] Version bumping hono somehow fixes the `/` case

* [Minor] Smaller TODOs

* [Major] We can be a littler looser on the restrictions

* [Major] Change header indexing, to index with pos

* [Minor] More fixes for headers

* [Minor] Rename for clarity

* [Minor] Change more regexes to named groups

* [Major] Inline content rewrite

* [Minor] Fix TODO

* [Minor] Bump index version

* [Major] New Space Primitive to check paths

* [Minor] Fix #1214

* [Minor] Fix #1169

* [Minor] Remove TODO

This check is probably not needed anymore. Unsure. May look into it later

* [Minor] small bug

* [Minor] Not a good rebase without me needing to fix it afterwards

* [Minor] Improve fallback for file upload

* [Minor] Some fixes on the for resolving

* [Minor] Removed doubled test case

* [Minor] Resolve #860

* [Minor] Turn flash notification into an error

* [Minor] Change handling of `.` paths

* [Minor] Show empty URL for index page

* [Minor] Push correct ref to history

* [Major] Capture mini editor events in capture phase

This fixes the issue were when pressing arrowup or arrowdown changed the cursor position inside the editor

* [Major] Add prefix to `FilterList`

This now fixes issues were if you had a prefixed page you  con't properly search for it, because the search considered the prefix as part of the name

* [Minor] A little rigor for empty headers

* [Major] Fix #1404

* [Minor] `parseInt` returns `NaN` handle that

* [Minor] Use `fileName`

* [Minor] Fix comment

* [Minor] Fixes

* [Major] disallow `foo.png.md` and `/../`, etc. cases

* [Major] Change name of conflicted pages

* [Minor] Remove unecessary check

* [Minor] Remove some split code

* [Minor] Allow deletion of invalid files

* [Minor] Bug in the regex

* [Minor] Give some possibility of fixing incorrect names

* [Minor] Tiny bug with header completion

* [Major] Docs

* [Minor] Ignore errors for navigation inside of a page

This could be a problem when SB e.g. cached a scrollTop for a page, which, because e.g. the file is now deleted, doesn't exist anymore and thus CM throws an error, when trying to navigate

* Update conflicted copy regex in Maintenance.md

---------

Co-authored-by: Zef Hemel <zef@zef.me>
2025-08-24 16:16:19 +02:00
Zef Hemel 49c968cd8c Work on v2 launch content 2025-08-21 16:19:27 +02:00
Zef Hemel 13ee4e4bca Fixes #1498
Adds various client launch options (see Troubleshooting.md)
2025-08-21 15:22:14 +02:00
Zef Hemel c16dbc12fb [Lua] Adds some useful encoding APIs for Lua (base64 encoding and decoding and such). 2025-08-20 13:39:34 +02:00
Zef Hemel a321339e9a Fixes #1495
Renames sync.* syscalls to be more accurate, specifically that this is not about scheduling a sync but actually performing the sync.
2025-08-20 10:58:30 +02:00
Zef Hemel 4bdd1d90d4 Fixes #1491 2025-08-19 16:49:21 +02:00
Zef Hemel d10c96ea3c Leftovers 2025-08-19 16:23:31 +02:00
Zef Hemel 3268b7923e Fixes #1489 2025-08-19 10:24:04 +02:00
Justin EllingwoodandGitHub 952d3264fe Update example resource regex to match literal dots (#1493) 2025-08-18 07:14:58 +02:00
Lennart OchelandGitHub db366ab238 Fix comments in Space Style.md (#1484) 2025-08-02 13:44:01 +02:00
MrMugameandGitHub 98cff15235 Make stripIndent an option for template.new (#1473) 2025-07-26 20:34:32 +02:00
Ceri DaviesandGitHub 73c03c6637 website/Install/Configuration.md: fix whitespace error in Network section (#1468) 2025-07-20 15:00:21 +02:00
DenisandGitHub 706f75e9f5 fix text in HTTP API page (#1455) 2025-07-10 08:22:13 +02:00
MrMugameandGitHub 6a7a9ebc85 Adds missing doc for syscalls (#1452)
* Add missing syscall documentation

* Add missing space lua documentation
2025-07-09 10:37:34 +02:00
Zef Hemel 90ed671c2c Fixes #1423 2025-06-18 19:24:29 +02:00
Zef Hemel d6b7e5e98a Plug development documentation updates 2025-06-18 17:06:33 +02:00
Zef Hemel 1aacfe0783 Adding deno.lock file, adding back import map support 2025-06-18 15:14:49 +02:00
Zef Hemel 9ad7ca5585 Minor website typo 2025-06-17 20:31:44 +02:00
Zef Hemel 0e7f2a351f More website content refinement 2025-06-17 19:13:56 +02:00
Zef Hemel e98b27c830 Content improvements 2025-06-17 18:46:15 +02:00
Zef Hemel 3d805383bb Cleanup: server 2025-06-17 13:48:56 +02:00