Technical Museum
All Hardware Maps ML & AI Music Social Tools Writing Apps & Games
Deciduous
Decision graph CLI for tracing how software decisions evolve
Rust SQLite HTML/JS
Deciduous Archaeology Demo
Demonstrations of decision archaeology on React and stacked git workflows
Rust React Git
Phish Explorer
Jam analytics dashboard for Phish 3.0 era
Elixir Phoenix LiveView D3.js
Local LLM on MacBook
4-bit quantization, safetensors, and Bumblebee + EMLX for Apple Silicon
Elixir Rust Python
A Bot that posts like me
Porting the posting bot to Elixir using local LLM work
Elixir Bumblebee EMLX
Receipt Printer Software Suite
A complete software suite for thermal receipt printers
Elixir Python
Role Call
TV writer overlap explorer
Elixir Phoenix LiveView
Fill Your Sky
Interactive map of 418+ Bluesky communities with 545K+ people
Elixir Phoenix LiveView D3.js
Code Mirror
A live code mirror experiment
Elixir Phoenix LiveView
Pocket Pnin
A local LLM running on my iPhone, coming to the App Store for free
Swift MLX
NYC Census Maps
Interactive census and PLUTO data visualization for New York City
Elixir Phoenix LiveView Leaflet.js
MTA Bus Tracker
Real-time MTA bus and train tracking on an interactive map
Elixir Phoenix LiveView Leaflet.js
Concert GIF Maker
Extract GIFs from concert videos with a retro Mac interface
Elixir Phoenix LiveView FFmpeg
Send a VERY direct message, to my receipt printer
A social project where friends send photos that print on my receipt printer
Elixir Phoenix LiveView
Archive TV
A real over-the-air TV channel from magnetic media archives
Elixir FFmpeg
Losselot
Neural network loss function explorer
Python
Todoinksies
A personal todo app
Elixir Phoenix LiveView
Ormery
An ORM written in Temper
Temper
Collage Maker
Upload photos and arrange them into grid collages
Elixir Phoenix LiveView
GenStage Tutorial 2025
A modern GenStage tutorial for the Elixir ecosystem
Elixir GenStage
Temper Rust Bug
Found a bug in the Temper compiler and built a demo repo
Temper Rust
300+ Years of Tree Law
A blog post that became its own LiveView application
Elixir Phoenix LiveView
HEEx in Other Languages
Experiments porting Phoenix HEEx templates to Rust, Lua, C#, Java, Python, and JS
Temper Rust Lua
Live Draft LSP
Live-stream blog drafts from Zed to Phoenix via a custom LSP
Rust Elixir Zed
Bluesky Hoover Apps
Various apps that vacuum up and process the Bluesky firehose
Elixir Phoenix LiveView
Bobby Posts Bot
A bot that posts like me, in Python
Python
Photo Booth Receipt Printer
A portable photo booth that prints on receipt paper
Python Elixir
Nathan For Us
A Nathan For You social network with video search and GIF creation
Elixir Phoenix LiveView FFmpeg
Browser History Roast MCP
An MCP server that roasts you based on your browser history
Python MCP
GenStage Tutorial (Original)
The original GenStage tutorial
Elixir GenStage
Bluesky Firehose Toys
Real-time firehose visualizations: emoji streams, jetstream comparisons, and more
Elixir Phoenix LiveView WebSocket
31 exhibits Apps & Games
MY FAV
LEICA SHOTS
Work Log — Recent Commits
+23-5 notactuallytreyanastasio/alloy/main Mar 14 11:51
38e266a Fix native test detection: install pytest, use pipefail Two bugs prevented Python test failures from being caught: 1. pytest was never installed — pip only installed the ORM packages 2. pipe to tee swallowed exit codes — tee always succeeds, masking the actual test runner exit code Fixes: add `pip install pytest` before running tests, add `set -o pipefail` to all native test steps so failures propagate. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
+118-34 notactuallytreyanastasio/alloy/main Mar 14 11:44
106f24a Run native runtime tests on generated code before publishing Test matrix now runs both `temper test -b <lang>` AND native tests (pytest, npm test, cargo test, etc.) against temper.out/<lang>/. Publish is gated on native test results. Issues auto-opened only when temper tests pass but native tests fail (codegen bug signal). Reverts notify-app-template to simple vendor push since all testing now happens in the top-level alloy repo. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
+3-167 notactuallytreyanastasio/alloy-js/main Mar 14 11:22
176770f Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+3-167 notactuallytreyanastasio/alloy-csharp/main Mar 14 11:22
03e5369 Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+3-167 notactuallytreyanastasio/alloy-py/main Mar 14 11:22
60f013b Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+3-167 notactuallytreyanastasio/alloy-java/main Mar 14 11:22
9ba52d0 Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+3-167 notactuallytreyanastasio/alloy-rust/main Mar 14 11:22
a5945bb Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+0-118 notactuallytreyanastasio/alloy-java-app/main Mar 14 11:22
fb17652 Update ORM vendor from 9ba52d01dfa2abb7eba10010b27fce231c0f5fab
+3-167 notactuallytreyanastasio/alloy-lua/main Mar 14 11:22
f6b603f Update from alloy 8e45223e9a5f78ce5ce7569f6012d77711f3f03b
+0-467 notactuallytreyanastasio/alloy-rust-app/main Mar 14 11:22
8b8c7bf Update ORM vendor from a5945bb70e40676bc5bf06312084e8c4baf7fa69
+0-23497 notactuallytreyanastasio/alloy-js-app/main Mar 14 11:22
711a98e Update ORM vendor from 176770ff7b7231be3f3842a0bfee6e620c1076a3
+61-169 notactuallytreyanastasio/alloy/main Mar 14 11:16
8e45223 Add per-backend test gating with auto-issue on failure - New test matrix job: runs `temper test -b <lang>` for all 6 backends in parallel (js, py, rust, java, lua, csharp) - Publish job gated per-backend: only pushes to lib repo if that backend's tests passed, preventing broken code from cascading - Auto-opens GitHub issue with test output on failure, comments on existing issue if one is already open - Reverts notify-app-template to simple vendor push (testing moved upstream to avoid PAT requirement for cross-repo issue creation) - Build job uploads Temper compiler + ORM source as artifacts for test matrix consumption Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
+167-3 notactuallytreyanastasio/alloy-java/main Mar 14 03:20
0add71b Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+167-3 notactuallytreyanastasio/alloy-rust/main Mar 14 03:20
3d2c2c6 Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+167-3 notactuallytreyanastasio/alloy-py/main Mar 14 03:20
bda2f0b Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+167-3 notactuallytreyanastasio/alloy-js/main Mar 14 03:20
191469e Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+167-3 notactuallytreyanastasio/alloy-lua/main Mar 14 03:20
3e8b52d Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+167-3 notactuallytreyanastasio/alloy-csharp/main Mar 14 03:20
7636cd5 Update from alloy 92aa09f508b14fcd34bbc6b93f1bd900043dd774
+23497-0 notactuallytreyanastasio/alloy-js-app/main Mar 14 03:20
7d44610 Update ORM vendor from 191469e523f536e08c9208483a6aa8c9d69a28d9
+467-0 notactuallytreyanastasio/alloy-rust-app/main Mar 14 03:20
2dab4a8 Update ORM vendor from 3d2c2c6a5e20d5d6432e9b8288f547eaf199a872
+118-0 notactuallytreyanastasio/alloy-java-app/main Mar 14 03:20
9c20f72 Update ORM vendor from 0add71b193f988a774fdd725bdfdd087ea54c411
+170-58 notactuallytreyanastasio/alloy/main Mar 14 03:15
92aa09f Add runtime test gate to child repo CI pipeline Rewrites notify-app-template.yml so child lib repos (alloy-py, alloy-js, etc.) run their own native tests before pushing vendor code to app repos. Flow: alloy temper test → publish to child libs → child runs native tests (pytest, npm test, cargo test, etc.) → if pass, push to app repo; if fail, open issue on alloy with stack trace. Simplifies top-level test job to just gate publishing (no issue creation) since child repos now handle runtime-specific failure reporting. Requires ALLOY_ISSUES_TOKEN secret on each child repo for cross-repo issue creation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
+1-23489 notactuallytreyanastasio/alloy-js/main Mar 14 03:05
09f2332 Update from alloy b779c12ae66281dc8e2804e679fad8c391e5cd76
+0-447 notactuallytreyanastasio/alloy-js-app/main Mar 14 03:05
b6a6fce Update ORM vendor from 09f2332e76b24a6db56b9a87907cdd5724715fd0
+202-11 notactuallytreyanastasio/alloy/main Mar 14 03:00
b779c12 Fix CI: surface test failures and auto-open issues Three bugs fixed: - Test job showed green despite failures (continue-on-error swallowed exit code) - Issue creation failed silently when "bug"/"ci" labels didn't exist - Every push created duplicate issues instead of commenting on existing ones Added explicit "Fail job if tests failed" step so the test matrix shows red. Labels are now created before use. Existing open issues get a comment instead of a duplicate. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
+89-89 notactuallytreyanastasio/alloy-js/main Mar 14 01:49
f19da0d Update from alloy 8dd5a3bd15b95b28f9c222fa9f1547d2183adc85
+44-44 notactuallytreyanastasio/alloy-js-app/main Mar 14 01:49
0388891 Update ORM vendor from f19da0d0369c23064345013acfb7b65d186765b5
+585-0 notactuallytreyanastasio/alloy/main Mar 14 01:44
0405645 Add expanded security audit: 17 vulnerabilities across 7 classes Original audit found 2 SQL injection vulns (fixed by Alloy). Expanded audit covers full OWASP Top 10 and finds 15 additional: 4 NoSQL injection ($where + operator injection), RCE, SSRF, SSTI, XXE, zip slip, hardcoded keys, MD5 hashing, open redirect, mass assignment, sensitive query params. The NoSQL vulns are structurally identical to the SQLi we fixed — same anti-pattern, different database layer — making the case for extending Temper's type-safe approach to NoSQL query generation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
8dd5a3b kick off CI
+33-33 notactuallytreyanastasio/alloy-js-app/main Mar 13 22:54
0244f19 Update ORM vendor from 6d4f1f57fd883cf5f95952d479ef1b7241329442
+67-67 notactuallytreyanastasio/alloy-js/main Mar 13 22:54
6d4f1f5 Update from alloy 4c7ec398b2daca3669e1604eb75e0f592c357eb9
+7022-961 notactuallytreyanastasio/alloy/main Mar 13 22:50
47862b0 Point juice-shop submodule to fork with Alloy security migration Juice Shop fork at notactuallytreyanastasio/juice-shop includes: - Vendored Temper-compiled Alloy ORM - Login route migrated from raw SQL to type-safe SqlBuilder - Search route migrated from raw SQL to type-safe SqlBuilder - All 6 injection payload types validated as blocked
ec60310 Add Juice Shop SQL security migration plan and audit trail - juice-shop-alloy-migration.md: Full technical plan with MITRE CWE analysis (11 CWEs), all 40 SQL touchpoints mapped, escaping proofs - PROCESS.md: Live audit trail documenting each change, validation results from 7 injection payloads, and final assessment showing Alloy eliminates all SQL injection vectors by construction
cc01b98 Track apps/ directory and update temper.keep name selections Remove apps/ from .gitignore to track demo applications and the Juice Shop security migration as submodules.
4c7ec39 Add git operation log
+15007-6 notactuallytreyanastasio/juice-shop/master Mar 13 22:48
914c8e9 Replace vulnerable raw SQL with Alloy ORM type-safe query builder Migrate login and search routes from string-interpolated SQL to Alloy's type-safe SqlBuilder API. All user input now flows through appendString() which escapes quotes at the type level, making injection unrepresentable. - Vendor Temper-compiled Alloy ORM (orm, std, temper-core) - Add lib/alloy.ts bridge (ESM loader + query builders) - Add lib/orm-src.d.ts TypeScript declarations for Alloy API - Migrate routes/login.ts: email/password no longer interpolated - Migrate routes/search.ts: search criteria no longer interpolated - Validated against 6 injection payloads on running server: all blocked
+69-69 notactuallytreyanastasio/alloy-js/main Mar 13 12:45
0b00d3c Update from alloy aebc624a77c36a816e37ecf53c421940553f9ce4
+34-34 notactuallytreyanastasio/alloy-js-app/main Mar 13 12:45
45f098e Update ORM vendor from 0b00d3ca33303c1a2ee338b18095ebf6f23e31d9
+35-0 notactuallytreyanastasio/alloy/main Mar 13 12:41
aebc624 Add Phase 0 (Core Foundation) to Per-Phase Security Analysis Covers the foundational implementation layer that all subsequent phases inherit: SafeIdentifier validation, sealed SqlPart hierarchy, SqlBuilder structure/data separation, sql template tag, basic Query builder, Changeset pipeline, and deleteSql. Documents 28 components with type safety mechanisms. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+4903-4338 notactuallytreyanastasio/alloy-py/main Mar 13 11:54
e097524 Update from alloy 501f6c0442ff8ceed4c293e9701f62a86ae6e024
+10955-9305 notactuallytreyanastasio/alloy-js/main Mar 13 11:54
851f4ae Update from alloy 501f6c0442ff8ceed4c293e9701f62a86ae6e024
+818-963 notactuallytreyanastasio/alloy-csharp/main Mar 13 11:54
c9c01d2 Update from alloy 501f6c0442ff8ceed4c293e9701f62a86ae6e024
+5309-4626 notactuallytreyanastasio/alloy-lua/main Mar 13 11:54
9d25318 Update from alloy 501f6c0442ff8ceed4c293e9701f62a86ae6e024
+7687-6323 notactuallytreyanastasio/alloy-rust-app/main Mar 13 11:54
fa0f041 Update ORM vendor from 5491e93082b67b4b9e5430daf246e747952b023a
+4902-4337 notactuallytreyanastasio/alloy-py-app/main Mar 13 11:54
28783b7 Update ORM vendor from e097524c1c2bc6eefeb0a48e6cec4edcbb765e2d
+831-979 notactuallytreyanastasio/alloy-java-app/main Mar 13 11:54
e4459e7 Update ORM vendor from 872dfb2a5f7777b6b619346aff62c83c641d0839
+817-962 notactuallytreyanastasio/alloy-csharp-app/main Mar 13 11:54
8f1a5e5 Update ORM vendor from c9c01d2e07eb141e758aca2b61b69db5289099f9
+5477-4652 notactuallytreyanastasio/alloy-js-app/main Mar 13 11:54
6b94625 Update ORM vendor from 851f4ae93894fc17a079ad017060d21e7345ba4c
+5308-4625 notactuallytreyanastasio/alloy-lua-app/main Mar 13 11:54
a927898 Update ORM vendor from 9d25318d8719772668521612e3dfb7e7a4937b08
+2376-175 notactuallytreyanastasio/alloy/main Mar 13 11:49
501f6c0 Comprehensive pre-production test audit: 37 new tests and refactoring Phase 1-3: Coverage, test quality, and complexity audits producing three APPEND ONLY documents (docs/COVERAGE_AUDIT.md, TEST_AUDIT.md, COMPLEXITY_AUDIT.md). Mapped ~195 code paths (~72% coverage), rated all 184 existing tests, identified 8 complexity findings. Phase 4: Added 37 new tests across 4 files (184→221 total): - schema_test: 3 (single-char identifiers, all-underscore, empty TableDef) - sql_tests: 5 (negative ints, single-element lists, SqlDefault, backslash) - query_test: 8 (immutability, limit(0), safeToSql(0), negative limits) - changeset_test: 21 (boundary validators, all-6-field INSERT, immutability, multi-validator chains, all-virtual UPDATE bubble, skip-when-absent) Phase 5: Refactoring guided by complexity audit: - changeset: Extracted addError() helper, simplified 14 validators (~30 lines removed) - query: Extracted renderWhere/Joins/GroupBy/Having free functions, eliminated 4 WHERE copies and JOIN/GROUP BY/HAVING duplication (~50 lines removed) All 221 tests pass. Decision graph updated (62 nodes, 54 edges). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+99-99 notactuallytreyanastasio/alloy-js/main Mar 13 08:12
52ae3be Update from alloy f4060ec2a3399652674719754a4c56df423da768
+35-35 notactuallytreyanastasio/alloy-js-app/main Mar 13 08:12
009104a Update ORM vendor from 7f98f7b400d231a86b3decdaf90bc7a6637af376
+49-49 notactuallytreyanastasio/alloy-js-app/main Mar 13 08:12
0027fa4 Update ORM vendor from 52ae3be52af175689736f20bb23a9a9f385febf4
+89-89 notactuallytreyanastasio/alloy-js/main Mar 13 08:09
c2f75e0 Update from alloy 88889702513e94df61f2dcf92a1694ede584ef74
+44-44 notactuallytreyanastasio/alloy-js-app/main Mar 13 08:09
be11922 Update ORM vendor from c2f75e024d8b87ce49959ba17c79e6801a595794
+20-29 notactuallytreyanastasio/alloy/main Mar 13 08:06
03621a8 Center language pills, simplify OG image and meta tags - Center the language pill row in OG image - Update tagline to "Write Once, Secure SQL Everywhere" - Remove test count and vulnerability count from stats - Soften description copy in meta tags Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+124-0 notactuallytreyanastasio/alloy/main Mar 13 08:05
8888970 Add OG image and meta tags to GH Pages site Light metallic theme with hex grid texture, language pills, and key stats (184 tests, 6 languages, 0 vulnerabilities). Includes og:image, og:description, and Twitter Card tags. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+59-59 notactuallytreyanastasio/alloy-js/main Mar 13 08:01
07c2616 Update from alloy 9e2ee0e57222f0833bace467b6cb8b0220d33868
+29-29 notactuallytreyanastasio/alloy-js-app/main Mar 13 08:01
b242fdb Update ORM vendor from 07c2616e18e4f79c6a1d673ccf068f24e3711582
+710-579 notactuallytreyanastasio/alloy/main Mar 13 07:57
9e2ee0e Reorganize README and rewrite GH Pages site README: move Getting Started to top, consolidate security sections, use collapsible details for remediation and per-phase analysis, remove broken apps/ links (gitignored directory). GH Pages: condense from 7 chapters to focused sections, add tabbed code snippets showing ORM API in all 6 languages, add library repo links (alloy-js through alloy-csharp), link language pills to repos. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+1-632 notactuallytreyanastasio/alloy-csharp/main Mar 13 07:53
4942045 Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+1-607 notactuallytreyanastasio/alloy-rust/main Mar 13 07:52
5ccf5c8 Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+1-602 notactuallytreyanastasio/alloy-py/main Mar 13 07:52
f06c5d5 Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+1-675 notactuallytreyanastasio/alloy-java/main Mar 13 07:52
71b3809 Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+1-607 notactuallytreyanastasio/alloy-lua/main Mar 13 07:52
2e2700e Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+38-38 notactuallytreyanastasio/alloy-js-app/main Mar 13 07:52
9cbfe30 Update ORM vendor from e7664c618a9ff820aebd7641d46ae94fbbc47a3a
+77-682 notactuallytreyanastasio/alloy-js/main Mar 13 07:52
e7664c6 Update from alloy dabc93e17e9bab67235404a5c8aa0b65676bc70e
+606-0 notactuallytreyanastasio/alloy-rust/main Mar 13 07:47
9e6d1e6 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+605-0 notactuallytreyanastasio/alloy-js/main Mar 13 07:47
48b6bb3 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+606-0 notactuallytreyanastasio/alloy-lua/main Mar 13 07:47
c6ff258 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+601-0 notactuallytreyanastasio/alloy-py/main Mar 13 07:47
80f1026 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+631-0 notactuallytreyanastasio/alloy-csharp/main Mar 13 07:47
a48bd61 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+674-0 notactuallytreyanastasio/alloy-java/main Mar 13 07:47
1def482 Add comprehensive README with full API reference, security model, and usage guide Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+264-36 notactuallytreyanastasio/alloy-csharp-app/main Mar 13 07:46
1aea3ad Add comprehensive README with full ORM feature coverage
+254-39 notactuallytreyanastasio/alloy-rust-app/main Mar 13 07:46
ce4567f Add comprehensive README with full ORM feature coverage
+242-35 notactuallytreyanastasio/alloy-js-app/main Mar 13 07:46
acfa11c Add comprehensive README with full ORM feature coverage
+303-34 notactuallytreyanastasio/alloy-py-app/main Mar 13 07:43
0e22e89 Add comprehensive README with full ORM feature coverage
+281-36 notactuallytreyanastasio/alloy-lua-app/main Mar 13 07:43
67a4662 Add comprehensive README with full ORM feature coverage
+285-37 notactuallytreyanastasio/alloy-java-app/main Mar 13 07:42
5f531a9 Add comprehensive README with full ORM feature coverage
+2991-269 notactuallytreyanastasio/alloy-csharp-app/main Mar 13 07:39
d490a08 Enhance app to demonstrate ALL Alloy ORM SQL features Comprehensive rewrite of the C# TodoApp to showcase every ORM feature: Schema: Expanded to 4 tables (lists, todos, tags, todo_tags) with priority (1-5), nullable due_date, nullable description, and FK relations. Query Builder (From): Where, OrWhere, WhereNull, WhereNotNull, WhereIn, WhereInSubquery, WhereNot, WhereBetween, WhereLike, WhereILike, Select, SelectExpr, InnerJoin, LeftJoin, RightJoin, FullJoin, CrossJoin, OrderBy, OrderByNulls (NullsFirst/NullsLast), GroupBy, Having, OrHaving, Limit, Offset, Distinct, Lock (ForUpdate/ForShare), CountSql, SafeToSql, ToSql. Update Builder: Update, Set, Where, OrWhere, Limit, ToSql. Delete Builder: DeleteFrom, Where, OrWhere, Limit, ToSql. Quick Delete: DeleteSql (by primary key). Aggregates: CountAll, CountCol, SumCol, AvgCol, MinCol, MaxCol. Set Operations: UnionSql, UnionAllSql, IntersectSql, ExceptSql. Subqueries: Subquery, ExistsSql. Column References: Col (table.column). Changeset: Cast, ValidateRequired, ValidateLength, ValidateInt, ValidateInt64, ValidateFloat, ValidateBool, ValidateInclusion, ValidateExclusion, ValidateNumber (NumberValidationOpts), ValidateAcceptance, ValidateConfirmation, ValidateContains, ValidateStartsWith, ValidateEndsWith, PutChange, GetChange, DeleteChange, ToInsertSql, ToUpdateSql. Types: SafeIdentifier, TableDef, FieldDef, StringField, IntField, FloatField, BoolField, DateField, SqlBuilder, SqlFragment, SqlInt32, SqlString, ForUpdate, ForShare, NullsFirst, NullsLast. Pages: Lists (CRUD), Todo detail (CRUD with tags), Dashboard (aggregates), Search (all Where variants), Tags (joins), SQL Viewer (all 60+ features). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+1828-182 notactuallytreyanastasio/alloy-js-app/main Mar 13 07:38
9390a0b Enhance app to demonstrate ALL Alloy ORM SQL features Add tags, priority, due dates, search, stats, pagination, bulk ops, and validation showcase. Every ORM query builder method and changeset validator is now exercised in a real route. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+2716-265 notactuallytreyanastasio/alloy-rust-app/main Mar 13 07:37
6be6c29 Enhance app to demonstrate ALL Alloy ORM SQL features Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+2702-151 notactuallytreyanastasio/alloy-py-app/main Mar 13 07:37
776ce23 Enhance app to demonstrate ALL Alloy ORM SQL features Add tags, priority, due dates, search, stats, pagination, bulk ops, and validation showcase. Every ORM query builder method and changeset validator is now exercised in a real route. Query builder features demonstrated: - from_, where, or_where, where_null, where_not_null, where_in, where_in_subquery, where_not, where_between, where_like, where_i_like, select, select_expr, inner_join, left_join, right_join, full_join, cross_join, order_by, order_by_nulls, group_by, having, or_having, limit, offset, distinct, lock, count_sql, safe_to_sql, to_sql Update/Delete builders: - update().set().where(), delete_from().where().limit() Changeset validators: - cast, validate_required, validate_length, validate_int, validate_int64, validate_float, validate_bool, validate_inclusion, validate_exclusion, validate_number, validate_contains, validate_starts_with, validate_ends_with, validate_acceptance, validate_confirmation, put_change, get_change, delete_change, to_insert_sql, to_update_sql Aggregates: count_all, count_col, sum_col, avg_col, min_col, max_col Set ops: union_sql, union_all_sql, intersect_sql, except_sql Subqueries: subquery, exists_sql Types: SqlInt32, SqlString, SqlBuilder, ForUpdate, ForShare, NullsFirst, NullsLast, NumberValidationOpts, timestamps() Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+2487-206 notactuallytreyanastasio/alloy-lua-app/main Mar 13 07:35
8669713 Enhance app to demonstrate ALL Alloy ORM SQL features Rewrite the Lua todo app to exercise every single ORM feature: Schema: 4 tables (lists, todos, tags, todo_tags) with expanded fields including description, priority (1-5), due_date, and many-to-many tags. Query Builder (40+ features demonstrated): - from(), select(), selectExpr(), where(), orWhere() - whereNull(), whereNotNull(), whereIn(), whereInSubquery() - whereNot(), whereBetween(), whereLike(), whereILike() - innerJoin(), leftJoin(), rightJoin(), fullJoin(), crossJoin() - orderBy(), orderByNulls() with NullsFirst/NullsLast - groupBy(), having(), orHaving() - limit(), offset(), distinct() - lock() with ForUpdate/ForShare - countSql(), safeToSql(), toSql() - col() qualified column references Update/Delete Builders: - update() + set() + where() + orWhere() + limit() - deleteFrom() + where() + orWhere() + limit() - deleteSql(tableDef, id) quick delete Aggregates: countAll, countCol, sumCol, avgCol, minCol, maxCol Set Ops: unionSql, unionAllSql, intersectSql, exceptSql Subqueries: subquery(), existsSql() Changeset (all 15+ validators): - cast, validateRequired, validateLength - validateInt, validateInt64, validateFloat, validateBool - validateInclusion, validateExclusion, validateNumber(NumberValidationOpts) - validateAcceptance, validateConfirmation - validateContains, validateStartsWith, validateEndsWith - putChange, getChange, deleteChange - toInsertSql, toUpdateSql Types used: SafeIdentifier, TableDef, FieldDef, StringField, IntField, Int64Field, FloatField, BoolField, DateField, SqlBuilder, SqlFragment, SqlInt32, SqlInt64, SqlFloat64, SqlString, SqlBoolean, SqlDefault, NumberValidationOpts, NullsFirst, NullsLast, ForUpdate, ForShare New routes: /tags, /search, /analytics, /sql-showcase, /validations Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+32-0 notactuallytreyanastasio/alloy-java/main Mar 13 07:34
24c67d4 Add README
+32-0 notactuallytreyanastasio/alloy-lua/main Mar 13 07:34
47856d9 Add README
+32-0 notactuallytreyanastasio/alloy-js/main Mar 13 07:34
810b837 Add README
+32-0 notactuallytreyanastasio/alloy-py/main Mar 13 07:34
8770d5c Add README
+32-0 notactuallytreyanastasio/alloy-rust/main Mar 13 07:34
2ad73e1 Add README
+2273-247 notactuallytreyanastasio/alloy-java-app/main Mar 13 07:34
6d8455e Enhance app to demonstrate ALL Alloy ORM SQL features Expanded data model: lists (with description), todos (with priority 1-5, due_date), tags, todo_tags (many-to-many). Repository demonstrates every ORM feature: - Query builder: from, select, selectExpr, where, orWhere, whereNull, whereNotNull, whereIn, whereInSubquery, whereNot, whereBetween, whereLike, whereILike, innerJoin, leftJoin, rightJoin, fullJoin, crossJoin, orderBy, orderByNulls (NullsFirst/NullsLast), groupBy, having, orHaving, limit, offset, distinct, lock (ForUpdate/ForShare), countSql, safeToSql, toSql - UpdateQuery: update, set, where, orWhere, limit - DeleteQuery: deleteFrom, where, orWhere, limit - Changeset: cast, validateRequired, validateLength, validateInt, validateInt64, validateFloat, validateBool, validateInclusion, validateExclusion, validateNumber (NumberValidationOpts), validateContains, validateStartsWith, validateEndsWith, validateAcceptance, validateConfirmation, putChange, getChange, deleteChange, toInsertSql, toUpdateSql - Aggregates: countAll, countCol, sumCol, avgCol, minCol, maxCol - Set ops: unionSql, unionAllSql, intersectSql, exceptSql - Subqueries: subquery, existsSql - Types: SafeIdentifier, TableDef, FieldDef, StringField, IntField, SqlBuilder, SqlFragment, SqlString, SqlInt32, SqlBoolean - col() qualified references, deleteSql quick delete New routes: /tags, /search (10 filter modes), /advanced (48-query showcase) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+32-0 notactuallytreyanastasio/alloy-csharp/main Mar 13 07:34
aa68ca0 Add README
+33-33 notactuallytreyanastasio/alloy-js-app/main Mar 13 07:26
c49d840 Update ORM vendor from c0dbf1dc042f9ba7830994de2b426d25b99f45c6
+67-67 notactuallytreyanastasio/alloy-js/main Mar 13 07:26
c0dbf1d Update from alloy 26ebf5dbbb3829bfc1e82266bab02bf821d00078
+569-538 notactuallytreyanastasio/alloy/main Mar 13 07:21
26ebf5d Rename Generic ORM to Alloy across all project files Update all references from "Generic ORM" / "generic_orm" / "generic-orm-*" to "Alloy" / "alloy" / "alloy-*" in README, GitHub Pages site, pitch deck, CI workflow, and deck generator script. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+87-87 notactuallytreyanastasio/alloy-js/main Mar 13 07:14
d6bd6bb Update from generic_temper_orm a3e645ac9f1d43b0934422951fee472cf792d762
+43-43 notactuallytreyanastasio/alloy-js-app/main Mar 13 07:14
b361d9f Update ORM vendor from d6bd6bbb164d586f61cfca8fc565e7a2d347efa7
+441-0 notactuallytreyanastasio/generic_orm/main Mar 13 07:08
a3e645a Add GitHub Pages project site and fix missing Phase 6 in README New docs/index.html tells the project story in 7 chapters: the problem, why Temper, the 5 defense layers, literate programming, the 3-bug fix story, the AI development comparison, and the 6-app proof. Styled in black-and-white matching the pitch decks. README.md adds missing Phase 6 (Changeset Enrichment) security analysis section between Phase 5 and Phase 7. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+58-0 notactuallytreyanastasio/generic-orm-rust-app/main Mar 13 07:05
8208d5e Add README with ORM usage documentation
+58-0 notactuallytreyanastasio/generic-orm-java-app/main Mar 13 07:05
1172538 Add README with ORM usage documentation
+59-0 notactuallytreyanastasio/generic-orm-lua-app/main Mar 13 07:05
588bb1b Add README with ORM usage documentation
96 pushes github.com/notactuallytreyanastasio
phangraphs — Phish 3.0 Jam Analytics
phangraphs
Mr. Completely
.533
BATTING AVG
8 JC · 15× played
Avg 14.4m · Peak 22:29 · 🎧 14/15
Longest: 22:29
2024-07-31 · Chaifetz Arena, Saint Louis University
Most Loved: 38 likes
2017-07-26 · Madison Square Garden
📊 93% Set 2 · 8/8 JCs from Set 2
Last: 2024-07-31 (591d ago) · avg every 184d
Best year: 2017 — 2/2 JC
🔥 JC Streak: 4 in a row
"Busted out after a 380 show absence, Phish goes 2 for 2 on delivering the goods ..."
TAP TO SEE AND PLAY JAMS
Mr. Completely .533
TAP TO FLIP BACK
8 jams
2017-07-19 21:18
Petersen Events Center · Pittsburgh, PA
Busted out after a 380 show absence, Phish goes 2 for 2 on delivering the goods with this TAB standby. The jam quickly goes "Type II" and features bliss jamming aplenty as well as some new synth sounds from Page.
2017-07-26 13:52
Madison Square Garden · New York, NY
Surprising -> out of a great "Carini". A fiery minor key jam develops out of the verses, and Page takes control on the keys as Trey fires off echo-laden notes. They pivot nicely into a new key, where Mike really impresses and Fish pushes the tempo up a gear as Trey plays around with the "Mr. Completely" theme and leads the band into an anthemic finale. A high-spirited, energetic good time, with a > into an even more surprising "1999".
2021-08-04 18:55
Ascend Amphitheater · Nashville, TN
The opening to one of the year's strongest second frames, this "Mr. Completely" indulges in its usual jam before Fish switches up his flow and Trey moves into a new key. Page's electric piano cuts through the mire, and a warm groove emerges as a result. Fish starts throwing in the "Mr. Completely" drum fill almost as a challenge to himself, and Trey moves to stabbing echo-laden chords as the jam picks up speed "Bathtub Gin" style. Something funkier and stranger emerges, and Mike flips on his envelope filter as the jam builds to a ferocious climax, then dies away with some more "Mr. Completely" drum fills by Fish for fun. > into "BOAF".
2021-08-29 18:47
Gorge Amphitheatre · George, WA
Quickly maneuvers into major-key bliss, distinguished by some frenetic playing from Fishman, then moves into a brisker and snappier zone thanks to Trey switching to chords. The band briefly dips into contemplative minor key playing, before moving to something more upbeat, with Page's electric piano at the forefront. Trey's effects-smothered guitar playing and Page's synths combine wonderfully, with Mike going to the envelope filter and Fish as steady as ever. Very good -> into "Meat" to close. A fine companion piece to the 8/4/21 version.
2022-08-13 14:26
Alpine Valley Music Theatre · East Troy, WI
First locks into a super-cool and menacing, textural jam with a perfectly integrated "Crazy Train" tease from Trey, then slides into major for a heavenly spell before more familiar bliss brings it all home.
2023-04-23 18:03
Hollywood Bowl · Hollywood, CA
Another huge version of the once rare song in the catalog. Plucky playing from Trey around 9:30 changes the jam's trajectory. The searching, grimy jam sounds like the background to a noir detective show at times. The tempo gets kicked up towards the end, before eventually > "A Song I Heard the Ocean Sing".
2023-04-23 0:56
Hollywood Bowl · Hollywood, CA
-> from "A Song I Heard the Ocean Sing" to close out the "Mr C" > "ASIHTOS" -> "Mr C" sandwich.
2024-07-31 22:29
Chaifetz Arena, Saint Louis University · St. Louis, MO
After transitioning away from the song, Page’s grand piano gives the improvisation shape and direction as Trey responds leading the band through uplifting and thematic play that modulates across both delicate and thornier spaces. Listen for Mike's "Meowdulator" pedal and Trey's "Hanon exercises" to make appearances before returning to the song proper to close.
phangraphs Phish 3.0 Jam Analytics
AIM Chat - Terminal
Online (0)
jeff 02:52 AM
What is up y'all
jeff 03:44 AM
Thanks for visiting my website
jeff 03:51 AM
Trying from mobile let’s see what’s up
Uechi Nerd 03:54 AM
Hi, greetings from Planet Crackpot!
jeff 03:55 AM
oh man what's up
jeff 03:56 AM
Hey everyone
Uechi Nerd 03:56 AM
winding down with a beer or three
Uechi Nerd 03:57 AM
desktop version
Uechi Nerd 04:01 AM
Disappointed that War does not lead to actual combined-arms conflict.
jeff 04:01 AM
that would be hard to conjure
jeff 04:02 AM
I am so excited that this works and is a successful combination of windows and old apple lol
Uechi Nerd 04:02 AM
Probably for the best, actually. That shit is very very messy.
Uechi Nerd 04:02 AM
I am intrigued and happy it works!
Uechi Nerd 04:03 AM
I respect the wizardry.
Visitor7804 04:05 AM
this is delightful.
jeff 04:06 AM
hell yeah visitor 7804, this is livin' brother
guy4get 04:07 AM
i've never felt so alive
EarlofVincent 04:09 AM
Commencing experiment in 3....2....
jeff 04:14 AM
1
leah 04:16 AM
hi!
leah 04:16 AM
this is lovely
jeff 04:21 AM
hi! lol I was just like what if I combined Mac and windows and added a flower tree of life and called it my homepage and then smoked some weed and made it happen in an empty mall in Connecticut
B. Droptables 10:51 AM
Always cool to play with your toys.
Visitor1128 08:47 AM
yo!
Visitor1128 08:48 AM
i can barely work my phone. what am i doing here?
jeff 09:04 AM
the phone is not optimized yet but it "kind of works" I am sorry lol
jeff 09:04 AM
you have to pick a username, then it goes to the chat, then if you hit the bottom tabs it'll let you go to the app sections.
Bobdawg 04:43 AM
Hi everybody this is my blog I hope you enjoy it I did some more changes and anyone can write a post here now for me.
dinkleberg 01:45 AM
ALL HAIL TREE OF LIFE
jeff 08:55 PM
hi Hacker News
jeff 04:28 PM
hey there I am not really Jeff
Mal Function 05:34 PM
Hey! Please reveal... how exactly do I actually use losselot on my Mac? I've run the git clone commend in Terminal.app and seem successfully to have installed into a new <losselot> sub-folder in my home folder but now???