package tiny_appkits

  1. Overview
  2. Docs
Application engines from scratch: a spreadsheet, rich text, paint, draw, CAD, editors and more

Install

dune-project
 Dependency

Authors

Maintainers

Sources

0.3.6.tar.gz
md5=7c636383d146d30ac6f2fa234a6253c8
sha512=c79f3823c5f8f57e5038eb640d487c61168b84aa07c61999d6622ef9fd0c890e2b03b4c6a7cdbbe9352a49e25dda00ac7bb14693cee8e3d7beeed251351a2af0

doc/index.html

tiny_appkits

What applications share, written from scratch for teaching: the engines under the Tiny applications, one idea per module, each interface explaining its idea. None of them draws with the Elm Playground: a document, a sheet, a drawing, a model are values, and the application draws them (the kits that draw, a File menu, compound documents, the browsers' drawing, are the Playground's, beside the apps they help). They stand on tiny_libs and tiny_languages.

Each is a library of its own, named tiny_appkits.<name> outside this repository, for example in a dune file:

(executable
 (name main)
 (libraries tiny_appkits.appkit_sheet tiny_appkits.browser_layout))

The libraries are unwrapped: their modules are used by their own names, Sheet.set, Box_layout.layout.

Documents

A document as a value, its undo and its clipboard (tiny_appkits.appkit_document):

The office

The spreadsheet's engine (tiny_appkits.appkit_sheet) and a sheet drawn in a rectangle (tiny_appkits.appkit_sheet_view); diagrams whose geometry is a sheet (tiny_appkits.appkit_diagram); text with looks, laid out on pages (tiny_appkits.appkit_richtext); a paragraph broken into lines, greedy or by Knuth and Plass (tiny_appkits.appkit_typeset); a presentation as an outline (tiny_appkits.appkit_slides); NLS's tree of statements (tiny_appkits.appkit_nls):

Pictures and drawings

MacPaint's bitmap (tiny_appkits.appkit_paint), Deluxe Paint's colour numbers and palette cycling (tiny_appkits.appkit_indexed), MacDraw's figures (tiny_appkits.appkit_draw), a 3D modeller's scene (tiny_appkits.appkit_modeler):

CAD

Sketchpad (tiny_appkits.appkit_sketch), AutoCAD (tiny_appkits.appkit_cad), SketchUp (tiny_appkits.appkit_pushpull):

Text mode

The editors as full-screen programs, vi, Emacs over its Lisp, Turbo Pascal's IDE (tiny_appkits.appkit_editor); a full-screen game (tiny_appkits.appkit_tui); the teletype's games (tiny_appkits.appkit_teletype):

Programming by blocks

Where each block lies and where a dragged stack snaps (tiny_appkits.appkit_blocks):

A web page's layout

Blocks and lines, tables, CSS's box model and flexbox, and the way back from a point to a link (tiny_appkits.browser_layout):

Time, the sky, money

iCalendar and vCard (tiny_appkits.appkit_pim), a planetarium's astronomy (tiny_appkits.appkit_astronomy), a checking account (tiny_appkits.appkit_money):