interactive intro to open social at-me.zzstoatzz.io

improve ux and fix auto-deployment

- move spindle config to .tangled/workflows/ for auto-deploy on push to main
- simplify readme link styling
- improve identity visualization: show @ symbol as label with handle, add "tap for details" hint
- remove redundant @ prefix from handle display since it's now shown as separate label

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

+16 -8
+1 -1
README.md
··· 2 2 3 3 an accessible visualization of how your atproto identity connects to third-party apps. 4 4 5 - **[try it at at-me.fly.dev →](https://at-me.fly.dev/)** 5 + [at-me.fly.dev](https://at-me.fly.dev/) 6 6 7 7 ## what is this 8 8
spindle.yaml .tangled/workflows/deploy.yaml
+15 -7
src/templates.rs
··· 295 295 }} 296 296 297 297 .identity-label {{ 298 - font-size: 0.5rem; 299 - color: var(--text-light); 300 - text-transform: uppercase; 301 - letter-spacing: 0.05em; 298 + font-size: 0.45rem; 299 + color: var(--text-lighter); 300 + letter-spacing: 0.1em; 302 301 }} 303 302 304 303 .identity-value {{ 305 - font-size: 0.7rem; 304 + font-size: 0.75rem; 306 305 color: var(--text); 307 306 text-align: center; 308 307 word-break: break-word; 309 308 max-width: 100px; 309 + font-weight: 500; 310 + }} 311 + 312 + .identity-hint {{ 313 + font-size: 0.4rem; 314 + color: var(--text-lighter); 315 + margin-top: 0.2rem; 316 + letter-spacing: 0.05em; 310 317 }} 311 318 312 319 .app-view {{ ··· 568 575 569 576 <div class="canvas"> 570 577 <div class="identity"> 571 - <div class="identity-label">you</div> 578 + <div class="identity-label">@</div> 572 579 <div class="identity-value" id="handle">loading...</div> 580 + <div class="identity-hint">tap for details</div> 573 581 </div> 574 582 <div id="field" class="loading">loading...</div> 575 583 </div> ··· 621 629 globalHandle = handle; 622 630 623 631 // Update identity display with handle 624 - document.getElementById('handle').textContent = '@' + handle; 632 + document.getElementById('handle').textContent = handle; 625 633 626 634 // Add identity click handler to show PDS info 627 635 document.querySelector('.identity').addEventListener('click', () => {{