@jeremyphoward
ICYMI, Starlette 1.0 was just released (yay!) One compatibility issue: it removes `on_startup/on_shutdown`. I've now updated FastHTML to continue to support those, by auto-generating a lifespan. https://t.co/TaKsOyILi7
Viewing enriched Twitter post
ICYMI, Starlette 1.0 was just released (yay!) One compatibility issue: it removes `on_startup/on_shutdown`. I've now updated FastHTML to continue to support those, by auto-generating a lifespan. https://t.co/TaKsOyILi7
{
"media": [
{
"type": "photo",
"url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2036211547455033815/media_0.png",
"filename": "media_0.png"
}
],
"processed_at": "2026-03-23T22:52:12.612588",
"pipeline_version": "2.0"
} {
"type": "tweet",
"id": "2036211547455033815",
"url": "https://x.com/jeremyphoward/status/2036211547455033815",
"twitterUrl": "https://twitter.com/jeremyphoward/status/2036211547455033815",
"text": "ICYMI, Starlette 1.0 was just released (yay!)\n\nOne compatibility issue: it removes `on_startup/on_shutdown`.\n\nI've now updated FastHTML to continue to support those, by auto-generating a lifespan.\n\nhttps://t.co/TaKsOyILi7",
"source": "Twitter for iPhone",
"retweetCount": 0,
"replyCount": 1,
"likeCount": 1,
"quoteCount": 0,
"viewCount": 552,
"createdAt": "Mon Mar 23 22:40:38 +0000 2026",
"lang": "en",
"bookmarkCount": 1,
"isReply": false,
"inReplyToId": null,
"conversationId": "2036211547455033815",
"displayTextRange": [
0,
221
],
"inReplyToUserId": null,
"inReplyToUsername": null,
"author": {
"type": "user",
"userName": "jeremyphoward",
"url": "https://x.com/jeremyphoward",
"twitterUrl": "https://twitter.com/jeremyphoward",
"id": "175282603",
"name": "Jeremy Howard",
"isVerified": false,
"isBlueVerified": true,
"verifiedType": null,
"profilePicture": "https://pbs.twimg.com/profile_images/1279600070145437696/eocLhSLu_normal.jpg",
"coverPicture": "https://pbs.twimg.com/profile_banners/175282603/1594860705",
"description": "",
"location": "Brisbane/Queensland, Australia",
"followers": 275573,
"following": 6559,
"status": "",
"canDm": false,
"canMediaTag": false,
"createdAt": "Fri Aug 06 04:58:18 +0000 2010",
"entities": {
"description": {
"urls": []
},
"url": {}
},
"fastFollowersCount": 0,
"favouritesCount": 10027,
"hasCustomTimelines": true,
"isTranslator": false,
"mediaCount": 2932,
"statusesCount": 65112,
"withheldInCountries": [],
"affiliatesHighlightedLabel": {},
"possiblySensitive": false,
"pinnedTweetIds": [
"1734606378331951318"
],
"profile_bio": {
"description": "🇦🇺 Co-founder: @AnswerDotAI/@FastDotAI ;\nPrev: Professor@UQ; Stanford fellow; @kaggle founding president; founder @fastmail/@enlitic/…\nhttps://t.co/16UBFTWzwQ",
"entities": {
"description": {
"hashtags": [],
"symbols": [],
"urls": [
{
"display_url": "jeremy.fast.ai",
"expanded_url": "https://jeremy.fast.ai/",
"indices": [
135,
158
],
"url": "https://t.co/16UBFTWzwQ"
}
],
"user_mentions": [
{
"id_str": "0",
"indices": [
15,
27
],
"name": "",
"screen_name": "AnswerDotAI"
},
{
"id_str": "0",
"indices": [
28,
38
],
"name": "",
"screen_name": "FastDotAI"
},
{
"id_str": "0",
"indices": [
78,
85
],
"name": "",
"screen_name": "kaggle"
},
{
"id_str": "0",
"indices": [
114,
123
],
"name": "",
"screen_name": "fastmail"
},
{
"id_str": "0",
"indices": [
124,
132
],
"name": "",
"screen_name": "enlitic"
}
]
},
"url": {
"urls": [
{
"display_url": "answer.ai",
"expanded_url": "http://answer.ai",
"indices": [
0,
23
],
"url": "https://t.co/3lh0uQCFqf"
}
]
}
}
},
"isAutomated": false,
"automatedBy": null
},
"extendedEntities": {},
"card": {
"binding_values": [
{
"key": "thumbnail_image",
"value": {
"image_value": {
"height": 144,
"url": "https://pbs.twimg.com/card_img/2034704131173015552/or6ZNuxi?format=jpg&name=144x144_2",
"width": 144
}
}
},
{
"key": "description",
"value": {
"string_value": "Modern web applications in pure Python"
}
},
{
"key": "domain",
"value": {
"string_value": "fastht.ml"
}
},
{
"key": "thumbnail_image_large",
"value": {
"image_value": {
"height": 420,
"url": "https://pbs.twimg.com/card_img/2034704131173015552/or6ZNuxi?format=jpg&name=420x420_2",
"width": 420
}
}
},
{
"key": "thumbnail_image_original",
"value": {
"image_value": {
"height": 948,
"url": "https://pbs.twimg.com/card_img/2034704131173015552/or6ZNuxi?format=jpg&name=orig",
"width": 948
}
}
},
{
"key": "site",
"value": {
"scribe_key": "publisher_id",
"user_value": {
"id_str": "1765834686209925120",
"path": []
}
}
},
{
"key": "thumbnail_image_small",
"value": {
"image_value": {
"height": 100,
"url": "https://pbs.twimg.com/card_img/2034704131173015552/or6ZNuxi?format=jpg&name=100x100_2",
"width": 100
}
}
},
{
"key": "thumbnail_image_x_large",
"value": {
"image_value": {
"height": 948,
"url": "https://pbs.twimg.com/card_img/2034704131173015552/or6ZNuxi?format=png&name=2048x2048_2_exp",
"width": 948
}
}
},
{
"key": "vanity_url",
"value": {
"scribe_key": "vanity_url",
"string_value": "fastht.ml"
}
},
{
"key": "thumbnail_image_color",
"value": {
"image_color_value": {
"palette": [
{
"percentage": 66.6,
"rgb": {
"blue": 255,
"green": 255,
"red": 255
}
},
{
"percentage": 20.32,
"rgb": {
"blue": 2,
"green": 2,
"red": 2
}
},
{
"percentage": 4.15,
"rgb": {
"blue": 213,
"green": 156,
"red": 219
}
},
{
"percentage": 2.39,
"rgb": {
"blue": 147,
"green": 219,
"red": 113
}
},
{
"percentage": 2,
"rgb": {
"blue": 84,
"green": 197,
"red": 244
}
}
]
}
}
},
{
"key": "title",
"value": {
"string_value": "FastHTML"
}
},
{
"key": "card_url",
"value": {
"scribe_key": "card_url",
"string_value": "https://t.co/TaKsOyILi7"
}
}
],
"card_platform": {
"platform": {
"audience": {
"name": "production"
},
"device": {
"name": "iPhone",
"version": "13"
}
}
},
"name": "summary",
"url": "https://t.co/TaKsOyILi7",
"user_refs_results": [
{
"rest_id": "1765834686209925120",
"result": {
"__typename": "User",
"action_counts": {
"favorites_count": 2
},
"avatar": {
"image_url": "https://pbs.twimg.com/profile_images/1824698872234745856/rjns2uxa_normal.jpg"
},
"banner": {},
"core": {
"created_at": "Thu Mar 07 20:19:52 +0000 2024",
"name": "Answer.AI",
"screen_name": "answerdotai"
},
"dm_permissions": {
"can_dm": false
},
"exclusive_tweet_following": false,
"follow_request_sent": false,
"identity_profile_labels_highlighted_label": {},
"location": {
"location": "Distributed"
},
"media_permissions": {
"can_media_tag": true
},
"notifications_settings": {
"notifications_enabled": false
},
"pinned_items": {
"tweet_ids_str": []
},
"privacy": {
"protected": false,
"suspended": false
},
"private_super_following": false,
"profile_bio": {
"description": "A new kind of AI R&D lab which creates practical end-user products based on foundational research breakthroughs",
"entities": {
"description": {
"hashtags": [],
"symbols": [],
"urls": [],
"user_mentions": []
}
}
},
"profile_image_shape": "Circle",
"profile_metadata": {
"profile_interstitial_type": "",
"profile_link_color": "1DA1F2"
},
"profile_translation": {
"translator_type_enum": "None"
},
"properties": {
"has_extended_profile": true
},
"relationship_counts": {
"followers": 6628,
"following": 87
},
"relationship_perspectives": {
"blocked_by": false,
"blocking": false,
"followed_by": false,
"following": false,
"live_following": false,
"muting": false
},
"rest_id": "1765834686209925120",
"smart_blocked_by": false,
"smart_blocking": false,
"super_follow_eligible": false,
"super_followed_by": false,
"super_following": false,
"tweet_counts": {
"media_tweets": 1,
"tweets": 46
},
"verification": {
"is_blue_verified": true,
"verified": false
},
"website": {
"url": ""
}
}
}
]
},
"place": {},
"entities": {
"hashtags": [],
"symbols": [],
"timestamps": [],
"urls": [
{
"display_url": "fastht.ml",
"expanded_url": "https://fastht.ml/",
"indices": [
198,
221
],
"url": "https://t.co/TaKsOyILi7"
}
],
"user_mentions": []
},
"quoted_tweet": null,
"retweeted_tweet": null,
"isLimitedReply": false,
"article": null
}