Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
-
No low-effort posts. This is subjective and will largely be determined by the community member reports.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
yjs too! the trick that worked for me was just not round-tripping yjs -> json -> db on every update, canvas state lives in leveldb as raw binary (y-leveldb), the relational db is only used to seed it when the doc is empty. after that leveldb takes over. y-indexeddb on the client for offline, works pretty well actually
on your second question yeah same struggle lol. connections are loose by default, to keep it manageable folders have a single-parent rule, no reverse refs, collapsing hides the whole subtree. frames are there too but purely visual. for kanban task relationships i just moved them out of the canvas entirely and stored them in the yjs content object, otherwise the graph gets unreadable fast
auto clustering and edge bundling are still missing tbh, when the graph grows it gets messy and right now the answer is just "use folders and frames", not super satisfying
the freeform vs structure thing is something i keep going back and forth on, leaning toward soft constraints that nudge rather than block. curious what you're doing on that front!