NeoBoardception
Experimental NeoBoard fork that runs other widgets inside the board
About this app
An experimental fork of Nordeck's NeoBoard whiteboard that can embed other Matrix widgets — starting with the NeoChoice poll — as elements on a board. The embedded widget talks to the board, and the board forwards its requests to your Matrix client under the board's own widget identity, so the client needs no changes.
Which widget origins may be embedded is fixed by the deployment, never by board users. Every permission an embedded widget needs is requested from your client in the board's name; the board explains in its own UI which embedded widget is asking.
Any app from this store can be placed on a board. Each one gets at most the permissions listed on its own store page, requested from your client in the board's name when you first load it. A board can also hold another board, which keeps its content in an event namespace of its own.
Presentations fly between frames like Prezi, or fade, slide and zoom like Reveal.js, with an overview of all frames, a progress bar and keyboard navigation; everyone following sees the same transitions.
This is a technology demonstration, not a supported product. Everything else behaves like NeoBoard: boards live in room events, real-time collaboration runs over WebRTC between participants.
Add to a room
Paste this into any room you may configure — Element and most clients understand /addwidget:
/addwidget https://neo-board-ception.widgets.marcade.store/0.3.0/
Rooms should pin the versioned URL above. https://neo-board-ception.widgets.marcade.store/latest/ always points at the newest release.
Name and icon in Element
/addwidget can carry only the URL: Element lists the app as “Custom” without an icon. Add the Marcade Store once per room and it gives every Marcade app pasted in there its name and icon, and tells you when an update is out.
/addwidget https://marcade.store/apps/de.minagawa.marcade-store/0.1.0/
Permissions
Capabilities this widget may request. The Marcade Player asks for your consent before granting any of them.
- Send room events of type “net.nordeck.whiteboard.document.create”
org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.create - Read room events of type “net.nordeck.whiteboard.document.create”
org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.create - Send room events of type “net.nordeck.whiteboard.document.snapshot”
org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.snapshot - Read room events of type “net.nordeck.whiteboard.document.snapshot”
org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.snapshot - Send room events of type “net.nordeck.whiteboard.document.chunk”
org.matrix.msc2762.send.event:net.nordeck.whiteboard.document.chunk - Read room events of type “net.nordeck.whiteboard.document.chunk”
org.matrix.msc2762.receive.event:net.nordeck.whiteboard.document.chunk - Send room state events of type “m.room.power_levels”
org.matrix.msc2762.send.state_event:m.room.power_levels# - Read room state events of type “m.room.power_levels”
org.matrix.msc2762.receive.state_event:m.room.power_levels# - Read room state events of type “m.room.create”
org.matrix.msc2762.receive.state_event:m.room.create - Read room state events of type “m.room.member”
org.matrix.msc2762.receive.state_event:m.room.member - Read room state events of type “m.room.name”
org.matrix.msc2762.receive.state_event:m.room.name - Send room state events of type “net.nordeck.whiteboard”
org.matrix.msc2762.send.state_event:net.nordeck.whiteboard - Read room state events of type “net.nordeck.whiteboard”
org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard - Send room state events of type “net.nordeck.whiteboard.sessions”
org.matrix.msc2762.send.state_event:net.nordeck.whiteboard.sessions - Read room state events of type “net.nordeck.whiteboard.sessions”
org.matrix.msc2762.receive.state_event:net.nordeck.whiteboard.sessions - Send to-device messages of type “net.nordeck.whiteboard.connection_signaling”
org.matrix.msc3819.send.to_device:net.nordeck.whiteboard.connection_signaling - Receive to-device messages of type “net.nordeck.whiteboard.connection_signaling”
org.matrix.msc3819.receive.to_device:net.nordeck.whiteboard.connection_signaling - Access TURN servers for real-time media
town.robin.msc3846.turn_servers - Upload files through the client
org.matrix.msc4039.upload_file - Download files and media through the client (e.g. images, avatars)
org.matrix.msc4039.download_file - Requires running inside a Matrix client
io.element.requires_client - Send room state events of type “net.nordeck.poll”
org.matrix.msc2762.send.state_event:net.nordeck.poll - Read room state events of type “net.nordeck.poll”
org.matrix.msc2762.receive.state_event:net.nordeck.poll - Send room state events of type “net.nordeck.poll.group”
org.matrix.msc2762.send.state_event:net.nordeck.poll.group - Read room state events of type “net.nordeck.poll.group”
org.matrix.msc2762.receive.state_event:net.nordeck.poll.group - Send room state events of type “net.nordeck.poll.settings”
org.matrix.msc2762.send.state_event:net.nordeck.poll.settings - Read room state events of type “net.nordeck.poll.settings”
org.matrix.msc2762.receive.state_event:net.nordeck.poll.settings - Send room events of type “net.nordeck.poll.start”
org.matrix.msc2762.send.event:net.nordeck.poll.start - Read room events of type “net.nordeck.poll.start”
org.matrix.msc2762.receive.event:net.nordeck.poll.start - Send room events of type “net.nordeck.poll.vote”
org.matrix.msc2762.send.event:net.nordeck.poll.vote - Read room events of type “net.nordeck.poll.vote”
org.matrix.msc2762.receive.event:net.nordeck.poll.vote - Read room state events of type “m.room.power_levels”
org.matrix.msc2762.receive.state_event:m.room.power_levels - Send room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.create”
org.matrix.msc2762.send.event:net.neoboardception.nested.net.nordeck.whiteboard.document.create - Read room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.create”
org.matrix.msc2762.receive.event:net.neoboardception.nested.net.nordeck.whiteboard.document.create - Send room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.snapshot”
org.matrix.msc2762.send.event:net.neoboardception.nested.net.nordeck.whiteboard.document.snapshot - Read room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.snapshot”
org.matrix.msc2762.receive.event:net.neoboardception.nested.net.nordeck.whiteboard.document.snapshot - Send room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.chunk”
org.matrix.msc2762.send.event:net.neoboardception.nested.net.nordeck.whiteboard.document.chunk - Read room events of type “net.neoboardception.nested.net.nordeck.whiteboard.document.chunk”
org.matrix.msc2762.receive.event:net.neoboardception.nested.net.nordeck.whiteboard.document.chunk - Send room state events of type “net.neoboardception.nested.net.nordeck.whiteboard”
org.matrix.msc2762.send.state_event:net.neoboardception.nested.net.nordeck.whiteboard - Read room state events of type “net.neoboardception.nested.net.nordeck.whiteboard”
org.matrix.msc2762.receive.state_event:net.neoboardception.nested.net.nordeck.whiteboard - Send to-device messages of type “net.neoboardception.nested.net.nordeck.whiteboard.connection_signaling”
org.matrix.msc3819.send.to_device:net.neoboardception.nested.net.nordeck.whiteboard.connection_signaling - Receive to-device messages of type “net.neoboardception.nested.net.nordeck.whiteboard.connection_signaling”
org.matrix.msc3819.receive.to_device:net.neoboardception.nested.net.nordeck.whiteboard.connection_signaling - Send room state events of type “net.neoboardception.nested.net.nordeck.whiteboard.sessions”
org.matrix.msc2762.send.state_event:net.neoboardception.nested.net.nordeck.whiteboard.sessions - Read room state events of type “net.neoboardception.nested.net.nordeck.whiteboard.sessions”
org.matrix.msc2762.receive.state_event:net.neoboardception.nested.net.nordeck.whiteboard.sessions - Read messages in the room (type m.text)
org.matrix.msc2762.receive.event:m.room.message#m.text - Read messages in the room (type m.notice)
org.matrix.msc2762.receive.event:m.room.message#m.notice - Send messages to the room (type m.notice)
org.matrix.msc2762.send.event:m.room.message#m.notice - Send room events of type “de.datanauten.llm_widget.presence”
org.matrix.msc2762.send.event:de.datanauten.llm_widget.presence - Read room events of type “de.datanauten.llm_widget.presence”
org.matrix.msc2762.receive.event:de.datanauten.llm_widget.presence
What's new in 0.3.0
Added: presentation transitions between frames. The camera flies from frame to frame (zooming out and back in on long jumps), or fades, slides or zooms; choose a style for the whole board or per frame, and a speed. O or Esc opens an overview of all frames, a progress bar shows where you are, and the arrow keys, Space, Page Up/Down, Home and End navigate. Everyone following the presentation sees the same transitions; people who prefer reduced motion get a fade, and late joiners land on the current frame.
Information
- Version
- 0.3.0
- Section
- Demo — Technology demonstrations built by Marcade to show what a widget can do. Not for real use — nothing is submitted anywhere.
- License
- Apache-2.0
- Author
- Yan Minagawa
- State event types
net.nordeck.whiteboard,net.nordeck.whiteboard.sessions,net.nordeck.poll,net.nordeck.poll.group,net.nordeck.poll.settings,net.neoboardception.nested.net.nordeck.whiteboard,net.neoboardception.nested.net.nordeck.whiteboard.sessions- Encrypted rooms
- Supported
- Widget ID
de.minagawa.neoboardception