• Stars
    star
    134
  • Rank 271,059 (Top 6 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Tools for the reMarkable paper tablet

reMarkable-tools

Tools for the reMarkable paper tablet that I or others develop.

Donate

Feel free to donate to me through paypal.me/pierrefenoll1
Make sure to describe what I should be working on :)

Whiteboard HyperCard ~ live collaboration/drawing/chat/whiteboarding

Easiest installation through toltec's opkg

opkg update && opkg install whiteboard-hypercard

Self-hosting whiteboard-server / hosting private rooms

On a machine with IP 1.2.3.4 reachable over the Internet, run:

git clone https://github.com/fenollp/reMarkable-tools.git && cd reMarkable-tools && make debug

Now on your tablet, run the whiteboard Rust application with --host, as in:

export WHITEBOARD_WEBHOST=http://1.2.3.4:10001/screenshare
.../whiteboard --host=http://1.2.3.4:10000

Finally, docker compose should show you something akin to:

nats_1        | [1] 2020/11/03 14:26:24.435123 [DBG] 172.20.0.3:60308 - cid:1 - Client Ping Timer
nats_1        | [1] 2020/11/03 14:26:24.435145 [DBG] 172.20.0.3:60308 - cid:1 - Delaying PING due to remote ping 2s ago
nats_1        | [1] 2020/11/03 14:28:22.270230 [TRC] 172.20.0.3:60308 - cid:1 - <<- [PING]
nats_1        | [1] 2020/11/03 14:28:22.270306 [TRC] 172.20.0.3:60308 - cid:1 - ->> [PONG]
nats_1        | [1] 2020/11/03 14:28:24.435532 [DBG] 172.20.0.3:60308 - cid:1 - Client Ping Timer
nats_1        | [1] 2020/11/03 14:28:24.435701 [DBG] 172.20.0.3:60308 - cid:1 - Delaying PING due to remote ping 2s ago
wb            | 2020-11-03T14:28:41.402Z	INFO	hypercard_whiteboard/rpc_recv_events.go:32	handling RecvEvent	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584"}
wb            | 2020-11-03T14:28:41.402Z	DEBUG	hypercard_whiteboard/rpc_recv_events.go:46	listening for events	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "bk": "hc.wb.1.evt.living-room.*.*"}
wb            | 2020-11-03T14:28:41.402Z	DEBUG	hypercard_whiteboard/nats.go:44	encoding	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "event": {"created_at":1604413721402953665,"by_user_id":"c91dd90e-77b8-477c-94f7-a25ff0e5b584","in_room_id":"living-room","Event":{"UserJoinedTheRoom":true}}}
wb            | 2020-11-03T14:28:41.403Z	DEBUG	hypercard_whiteboard/nats.go:50	encoded	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "bytes": 63, "in": "160.551µs"}
wb            | 2020-11-03T14:28:41.403Z	DEBUG	hypercard_whiteboard/nats.go:56	publishing	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "rk": "hc.wb.1.evt.living-room.c91dd90e-77b8-477c-94f7-a25ff0e5b584.userjoinedroom"}
wb            | 2020-11-03T14:28:41.403Z	DEBUG	hypercard_whiteboard/nats.go:62	published	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "rk": "hc.wb.1.evt.living-room.c91dd90e-77b8-477c-94f7-a25ff0e5b584.userjoinedroom", "in": "6.926µs"}
nats_1        | [1] 2020/11/03 14:28:41.403146 [TRC] 172.20.0.3:60308 - cid:1 - <<- [SUB hc.wb.1.evt.living-room.*.*  1]
nats_1        | [1] 2020/11/03 14:28:41.403446 [TRC] 172.20.0.3:60308 - cid:1 - <<- [PUB hc.wb.1.evt.living-room.c91dd90e-77b8-477c-94f7-a25ff0e5b584.userjoinedroom 63]
nats_1        | [1] 2020/11/03 14:28:41.403472 [TRC] 172.20.0.3:60308 - cid:1 - <<- MSG_PAYLOAD: ["\b\xc1\x9f\xf1\x87\xf7\xb8\x81\xa2\x16\x12$c91dd90e-77b8-477c-94f7-a25ff0e5b584\x1a\vliving-room0\x01"]
nats_1        | [1] 2020/11/03 14:28:41.403491 [TRC] 172.20.0.3:60308 - cid:1 - ->> [MSG hc.wb.1.evt.living-room.c91dd90e-77b8-477c-94f7-a25ff0e5b584.userjoinedroom 1 63]
wb            | 2020-11-03T14:28:41.404Z	DEBUG	hypercard_whiteboard/rpc_recv_events.go:100	sent count event	{"": "c91dd90e-77b8-477c-94f7-a25ff0e5b584", "in": "73.035µs"}

koreader

find ~ -name '*.sdr'

Tools

Attention

Updates wipe ~

root partition is small

remarkable: ~/ df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root               223.0M    175.0M     32.3M  84% /

so routinely run

journalctl --vacuum-size=2M

HyperCards

Visible rectangular elements that can be drawn on/dragged/zoomed/rotated/connected/duplicated.

  • tools / modifiers are square cards snapping to the edges of the screen
    • henceforth mentioned as [ToolX] for tool X
    • using them / modifying them by a press held while using the pencil * similar to Minecraft's mix & match: action through combination
    • a [?] tool always hangs in a corner, pressing = shows description text (like crosswords)
    • modification (reorganization / addition / removal) through drawing and pressing
    • tools icons can be drawn too / loaded from a font / loaded from a builtin set of images
    • pen & fingers are different devices for different purposes
      • => drag/move and pinch/zoom (think Apple trackpad gestures) not a pen thing
  • whiteboard card
    • rectangle that can be moved by dragging on the edges
    • zoom/rotation by dragging in the area (not the edges)
      • MIGHT: zooming hard moves to another user's view? --> canvas is a window/camera view that can move in 2+1D
    • some bi-directional communication with a networked service
      • user joins a room and shares their live drawings
      • It is possible to combine a [Selection]-ed group of strokes and [Digitize] to ask service for translation
  • [Digitize]
    • connects to a distant machine or achieves its AI inference on-tablet
    • takes a few strokes in and outputs text+area / shape+area
  • [Selection]
    • draw approximately on one or more strokes
    • creates a group that can be used with other modifiers
    • press another tool before unpressing this one to pass the group to the other tool
  • [Image]
    • add an image to a layer
      • should be able to dim that layer
    • select the tool's image with [Setter] > [Image] --> opens image picker
    • image should be draggable + zoomable (= two-finger gesture on iOS Reddit app's image viewer)
      • should be able to draw on top of said image

marauder

More Repositories

1

fancyflow

Experimental library to bring pipe and maybe operator equivalents in Erlang
Erlang
92
star
2

erlscp

A supercompiler pass for Erlang
Erlang
91
star
3

erlang-formatter

Format Erlang code using Emacs' erlang-mode
Emacs Lisp
45
star
4

erl-mk

Build Erlang apps/deps faster
Makefile
20
star
5

otp_vsn

Macros defined per Erlang/OTP version so you don't have to.
Erlang
17
star
6

bazel_upgradable

Macros for auto-upgradable Bazel build dependencies to use with --experimental_resolved_file_instead_of_workspace
Starlark
11
star
7

erlang-dot

An Erlang DOT (graph description language) library
Erlang
6
star
8

coverage_targeted_property_testing

Use code coverage as a "utility value" for PropEr (quickcheck) to maximize
Erlang
6
star
9

erlang-ropes

https://en.wikipedia.org/wiki/Rope_(data_structure)
Erlang
4
star
10

jit-beam

Full-Erlang JIT for BEAM languages
Erlang
4
star
11

quickcheck_test_web_service_statem

Use QuickCheck/PropEr to test a web service, with statem
Erlang
2
star
12

elixir-phoenix-request_timeout

Plug that kills Phoenix controllers once they take too long
Elixir
2
star
13

KGB_archiver

C++
2
star
14

chaptrs

Split a video into clips
Python
2
star
15

dockerhost-tools--yt-dlp

Shall exist until https://github.com/moby/buildkit/pull/2116 is in docker-ce
Dockerfile
2
star
16

buildxargs

`xargs` for BuildKit with `docker buildx bake`
Rust
2
star
17

fenollp.github.io

HTML
2
star
18

vlc-sponsor-skip

VLC plugin: SponsorBlock, skip intro, adapt playback speed automatically
Lua
2
star
19

mobydick.pics

http://mobydick.pics/
1
star
20

repro3467

https://github.com/diesel-rs/diesel/issues/3467
PLpgSQL
1
star
21

rabbitmq_prometheus_grafana_monitoring

Trying base setups of various RabbitMQ stats exporters
1
star
22

fmtd

Universal formatter command
Go
1
star
23

dockerhost-tools

Tools to use when `docker build`ing things with `DOCKER_HOST`
Dockerfile
1
star
24

no-alloc

Proc macro to ensure your Rust functions do not allocate memory
1
star
25

data.shape_predictor_68_face_landmarks

1
star