Tableskin gallery

Sample tables, each in the skin tableskin.py picked for it. The menu swaps the skin on the same markup. Skins and the table-model idea are adapted from CSSV by Rodrigo Paiva (MIT).

transactions.csv

Picked ledger: money or signed amounts over dates read as a ledger.

September transactions
dateiddescriptioncategoryamountbalance
2026-09-30TX-4060Noodle Bardining-26.104090.22
2026-09-28TX-4059City Bikestransport-5.484116.32
2026-09-26TX-4058Salaryincome3200.004121.80
2026-09-25TX-4057Cinemaleisure-11.89921.80
2026-09-24TX-4056Corner Marketgroceries-11.74933.69
2026-09-23TX-4055Refund: headphonesincome89.00945.43
2026-09-22TX-4054Corner Marketgroceries-40.14856.43
2026-09-20TX-4053Electric companyutilities-72.30896.57
2026-09-18TX-4052Noodle Bardining-18.60968.87
2026-09-15TX-4051Renthousing-1200.00987.47

invoice.csv

Picked paper: money with total rows reads as an invoice or statement.

Invoice 2026-114
skudescriptionqtyunit priceamount
0042Brand workshop Two half-day sessions, on site2$1,200.00$2,400.00
0108Logo system Primary mark, monogram, usage guide1$3,800.00$3,800.00
0213Page templates Twelve layouts for the website12$540.00$6,480.00
0315Illustration set Twenty-four spot drawings24$95.00$2,280.00
0400Rush delivery Waived for repeat clients1$0.00$0.00
Subtotal$14,960.00
Sales tax 7%$1,047.20
Total due$16,007.20

departures.csv

Picked splitflap: a short list of short values with times or statuses fits a departures board.

Departures
timeflightdestinationgatestatus
08:15LH 441FrankfurtB07On time
08:40DL 92AtlantaA12Boarding
09:05BA 217LondonC03Delayed
09:20AF 1683ParisB11On time
09:45UA 908DenverA04Cancelled
10:10KL 644AmsterdamC09On time
10:35AA 2210CharlotteA19Delayed

sprint.csv

Picked board: a status column with 4 values and long titles make a board.

Sprint 15
keysummarystatusassigneepointslabels
WEB-214Checkout fails when the cart has more than 99 itemsIn ProgressAna Sousa3checkout
WEB-209Add dark mode to the account pagesTo Do5design
WEB-205Move image uploads to the new storage bucketIn ReviewDev Patel3infra
WEB-211Password reset email goes to spamTo Do2email
WEB-198Search results pageDoneBen Ito8frontend
WEB-207Rate-limit the login endpointIn ProgressDev Patel2security
WEB-212Onboarding checklist for new teamsTo Do8frontend
WEB-203Footer links point to the old help centerDoneCaro Diaz1content
WEB-200Export invoices as PDFIn ReviewAna Sousa5billing
WEB-196Upgrade the payment SDKDoneBen Ito3billing

chat.csv

Picked chat: a person column, a long-text column and timestamps read as a conversation.

datetimesendermessage
2026-10-0408:02Ana created group "Saturday hike"
2026-10-0408:03AnaMorning! The trail is dry, sunny until 3
2026-10-0408:03AnaMeet at the station at 9:30?
2026-10-0408:05BenI'm in
2026-10-0408:06SamSame. Who's bringing what?
2026-10-0408:07ChloéI can do sandwiches cheese, ham, one vegan
2026-10-0408:10SamWater and the first-aid kit, then
2026-10-0408:10SamAnd snacks, obviously
2026-10-0408:13BenRunning 10 min late, start without me and I'll catch up at the bridge
2026-10-0408:14Chloé"Start without me" ha. We'll wait
2026-10-0408:15SamSee you all at 9:30

ports.csv

Picked clean heat: 4 of 7 columns are measures, so shade them as a heat map.

Fabric A port utilization
switchportspeedstatetx util %rx util %crc errors
fab-a-01032GOnline71.264.80
fab-a-01132GOnline88.591.30
fab-a-01232GOnline12.49.90
fab-a-01316GDegraded44.047.1312
fab-a-01432GOffline0.00.00
fab-a-01532GOnline35.652.02
fab-a-02064GOnline22.118.70
fab-a-02164GOnline95.093.40
fab-a-02232GOnline5.37.70
fab-a-02332GOnline61.958.214

cities.csv

Picked clean bars: a few measure columns get in-cell bars.

Largest cities
citycountrypopulation (millions)area (km2)
TokyoJapan37.18231
DelhiIndia33.82344
ShanghaiChina29.94069
DhakaBangladesh23.9360
São PauloBrazil22.83043
CairoEgypt22.62010
Mexico CityMexico22.52530