Super lovely.
Scenarios store to the same `smol-store` as everyone else with a conventional name. Show button auto-enables when the record is found, and look at this lovely thing :)
SmolChalk :: have a play
Super lovely.
Scenarios store to the same `smol-store` as everyone else with a conventional name. Show button auto-enables when the record is found, and look at this lovely thing :)
SmolChalk :: have a play
YAML is /almost/ the perfect programming language. Just needs a bit of indirection
!ref <reference> in a raw data file is preprocessed to { $ref: "<reference>" } when into storage (our example cheats since the embedded fences don't yet use the same preprocessor). Fetch using `smol-node` automatically resolves the references against the source data, in this case the type dictionary.
#yamlislove #yamlislife #smolchalkisfriendy #computingforlittles
How fun is that? Put the scenarios right on the page that describes the component. Now all we need is a results dialog and we've got `smol-toast` the Musical (or at least a component page with reference, examples, the scenarios that verify it in its regression suite as live tests and a REPL to poke at it)
SmolChalk :: if SmallTalk and Erlang had a baby and it was web components for kids and it composed itself out of markdown and YAML
Just a bunch of little things that mostly don't suck all doing their best to give your children a place to learn whatever you can think of, and letting them explore and learn from the environment they're learning in while they do so.
#humantools #computingforlittles #smoldata #smolchalk #wanderland
How to seriously over-engineer a typing tutor for a five year old.
[I love it]
Aww... smol-button
Look how helpful smol-button is. Just a general purpose event emitter.
Now... all I need is a general purpose stuff doer to wire up to a general purpose stuff starter. Where can I find one of those I wander?
Oh right
#ruby #devops #computingforlittles #platformengineering #humantools
If you can describe your architecture as just a bunch of little things that mostly don't suck, then it probably works just fine
smol-settings[-typography|sound] :: settings w/ optional submodules
smol-letter-canvas :: themeable textarea with output character stream
smol-emoji-picker :: kids like emojis
smol-pattern-matcher :: looks for character patterns in streams, emits emojis
smol-discoveries :: card list for matched patterns
smol-speak :: did you know your brower sounds like simon?
smol-celebrate :: cellies for littles
smol-help :: for mom and teacher
smol-page :: hold a thing
smol-footer :: modeline for curious minds
Once you break everything down to components and messages, the rest is just wiring :: events and streams are the two envelope primitives with scalars, lists and typed objects inside
- Typography settings events are consumed by the text panel and the local-store for persistence. The local-store emits on load to hydrate. Same event, different source, full lifecycle
- Character stream events are emitted on key-up and consumed by a compute only pattern-matcher, it's emissions are consumed by the text panel for highlighting and by the card panel for a pictorial update of the same event
- The same pattern-matcher events are captured by a wee toast which filters and displays only the first instance of each word
etc
Neat
That's one way to to it. Read/write keys directly to the smol-data store and they immediately take effect, captured in the user-overlay and applied wherever the site cares about it.
Now to hide a little button somewhere that pops a form. Maybe challenges unlock different keys.
Are kids motivated by unlocking customizability of their own learning platform or is that just something I'm projecting?
So... what happened was I sat down to update the design language and then stuff gets a little hazy and before you know these things showed up
We're calling it `SmolChalk` :: a blessingful crossing of SmallTalk and computing for littles where everything is a component, they speak in messages and they look like chalk drawings on the sidewalk
Data driven site design, including a schema for the data model and the events. I want the whole thing to be inspectable by curious minds. The core site config is read-only, everyone gets their own append-only log on top for edits.
iPads are for consumption. Computers are for learning. SmolChalk should be fun