dc7cb72Add type annotations to server.knot functions and migrate iOS launch screen to storyboard formatiko
e4f77ccSimplify server.knot and improve type safetyiko
a14779fMigrate UI from Fabulous.MauiControls to Fabulous.Avalonia for desktopiko
c2461e4Navigate to profile edit after identity generationiko
56e3e8aEnhance button component with press animations and improve UI stylingiko
1f3015eMigrate client to Fabulous 3.0: use Cmd.OfAsync APIs instead of manual asyncCmd helperiko
c622597Improve server type safety and simplify relay handlersiko
f1f6e11Extract button components into separate module and improve formattingiko
25ba3b8Improve type safety: use MessageDirection discriminated union, simplify pollingiko
d065088Simplify and improve type safety: eliminate DeliveryStatus, add AckResult/LookupResult ADTs, restructure handlersiko
b06c345Simplify client: eliminate StateLoadResult, make ServerUrl non-optional, improve CmdSendiko
c59feb8Improve type safety and simplify server: add DeliveryStatus type, eliminate result ADTsiko
59b0e4bSimplify client: eliminate SendOk msg, inline truncOb, improve type safety with DateTimeOffset timestamp, fix contact name displayiko
eaf1178Fix change photo button: run picker on main thread and add photo library permissioniko
ab2cbb5Fix message delivery: correct timestamp units and defer acknowledgmentsiko
5df6e95Improve type safety and simplify server: add DeliveryStatus type, extract isLocalServer predicateiko
13fba34Simplify client: eliminate DecryptedEvent and PollReceived types, inline error handlingiko
a348d96Improve type safety: add ValidGossipType, extract hasMessage predicateiko
6364cb2Simplify client: eliminate page-setter Msg variants, use SetPage directlyiko
f4d37c2Extract gossip predicates, flatten validation, simplify event handlingiko
dddd66fSimplify server code: extract magic numbers as constants, use wildcards in cases, inline variableiko
c2421ebSimplify and improve type safety: thread Profile type through envelope/events, extract applyEvent helper, optimize with Set and Map.changeiko
7b4b58dSimplify and improve type safety: inline gossip predicates, deduplicate remote serversiko
26d71bfImprove type safety: add PollEventType, expand MessageStatus, convert ackedFederated to list comprehensioniko
e305f3dAdd newContact and tryGetJsonString helpers, safe DeliveryStatus deserialization, simplify profile displayiko
50200f4Improve type safety and simplify code: use `data` for all union types, add wildcard patterns, inline unused helpersiko
4471c7eAdd profile support: display names, bios, and photos shared via encrypted profile messagesiko
fec9263Improve client type safety and simplify async handling: add typed Envelope DU, exhaustive status mappings, extract sendDeliveryAcksiko
57cf03bImprove client type safety and simplify state management: embed page state into Page DU, add delivery status tracking, inline identity generation, make ServerUrl non-optionaliko
476d6ffImprove server type safety: add ForwardResult and PollResult variants, simplify removeForwardiko
36a884bImprove server type safety: split SendResult, add LookupResult variant, simplify bestRemote foldiko
d854ebfImprove server type safety: use variant types for VerifyAuth/AckMessages, clarify LookupPresence foldiko
72c9efeSimplify client app: remove URL from ConnStatus, use PollReceived record, extract error banner, disable URL edit while connected.iko
b94da82Simplify server.knot: extract helpers (min, pubkeyServer, resolveByTimestamp), use diff in capPerKey, apply De Morgan simplificationsiko
b4f9f43Improve server.knot: add GossipUnknown variant, simplify with comprehensions, clarify logiciko
a5a5e7cSimplify server.knot: remove single-variant PollEventType, optimize fold-based operations, clarify JSON parsingiko
e3148ddImprove type safety and simplify server: consolidate SendResult variants, remove LookupPresence fold field, reuse trustedOfflineiko
e6d5254Simplify code: merge LookupPresence fold, restrict offlineOnlyKeys to fromServer, remove let alias; refactor Client ConnStatus to use Session typeiko
0c01684Simplify server code: reuse removeOffline result for appliedOffline, remove unused PruneResult typeiko
a6088f1Simplify code and improve robustness: ack all poll events, render messages individually, simplify Phonemic.toOb, trim pubkey inputiko
6b1d74aImprove type safety and simplify server.knot: convert PollEvent.eventType to DU, remove redundant isGossipOffline helper, simplify LookupPresence server selection and trustedOffline derivationiko
32ef8d2Improve type safety: convert MessageStatus to DU with custom JSON serialization, eliminate DeliveryStatusiko
8dcf190Simplify code and improve type safety: replace nested option in StateLoaded with dedicated DU, remove pubKeyHex helper, restructure viewSettings to single auth matchiko
b466ddfImprove type safety and simplify server code: use DUs with custom JSON serialization, optimize string handling with contains(), tighten response typesiko
e7abeeaSimplify code and improve type safety: separate form input state from Page DU, add dedicated input messages for compose and contact form fieldsiko
5a91ff1Simplify code and improve type safety: use EventType and EnvelopeType DUs, simplify array/option patterns, validate pubkey formatiko
c0ca8aaSimplify code and improve type safety: use ServerName for GossipEvent.server, generalize mergeByKey, remove redundant normalization in isBadServerName, remove dead containsColon helperiko
54d081aTruncate @ob key display to first and last pairsiko
78fb9efUse Urbit @ob-style syllable encoding for public keys in UIiko
f4f8a00Simplify code and improve type safety: use stdlib for string operations, require normalized ServerName, type config durations with units, use PubkeyHex in GossipEventiko
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list