substack.com favicon

substack.com

Category: News & Media

Scanned: May 3, 2026, 06:40 PM UTC · First seen: May 3, 2026 · Threat Engines: 1 / 91 · Times Scanned: 1
82 / 100 Trust Score Based on scan findings at the time of analysis
No Threats Found
0 - High Risk50 - Moderate100 - No Threats
Fresh scan recommended
Last scanned 9 days ago - security status may have changed since then.
Not scanned has not been scanned yet. Hit Scan Now to check it.

Scans can take up to 5 minutes to complete. Please keep this tab open - we'll redirect you to the report when it's ready.

Failed
Scan unavailable
Scan failed
Screenshot of substack.com Captured May 3, 2026
https://substack.com
Screenshot of substack.com
16 years
Extremely Popular - #522 Tranco rank (>100M monthly visitors)
Flagged by 1 of 91 engine
✓ Valid (TLS)
Cloudflare, Inc.
Toronto, Canada
cloudflare
Express
104.18.37.200
Domain & WHOIS Information
Registrar Amazon Registrar, Inc.
Registered April 27, 2010
Expires April 27, 2030
Name Servers lee.ns.cloudflare.com
DNSSEC Unsigned
Hosting Cloudflare, Inc.
Reputation & Threat Check 91 security engines checked
1
1 of 91 engines flagged this website Flagged by 1 security vendor at the time of scanning
Not flagged Flagged
Flagged by 1 of 91 engines
Direct Threat Database Sources
View detailed engine results on VirusTotal
File Scan Summary Powered by Quttera Engine
101 files scanned
No threats
100
Low Risk
0
Medium Risk
1
High Risk
0
No threats Low Risk Medium Risk High Risk
substackcdn.com/bundle/static/js/55369.95b1f5f2.js 881.4 KB Flagged: medium risk
substack.com/about 169.2 KB No threats
substack.com/manifest.json 1.4 KB No threats
substack.com/# 74.2 KB No threats
substack.com/signup?utm_source=reader-cta&utm_medium=web&utm_campaign=home&utm_content=explore-sidebar 960.4 KB No threats
substack.com/signup?utm_source=substack-feed-item&utm_medium=web&utm_campaign=home&utm_content=account-creation-feed-item-work-you-believe-in 960.4 KB No threats
substack.com/explore 83.4 KB No threats
substackcdn.com/bundle/static/js/67562.e150903a.js 11.6 KB No threats
substackcdn.com/bundle/static/js/20711.30099914.js 10.2 KB No threats
substackcdn.com/bundle/static/js/57328.2037356c.js 7.7 KB No threats
substackcdn.com/bundle/static/js/93144.9970b1af.js 22.1 KB No threats
Show 90 more...
Quttera flagged medium risk files - is this your website?
Investigate and remove potential threats with Quttera
Remove Malware

Quttera Web Malware Removal is a paid subscription service. Pricing, plans, and trial availability are set by Quttera. Quttera is operated by Quttera Ltd, an independent third-party company unrelated to RCS LT. PCRisk.com may earn a referral commission when users sign up through this link.

External Links & Domains
305
External Links
All Clean
1
Iframes
Clean
34
Referenced Domains
All Clean
0
Flagged Resources
None Detected
http://substack.com/aboutNot flagged
http://substack.com/about?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/app?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/book?utm_source%3Dmenu-dropdownNot flagged
http://substack.com/book?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/brand?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/cdn-cgi/challenge-platform/scripts/jsd/main.jsNot flagged
http://substack.com/community-and-programs?utm_source%3Dmenu-dropdownNot flagged
http://substack.com/community-and-programs?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/contact?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/exploreNot flagged
http://substack.com/explore?utm_source%3Dmenu-dropdownNot flagged
http://substack.com/features?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
http://substack.com/food-writers?utm_source%3Dmenu-dropdownNot flagged
http://substack.com/food-writers?utm_source%3Dsubstack&amp%3Butm_medium%3Dweb&amp%3Butm_content%3DfooterNot flagged
Show 290 more...
aaronparnas.substack.comNot flagged
bsky.appNot flagged
calebsaysthings.substack.comNot flagged
embed.podcasts.apple.comNot flagged
enable-javascript.comNot flagged
georgesaunders.substack.comNot flagged
hunterharris.substack.comNot flagged
inagarten.substack.comNot flagged
js.sentry-cdn.comNot flagged
kareem.substack.comNot flagged
magasin.substack.comNot flagged
melindawmoyer.substack.comNot flagged
on.substack.comNot flagged
ottolenghi.substack.comNot flagged
pages.substack.comNot flagged
Show 19 more...
<iframe]?.*[src%3D"]?(https?:\/\/(embed\.)?podcasts\.apple\.com\/([^/]+)?\/?podcast\/([^/]+)\/?(id\d+)\??(i%3D(\d+))?)[\S]*/,u%3Dt%3D>{var e%3Blet a%3Dc.exec(t)%3Breturn a?{match:a[0],embedLink:a[2],countryCode:a[3],slug:a[4],podcastId:null%3D%3D(e%3Da[5])?void 0:e.substr(2),episodeId:a[7]}:{match:!1}},m%3D(0,s.C)({name:"applePodcast",nodeSpec:d,addCommands(){return{insertApplePodcast:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}}}),p%3Dfunction(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Breturn e&&!e.nodes.applePodcast?null:u(t).match||null},g%3Dasync t%3D>{let e%3Du(t),{slug:a,podcastId:r,episodeId:l,countryCode:o}%3De,s%3D(await i().get("/api/v1/apple_podcast").query({slug:a,podcastId:r,episodeId:l,country:o,appleUrl:t})).body%3Breturn(0,n._)({url:b(e),isEpisode:!!e.episodeId},s)},f%3Dasync function(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema%3Bif(!n.nodes.applePodcast)throw Error("ApplePodcast node not in schema")%3Breturn n.nodes.applePodcast.create(await g(t))},b%3Dt%3D>{let{countryCode:e,slug:a,podcastId:n,episodeId:r}%3Dt,i%3DencodeURIComponent(a||"")%3Breturn"https://embed.podcasts.apple.com/".concat(e||"us","/podcast/").concat(i,"/id").concat(n).concat(r?"?i%3D".concat(r):"")}},79589:function(t,e,a){a.d(e,{G:()%3D>u,L:()%3D>m})%3Bvar n%3Da(69277),r%3Da(50172),i%3Da(99595),l%3Da(18742),o%3Da(31211),s%3Da(29496),d%3Da(78495)%3Blet c%3D"image-asset-error"%3Bfunction u(t){let{assetErrorViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{attrs:{url:{default:""}},group:"block",defining:!0,parseDOM:[{tag:"div.".concat(c),getAttrs:d.t}],toDOM:t%3D>{if("undefined"!%3Dtypeof window)try{t.attrs.isEditor%3D!0%3Blet a%3Ddocument.createElement("div")%3Breturn a.className%3Dc,a.setAttribute("data-attrs",JSON.stringify(t.attrs)),e.renderWithI18NContext((0,r.h)(e.ImageAssetError,{node:(0,n._)({},t)}),a),a}catch(e){return console.error("Error rendering ImageAssetError",e),(0,o.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return["div",{"data-attrs":JSON.stringify((0,n._)({},t.attrs)),"data-component-name":"AssetErrorToDOM"},["picture",["img",{src:l.lJ,height:l.xS,width:l.GD}]]]},toDOMStatic:t%3D>["div",{"data-attrs":JSON.stringify((0,n._)({},t.attrs)),"data-component-name":"AssetErrorToDOMStatic"}]}}function m(t){let{assetErrorViews:e,errorPlaceholderBindings:a}%3Dt,n%3Du({assetErrorViews:e,errorPlaceholderBindings:a})%3Breturn(0,s.C)({name:"assetError",nodeSpec:n,addNodeView:()%3D>(0,i.gu)(e.ImageAssetError)})}},26082:function(t,e,a){a.d(e,{CB:()%3D>c,Hk:()%3D>u})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(50172),l%3Da(99595),o%3Da(31211),s%3Da(29496),d%3Da(78495)%3Bfunction c(t){let{audioViews:e,errorPlaceholderBindings:a}%3Dt,{AudioEmbedPlayer:n}%3De%3Breturn{attrs:{label:{default:null},mediaUploadId:{default:null},duration:{default:null},downloadable:{default:!1},isEditorNode:{default:!1}},group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.native-audio-embed",getAttrs:d.t}],toDOM:t%3D>{if("undefined"!%3Dtypeof window&&t.attrs.isEditorNode)try{let a%3Ddocument.createElement("div")%3Breturn a.className%3D"native-audio-embed",a.setAttribute("data-attrs",JSON.stringify(t.attrs)),e.renderWithI18NContext((0,i.h)(n,{label:t.attrs.label,src:"/api/v1/audio/upload/".concat(t.attrs.mediaUploadId,"/src"),duration:t.attrs.duration,downloadable:t.attrs.downloadable}),a),a}catch(e){return console.error("Error rendering AudioEmbedPlayer",e),(0,o.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return m(t)},toDOMStatic:t%3D>m(t)}}function u(t){let{audioViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn(0,s.C)({name:"audio",nodeSpec:c({audioViews:e,errorPlaceholderBindings:a}),addNodeView:()%3D>(0,l.gu)(e.AudioEditor),addCommands(){return{insertAudio:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:(0,r._)((0,n._)({},t),{isEditorNode:!0})})}}}})}let m%3Dt%3D>["div",{class:"native-audio-embed","data-component-name":"AudioPlaceholder","data-attrs":JSON.stringify(t.attrs)}]},55277:function(t,e,a){a.d(e,{c:()%3D>r,e4:()%3D>i})%3Bvar n%3Da(29496)%3Blet r%3D{attrs:{label:{default:null},url:{default:null},duration:{default:null}},group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.native-audio-url-embed",getAttrs:a(78495).t}],toDOM:t%3D>["div",{class:"native-audio-url-embed","data-attrs":JSON.stringify(t.attrs),"data-component-name":"AudioUrlPlaceholder"}]},i%3D(0,n.C)({name:"audioUrl",nodeSpec:r})},26116:function(t,e,a){a.d(e,{c:()%3D>s,ez:()%3D>u,lQ:()%3D>p,pK:()%3D>d})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(9036),l%3Da(91809),o%3Da(29496)%3Blet s%3D{attrs:{url:{default:""},title:{default:""},description:{default:""},thumbnail_url:{default:""},author:{default:""},embed_url:{default:""},is_album:{default:""}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.bandcamp-wrap",getAttrs:a(78495).t}],toDOM:t%3D>["div",{class:"bandcamp-wrap".concat(t.attrs.is_album?" album":""),"data-attrs":JSON.stringify(t.attrs),"data-component-name":"BandcampToDOM"},["iframe",{src:t.attrs.embed_url,frameborder:"0",gesture:"media",scrolling:"no",allowfullscreen:"true"}]],toDOMStatic:t%3D>{let{thumbnail_url:e,author:a,title:n,description:r,url:i}%3Dt.attrs%3Breturn(0,l.e)(e,n,(a||"").toString(),r,{targetUrl:i})}},d%3D(0,o.C)({name:"bandcamp",nodeSpec:s,addCommands(){return{insertBandcamp:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}}}),c%3D/^.*(https?\:\/\/(\S+)?.bandcamp.com\/(...+)\/[^\/]+(\/[^\/]+)?(\?[\#]*)?(\#.*)?).*$/,u%3Dt%3D>{var e%3Blet a%3Dc.exec(t)%3Breturn null!%3D(e%3Da&&a[1])?e:null},m%3Dasync t%3D>{let e,l%3D!!(e%3Dc.exec(t))&&"album"%3D%3D%3De[3],o%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default,s%3D"dark"%3D%3D%3D(0,i.m)(t).theme?"dark":"light",d%3D(await o.get("/api/v1/bandcamp").query({url:t.trim(),is_album:l,theme:s})).body%3Breturn(0,r._)((0,n._)({},d),{is_album:l})},p%3Dasync function(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Breturn(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema.nodes.bandcamp.create(await m(t))}},55029:function(t,e,a){a.d(e,{c:()%3D>i,u:()%3D>l})%3Bvar n%3Da(88285),r%3Da(76229)%3Blet i%3D{content:"block+",group:"block",parseDOM:[{tag:"blockquote"},{tag:"p",priority:100,getAttrs:t%3D>!(!t.style.marginLeft||t.style.marginLeft.startsWith("0"))&&{}}],toDOM:()%3D>["blockquote",0]},l%3Dr.Ay.extend({parseHTML:()%3D>i.parseDOM,addCommands(){return{setBlockquote:()%3D>t%3D>{let{state:e,commands:a}%3Dt%3Breturn!(!(0,n.rU)(e,"paragraph")||(0,n.rU)(e,"pullquote")||(0,n.rU)(e,"calloutBlock"))&&a.wrapIn(this.name)},toggleBlockquote:()%3D>t%3D>{let{state:e,commands:a}%3Dt%3Breturn!(!(0,n.rU)(e,"paragraph")||(0,n.rU)(e,"pullquote")||(0,n.rU)(e,"calloutBlock"))&&a.toggleWrap(this.name)},unsetBlockquote:()%3D>t%3D>{let{commands:e}%3Dt%3Breturn e.lift(this.name)}}}})},39729:function(t,e,a){a.d(e,{JQ:()%3D>d,Sy:()%3D>g,li:()%3D>m,wJ:()%3D>c})%3Bvar n%3Da(83673),r%3Da.n(n),i%3Da(16291),l%3Da(29496),o%3Da(78495),s%3Da(60639)%3Bfunction d(){return{attrs:{postId:{default:""},authorDid:{default:""},authorName:{default:""},authorHandle:{default:""},authorAvatarUrl:{default:""},text:{default:""},createdAt:{default:""},uri:{default:""},imageUrls:{default:[]}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDom:[{tag:"div.bluesky-wrap",getAttrs:o.t}],toDOM:t%3D>{var e,a,n,r%3Blet i,l,o,s,d%3Breturn e%3Dt,l%3DString(Math.random()).slice(2),o%3D(a%3De.attrs.authorDid,n%3De.attrs.postId,r%3Dl,"https://embed.bsky.app/embed/".concat(a,"/app.bsky.feed.post/").concat(n,"?id%3D").concat(r)),(s%3Ddocument.createElement("div")).className%3D"bluesky-wrap outer",s.style.height%3D"auto",s.style.display%3D"flex",s.style.marginBottom%3D"24px",s.dataset.attrs%3DJSON.stringify(e.attrs),s.setAttribute("data-component-name","BlueskyCreateBlueskyEmbed"),d%3Ddocument.createElement("iframe"),i%3De.attrs.postId,d.id%3D"bluesky-".concat(i),d.setAttribute("data-bluesky-id",l),d.src%3Do,d.width%3D"100%",d.style.border%3D"none",d.style.display%3D"block",d.style.flexGrow%3D"1",d.frameBorder%3D"0",d.scrolling%3D"no",s.appendChild(d),s},toDOMStatic:t%3D>(function(t){var e,a,n%3Blet r%3Dt.attrs,l%3Ddocument.createElement("div")%3Bl.className%3D"bluesky-wrap static",l.setAttribute("data-component-name","BlueskyCreateStaticBlueskyEmbed")%3Blet o%3Ddocument.createElement("div"),s%3Ddocument.createElement("img")%3Bs.className%3D"bluesky-avatar",r.authorAvatarUrl&&(s.src%3Dr.authorAvatarUrl),o.appendChild(s)%3Blet d%3Ddocument.createElement("span")%3Bd.className%3D"bluesky-author-name",d.textContent%3D"".concat(null!%3D(e%3Dr.authorName)?e:r.authorHandle," "),o.appendChild(d)%3Blet c%3Ddocument.createElement("span")%3Bc.className%3D"bluesky-author-handle",c.textContent%3D"@".concat(r.authorHandle),o.appendChild(c),l.appendChild(o)%3Blet u%3Ddocument.createElement("div")%3Bif(u.textContent%3Dr.text,l.appendChild(u),r.imageUrls.length>0&&r.imageUrls[0]){let t%3Ddocument.createElement("img")%3Bt.src%3Dr.imageUrls[0],l.append(t)}let m%3Ddocument.createElement("div")%3Bm.className%3D"bluesky-created-at",m.textContent%3D(0,i.A)(r.createdAt).toString(),l.appendChild(m)%3Blet p%3Ddocument.createElement("a")%3Breturn a%3Dr.authorDid,n%3Dr.postId,p.href%3D"https://bsky.app/profile/".concat(a,"/post/").concat(n,"?ref_src%3Dembed"),p.text%3D"View on Bluesky",l.appendChild(p),l})(t)}}function c(){let t%3Dd()%3Breturn(0,l.C)({name:"bluesky",nodeSpec:t,addCommands(){return{insertBluesky:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}}})}let u%3D/^https:\/\/bsky.app\/profile\/([^\/]+)\/post\/([^\?]+)(\?.+)?$/%3Bfunction m(t){let e%3Du.exec(t)%3Breturn u.lastIndex%3D0,e&&e[0]}async function p(t){var e,a,n,l,o,s,d,c,m,p,g,f,b,h%3Blet y,{url:v,blueskyBindings:w}%3Dt,k%3D(y%3Du.exec(v))&&y[1]&&y[2]?{handle:y[1],postId:y[2]}:null%3Bif(!k)return null%3Blet{handle:_,postId:C}%3Dk,S%3Dawait w.getBlueskyPostThread({url:(b%3D_,h%3DC,"https://public.api.bsky.app/xrpc/app.bsky.feed.getPostThread?uri%3Dat://".concat(b,"/app.bsky.feed.post/").concat(h))})%3Bif("blocked"in S.thread||"notFound"in S.thread)return null%3Blet E%3Dnull%3Breturn(null%3D%3D(a%3DS.thread)||null%3D%3D(e%3Da.post)?void 0:e.embed)&&((null%3D%3D(n%3DS.thread.post.embed)?void 0:n.thumbnail)?E%3Dnull%3D%3D(o%3DS.thread.post.embed)?void 0:o.thumbnail:(null!%3D(l%3DS.thread.post.embed.images)?l:[]).length>0&&(E%3DS.thread.post.embed.images[0].thumb)),{postId:C,authorDid:null!%3D(s%3DS.thread.post.author.did)?s:"",authorName:null!%3D(d%3DS.thread.post.author.displayName)?d:"",authorHandle:null!%3D(c%3DS.thread.post.author.handle)?c:"",authorAvatarUrl:null!%3D(m%3DS.thread.post.author.avatar)?m:"",text:null!%3D(p%3DS.thread.post.record.text)?p:"",createdAt:(0,i.A)(null!%3D(g%3DS.thread.post.record.createdAt)?g:"").toISOString(),uri:null!%3D(f%3DS.thread.post.uri)?f:"",imageUrls:r()([E])}}async function g(t,e){var n%3Blet{customSchema:r}%3Darguments.length>2&&void 0!%3D%3Darguments[2]?arguments[2]:{},i%3D(r?{schema:r}:await Promise.resolve().then(a.bind(a,86508))).schema%3Bif(!(null%3D%3D(n%3Di.nodes.bluesky)?void 0:n.create))throw new s.uV("Bluesky node schema is missing")%3Breturn i.nodes.bluesky.create(await p({url:t,blueskyBindings:e}))}},82086:function(t,e,a){a.d(e,{Tf:()%3D>S,xf:()%3D>C,yL:()%3D>_})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(79785),l%3Da(98111),o%3Da(39318),s%3Da(49807),d%3Da(82776),c%3Da(57324),u%3Da(4518),m%3Da(29496),p%3Da(78495)%3Bfunction g(){let t%3D(0,i._)(["Thanks for reading ","! Subscribe for free to receive new posts and support my work."])%3Breturn g%3Dfunction(){return t},t}function f(){let t%3D(0,i._)([""," is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber."])%3Breturn f%3Dfunction(){return t},t}function b(){let t%3D(0,i._)(["","! This post is public so feel free to share it."])%3Breturn b%3Dfunction(){return t},t}function h(){let t%3D(0,i._)(["Share ",""])%3Breturn h%3Dfunction(){return t},t}function y(){let t%3D(0,i._)(["Give a gift subscription"])%3Breturn y%3Dfunction(){return t},t}function v(){let t%3D(0,i._)(["Get ","% off a group subscription"])%3Breturn v%3Dfunction(){return t},t}function w(){let t%3D(0,i._)(["Get a group subscription"])%3Breturn w%3Dfunction(){return t},t}function k(){let t%3D(0,i._)(["Start writing today. Use the button below to create a Substack of your own."])%3Breturn k%3Dfunction(){return t},t}function _(){return{attrs:{url:{default:null},text:{default:null},action:{default:null},class:{default:null}},inline:!1,atom:!0,group:"block",draggable:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"p.button-wrapper[data-attrs]",priority:100,getAttrs:p.t}],toDOM:t%3D>S(t)}}function C(t){let{buttonViews:e}%3Dt%3Breturn(0,m.C)({name:"button",nodeSpec:_(),addCommands(){var t%3Dthis%3Breturn{insertSubscribeButton:t%3D>e%3D>{let{commands:a}%3De,n%3D{url:l.T.CHECKOUT_URL,text:(0,d.getSubscribeText)(t,{now:!0})}%3Breturn a.insertContent({type:this.name,attrs:n})},insertCustomButtonEditorV2:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})},insertSubscribeButtonWithPreamble:t%3D>e%3D>{let{commands:a,editor:n}%3De,{iTemplate:r,iString:i}%3DI18N.i({pub:t}),o%3Dt.author_name%3D%3D%3Dt.name?i("enabled"!%3D%3Dt.payments_state?"Thanks for reading! Subscribe for free to receive new posts and support my work.":"This Substack is reader-supported. To receive new posts and support my work, consider becoming a free or paid subscriber."):"enabled"!%3D%3Dt.payments_state?r(g(),t.name):r(f(),t.name),s%3D{url:l.T.CHECKOUT_URL,text:(0,d.getSubscribeText)(t),language:t.language}%3Breturn n.schema.nodes.ctaCaption?a.insertContent({type:"subscribeWidget",attrs:s,content:[n.schema.nodes.ctaCaption.create(null,[n.schema.text(o)]).toJSON()]}):(console.warn("ctaCaption is not present in schema, cannot insertSubscribeButtonWithPreamble"),!1)},insertCaptionedShareButton:t%3D>e%3D>{let{commands:a,editor:n}%3De,{iString:r,iTemplate:i}%3DI18N.i({pub:t}),o%3Di(b(),t.author_name%3D%3D%3Dt.name?"Thanks for reading":"Thanks for reading ".concat(t.name)),s%3D{url:l.T.SHARE_URL,text:r("Share")}%3Breturn n.state.schema.nodes.ctaCaption?a.insertContent({type:"captionedShareButton",attrs:s,content:[n.state.schema.nodes.ctaCaption.create(null,[n.state.schema.text(o)]).toJSON()]}):(console.warn("ctaCaption is not present in schema, cannot insertCaptionedShareButton"),!1)},insertSharePostButton:t%3D>e%3D>{let{commands:a}%3De,{iString:n}%3DI18N.i({pub:t}),r%3D{url:l.T.SHARE_URL,text:n("Share")}%3Breturn a.insertContent({type:this.name,attrs:r})},insertSharePubButton:t%3D>e%3D>{let{commands:a}%3De,{iTemplate:n}%3DI18N.i({pub:t}),r%3D{url:l.T.SHARE_PUB_URL,text:n(h(),t.name)}%3Breturn a.insertContent({type:this.name,attrs:r})},insertCommentsButton:t%3D>e%3D>{let{commands:a}%3De,{iString:n}%3DI18N.i({pub:t}),r%3D{url:l.T.HALF_MAGIC_COMMENTS_URL,text:n("Leave a comment")}%3Breturn a.insertContent({type:this.name,attrs:r})},insertGiftButton:t%3D>e%3D>{let{commands:a}%3De,{iTemplate:n}%3DI18N.i({pub:t}),r%3D{url:"".concat(l.T.CHECKOUT_URL,"&gift%3Dtrue"),text:(0,d.getSubscriptionSentenceWithCustomWords)(t,()%3D>n(y()),t%3D>"Give a gift ".concat(t.subscription))}%3Breturn a.insertContent({type:this.name,attrs:r})},insertDonateButton:t%3D>e%3D>{let{commands:a}%3De,{iString:n}%3DI18N.i({pub:t}),r%3D{url:"".concat(l.T.CHECKOUT_URL,"&donate%3Dtrue"),text:n("Donate Subscriptions")}%3Breturn a.insertContent({type:this.name,attrs:r})},insertSurveyButton:(t,a,n)%3D>r%3D>{let{commands:i}%3Dr%3Be.trackInsertSurveyButton({trackProps:{editorVersion:"2",surveyId:a.id}})%3Blet l%3D{url:"".concat((0,s.gAK)(t,a.id)),text:n}%3Breturn i.insertContent({type:this.name,attrs:l})},insertGroupSubscriptionButton:t%3D>{let{publication:e}%3Dt%3Breturn t%3D>{let{commands:a}%3Dt,{iTemplate:n}%3DI18N.i({pub:e}),r%3De.default_group_coupon,i%3D{url:"".concat(l.T.CHECKOUT_URL,"group%3Dtrue").concat(r?"&coupon%3D".concat(r):""),text:(0,d.getSubscriptionSentenceWithCustomWords)(e,()%3D>r&&e.default_group_coupon_percent_off?n(v(),e.default_group_coupon_percent_off.split(".")[0]):n(w()),t%3D>r&&e.default_group_coupon_percent_off?"Get ".concat(e.default_group_coupon_percent_off.split(".")[0],"% off a group ").concat(t.subscription):"Get a group ".concat(t.subscription))}%3Breturn a.insertContent({type:this.name,attrs:i})}},insertCoupon:function(a,i){let l%3Darguments.length>2&&void 0!%3D%3Darguments[2]?arguments[2]:{}%3Breturn s%3D>{let{commands:d}%3Ds,c%3D{url:(0,o.yRP)("".concat(a.base_url,"/subscribe"),(0,r._)((0,n._)({coupon:i.id},i.group_only&&{group:!0}),{utm_content:l.postId})),text:"Get ".concat(e.couponToString(i))}%3Breturn d.insertContent({type:t.name,attrs:c})}},insertReferralButton:t%3D>e%3D>{let{commands:a}%3De,{iString:n}%3DI18N.i({pub:t}),r%3D{url:"".concat(l.T.LEADERBOARD_URL,"&utm_source%3D").concat(c.VU.post),text:n("Refer a friend")}%3Breturn a.insertContent({type:this.name,attrs:r})},insertCaptionedWriterReferralButtonV2:t%3D>{let{writerReferralCode:e,publication:a,postId:n}%3Dt%3Breturn t%3D>{let{commands:r,state:i,dispatch:l}%3Dt%3Bif(!(0,u.c)(i,i.schema.nodes.button))return!1%3Blet{iString:s,iTemplate:d}%3DI18N.i({pub:a}),m%3Dd(k()),p%3D{url:"".concat((0,o.gWk)(e||""),"?utm_source%3D").concat(c.VU.substack,"&utm_context%3D").concat(c.rw.post,"&utm_content%3D").concat(n,"&utm_campaign%3D").concat(c._9.writerReferralButton),text:s("Start a Substack")}%3Bif(!i.schema.nodes.captionedWriterReferralButton)return console.warn("captionedWriterReferralButton is not present in schema, cannot insertCaptionedWriterReferralButtonV2"),!1%3Bif(!i.schema.nodes.ctaCaption)return console.warn("ctaCaption is not present in schema, cannot insertCaptionedWriterReferralButtonV2"),!1%3Blet g%3Di.schema.nodes.captionedWriterReferralButton.create(p,i.schema.nodes.ctaCaption.create(null,[i.schema.text(m)]))%3Breturn!l||r.insertContent(g.toJSON())}}}}})}let S%3Dt%3D>{let e%3Ddocument.createElement("span")%3Be.textContent%3Dt.attrs.text%3Blet a%3Ddocument.createElement("a")%3Ba.className%3D"button primary",t.attrs.class&&(a.className+%3D" ".concat(t.attrs.class)),a.href%3Dt.attrs.url,a.appendChild(e),a.addEventListener("click",t%3D>{/^.*%%.*%%/.test(a.href)&&(t.preventDefault(),(0,d.handleDocumentLinkClick)(a.href))})%3Blet n%3Ddocument.createElement("p")%3Breturn n.className%3D"button-wrapper",n.setAttribute("data-attrs",JSON.stringify(t.attrs)),n.setAttribute("data-component-name","ButtonCreateButton"),n.appendChild(a),n}},32422:function(t,e,a){a.d(e,{c:()%3D>r,p:()%3D>i})%3Bvar n%3Da(29496)%3Blet r%3D{content:"text*",group:"block",selectable:!0,defining:!0,isolating:!0,parseDOM:[{tag:"figcaption"}],toDOM:()%3D>["figcaption",{class:"image-caption"},0]},i%3D(0,n.C)({name:"caption",nodeSpec:r})},82311:function(t,e,a){a.d(e,{Pr:()%3D>c,c:()%3D>s,k5:()%3D>u})%3Bvar n%3Da(69277),r%3Da(98111),i%3Da(82086),l%3Da(29496),o%3Da(78495)%3Blet s%3Dt%3D>({content:"ctaCaption",attrs:{url:{default:null},text:{default:null}},inline:!1,group:"block",draggable:!0,atom:!1,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.captioned-button-wrap",getAttrs:o.t}],toDOM:e%3D>{let a%3Ddocument.createElement("div")%3Ba.className%3D"captioned-button-wrap",a.setAttribute("data-attrs",JSON.stringify(e.attrs)),a.setAttribute("data-component-name","CaptionedButtonToDOM")%3Blet r%3Ddocument.createElement("div")%3Br.className%3D"preamble"%3Blet l%3D(0,i.Tf)({attrs:(0,n._)({},e.attrs,t)})%3Breturn a.appendChild(r),a.appendChild(l),{dom:a,contentDOM:r}}}),d%3Dt%3D>{let{substitutionAttrs:e,name:a}%3Dt%3Breturn(0,l.C)({name:a,nodeSpec:s(e)})},c%3Dd({name:"captionedShareButton",substitutionAttrs:{url:r.T.SHARE_URL}}),u%3Dd({name:"captionedWriterReferralButton",substitutionAttrs:{hasDynamicSubstitutions:!1}})},34202:function(t,e,a){a.d(e,{c:()%3D>r,f:()%3D>i})%3Bvar n%3Da(29496)%3Blet r%3D{content:"block caption*",atom:!1,selectable:!0,isolating:!1,defining:!0,draggable:!0,group:"block",parseDOM:[{tag:"figure"}],toDOM:()%3D>["div",{class:"captioned-image-container"},["figure",0]],toDOMStatic:()%3D>["div",{class:"captioned-image-container-static"},["figure",0]]},i%3D(0,n.C)({name:"captionedImage",nodeSpec:r})},83485:function(t,e,a){a.d(e,{Y:()%3D>d,z:()%3D>s})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(50172),l%3Da(31211),o%3Da(29496)%3Bfunction s(t){let{cashtagViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{attrs:{symbol:{default:""}},atom:!0,editable:!1,selectable:!0,isolating:!1,defining:!0,draggable:!1,inline:!0,group:"inline",parseDOM:[{tag:".cashtag-wrap",getAttrs:t%3D>{try{return JSON.parse(t.getElementsByTagName("a")[0].getAttribute("data-attrs"))}catch(t){return!1}}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window)try{let a%3Ddocument.createElement("span")%3Breturn a.className%3D"cashtag-wrap",e.renderWithI18NContext((0,i.h)(e.Cashtag,{symbol:t.attrs.symbol.trim()}),a),a}catch(e){return console.error("Error rendering Cashtag",e),(0,l.D)({msg:null,node:t,err:e,group:"inline",errorPlaceholderBindings:a})}return["span",{class:"cashtag-wrap","data-attrs":JSON.stringify(t.attrs),"data-component-name":"CashtagToDOM"}]},toDOMStatic:t%3D>["span",{class:"cashtag-wrap","data-component-name":"CashtagToDOMStatic","data-attrs":JSON.stringify((0,r._)((0,n._)({},t.attrs),{prependSymbol:!0,isStatic:!0}))}]}}function d(t){let{cashtagViews:e,errorPlaceholderBindings:a}%3Dt,n%3Ds({cashtagViews:e,errorPlaceholderBindings:a})%3Breturn(0,o.C)({name:"cashtag",nodeSpec:n})}},30909:function(t,e,a){a.d(e,{A:()%3D>o,G:()%3D>s})%3Bvar n%3Da(65768),r%3Da(8037),i%3Da(29496)%3Blet l%3Dnew n.Ay({actionButtonAttr:"href",substackType:"comic",mimeTypesToSignature:r.Rq,actionButtonText:"Read now"}),o%3Dl,s%3D(0,i.C)({name:"comic",nodeSpec:l.nodeSpec})},42985:function(t,e,a){a.d(e,{XB:()%3D>p,au:()%3D>u,r1:()%3D>c,w1:()%3D>f,x7:()%3D>h})%3Bvar n%3Da(69277),r%3Da(50172),i%3Da(70189),l%3Da(49807),o%3Da(57324),s%3Da(31211),d%3Da(29496)%3Bfunction c(t){let{commentViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{attrs:{url:{default:""},commentId:{default:null},comment:{default:null}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.comment",getAttrs:t%3D>{if(t instanceof HTMLElement)try{var e%3Breturn JSON.parse(null!%3D(e%3Dt.getAttribute("data-attrs"))?e:"")}catch(t){}return!1}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window)try{let a%3Ddocument.createElement("div")%3Breturn Object.assign(a,{className:"comment","data-attrs":JSON.stringify(t.attrs)}),e.renderWithI18NContext((0,r.h)(e.CommentEmbed,{commentId:t.attrs.commentId}),a),a}catch(e){return console.error("Error rendering CommentEmbed",e),(0,s.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return m(t)},toDOMStatic:t%3D>m(t)}}function u(t){let{commentViews:e,errorPlaceholderBindings:a}%3Dt,n%3Dc({commentViews:e,errorPlaceholderBindings:a})%3Breturn(0,d.C)({name:"comment",nodeSpec:n,addCommands(){return{insertComment:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}}})}function m(t){return["div",{class:"comment","data-attrs":JSON.stringify(t.attrs),"data-component-name":"CommentPlaceholder"}]}function p(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Bif(e&&!e.nodes.comment)return null%3Blet a%3D(0,l.Dlv)(t)%3Breturn a&&(0,i.EX)(a.pathname)?t:null}async function g(t){let e,r%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default,s%3D(0,l.Dlv)(t),d%3Ds&&(0,i.EX)(s.pathname)%3Bif(!d)return console.warn("pathname did not match"),null%3Btry{let{body:{item:{comment:{id:t,date:a,edited_at:n,body:i,body_json:l,restacks:o,reaction_count:s,attachments:c,name:u,user_id:m,photo_url:p,user_bestseller_tier:g,userStatus:f}}}}%3Dawait r.get("/api/v1/reader/comment/".concat(d.id))%3Be%3D{comment:{id:t,date:a,edited_at:n,body:i,body_json:l,restacks:o,reaction_count:s,attachments:c,name:u,user_id:m,photo_url:p,user_bestseller_tier:g,userStatus:f}}}catch(t){return console.warn(t),null}let c%3D(0,l.AF5)(d,{urlParams:{utm_source:o.VU.commentEmbed}})%3Breturn(0,n._)({url:c,commentId:d.id},e)}async function f(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema,r%3Dawait g(t)%3Breturn r?n.nodes.comment.create(r):null}async function b(){let t,e%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default%3Btry{t%3D(await e.get("/api/v1/reader/feed/last-note")).body%3Blet a%3D(0,l.Zgx)(t)%3Breturn g(a)}catch(t){return null}}async function h(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema,r%3Dawait b()%3Breturn r?n.nodes.comment.create(r):null}},79431:function(t,e,a){a.d(e,{Bp:()%3D>g,Cp:()%3D>d,D0:()%3D>s,so:()%3D>b})%3Bvar n%3Da(50172),r%3Da(49807),i%3Da(57324),l%3Da(31211),o%3Da(29496)%3Bfunction s(t){let{communityChatViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{attrs:{url:{default:""},subdomain:{default:null},pub:{default:null}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.community-chat",getAttrs:t%3D>{if(t instanceof HTMLElement)try{var e%3Breturn JSON.parse(null!%3D(e%3Dt.getAttribute("data-attrs"))?e:"")}catch(t){}return!1}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window)try{let a%3Ddocument.createElement("div")%3Bif(Object.assign(a,{className:"community-chat","data-attrs":JSON.stringify(t.attrs)}),!t.attrs.pub||!t.attrs.subdomain){let t%3Ddocument.createElement("div")%3Breturn t.innerText%3D"Could not load subscriber chat link",a.appendChild(t),a}return e.renderWithI18NContext((0,n.h)(e.CommunityChatEmbed,{pub:t.attrs.pub,subdomain:t.attrs.subdomain}),a),a}catch(e){return console.error("Error rendering CommunityChatEmbed",e),(0,l.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return c(t)},toDOMStatic:t%3D>c(t)}}function d(t){let{communityChatViews:e,errorPlaceholderBindings:a}%3Dt,n%3Ds({communityChatViews:e,errorPlaceholderBindings:a})%3Breturn(0,o.C)({name:"communityChat",nodeSpec:n,addCommands(){return{insertCommunityChat:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})},insertCommunityChatEmbed:t%3D>e%3D>{var a,n%3Blet{commands:l}%3De,o%3D{url:(0,r.xWO)({pubKey:t.subdomain,utm_source:i.VU.chatEmbed}),subdomain:t.subdomain,pub:{id:t.id,name:t.name,author_name:null!%3D(a%3Dt.primary_profile_name)?a:t.author_name,author_photo_url:null!%3D(n%3Dt.primary_profile_photo_url)?n:t.author_photo_url}}%3Breturn l.insertContent({type:this.name,attrs:o})},insertVisitThreadButton:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertCommunityChatEmbed(t)}}}})}function c(t){return["div",{class:"community-chat","data-attrs":JSON.stringify(t.attrs),"data-component-name":"CommunityChatRenderPlaceholder"}]}let u%3D/^https?:\/\/open\.substack\.com(?:\.localhost:5000)?\/pub\/([^/]+)\/chat(\?.*)?$/,m%3D/^https?:\/\/([^.]+)\.substack\.com(?:\.localhost:5000)?\/chat(\?.*)?$/,p%3D/^https?:\/\/substack\.com(?:\.localhost:5000)?\/chat\/(\d+)/%3Bfunction g(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Bif(e&&!e.nodes.communityChat)return null%3Blet a%3D(0,r.Dlv)(t)%3Breturn a&&a.pathname.match(/^(\/pub\/[^/]+)?\/chat($|\/)/)?t:null}async function f(t){var e,n,l%3Blet o,s%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default,d%3D(o%3D(e%3Dt).match(u))||(o%3De.match(m))?null!%3D(n%3Do[1])?n:null:null,c%3Dnull%3Btry{if(d){let{body:e}%3Dawait s.get("/api/v1/publication/chat-embed").query({subdomain:d,url:t})%3Bc%3De}else{let e,a%3D(e%3Dt.match(p))&&null!%3D(l%3De[1])?l:null%3Bif(a){let t%3Dawait s.get("/api/v1/publication/public/".concat(a))%3Bc%3Dt.body.pub,d%3Dt.body.pub.subdomain}}}catch(t){}return c?{url:(0,r.xWO)({pubKey:c.subdomain,utm_source:i.VU.chatEmbed}),subdomain:d,pub:c}:null}async function b(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema,r%3Dawait f(t)%3Breturn r?n.nodes.communityChat?n.nodes.communityChat.create(r):(console.warn("communityChat node not found in schema"),null):null}},45595:function(t,e,a){a.d(e,{I_:()%3D>m,RD:()%3D>f,oM:()%3D>h,ro:()%3D>u})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(50172),l%3Da(99595),o%3Da(49807),s%3Da(57324),d%3Da(31211),c%3Da(29496)%3Bfunction u(t){let{communityPostViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{attrs:{url:{default:""},postId:{default:null},communityPost:{default:null},author:{default:null}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.community-post",getAttrs:t%3D>{if(t instanceof HTMLElement)try{var e%3Breturn JSON.parse(null!%3D(e%3Dt.getAttribute("data-attrs"))?e:"")}catch(t){}return!1}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window)try{let a%3Ddocument.createElement("div")%3Breturn Object.assign(a,{className:"community-post","data-attrs":JSON.stringify(t.attrs)}),e.renderWithI18NContext((0,i.h)(e.CommunityPostEmbed,{postId:t.attrs.postId}),a),a}catch(e){return console.error("Error rendering CommunityPostEmbed",e),(0,d.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return p(t)},toDOMStatic:t%3D>p(t)}}function m(t){let{communityPostViews:e,errorPlaceholderBindings:a}%3Dt,n%3Du({communityPostViews:e,errorPlaceholderBindings:a})%3Breturn(0,c.C)({name:"communityPost",nodeSpec:n,addCommands(){return{insertCommunityPost:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}},addNodeView:()%3D>(0,l.gu)(e.CommunityPostEditor)})}function p(t){return["div",{class:"community-post","data-attrs":JSON.stringify(t.attrs),"data-component-name":"CommunityPostPlaceholder"}]}let g%3D/^\/chat(?:\/\d+)?\/posts?\/([-A-Fa-f0-9]+)$/%3Bfunction f(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Bif(e&&!e.nodes.communityPost)return null%3Blet a%3D(0,o.Dlv)(t)%3Breturn a&&a.pathname.match(g)?t:null}async function b(t){var e,i%3Blet l,d%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default,c%3D(0,o.Dlv)(t),u%3Dc&&(null%3D%3D(e%3Dc.pathname.match(g))?void 0:e[1])%3Bif(!u)return null%3Btry{l%3D(await d.get("/api/v1/community/posts/".concat(u))).body}catch(t){if(!(t instanceof Error))return null%3B{let e%3Dt.response%3Bif(402!%3D%3De.status||null%3D%3D(i%3De.body)||!i.status)return null%3Bl%3Dnull%3D%3De?void 0:e.body}}let{user:m,communityPost:{id:p,publication_id:f,body:b,audience:h,type:y,media_assets:v,link_url:w,threadMediaUploads:k},status:_}%3Dl,C%3D{author:m},S%3D(null%3D%3Dk?void 0:k.length)&&k[0]?k[0].mediaUpload:null%3B"all_subscribers"!%3D%3Dh||_&&"FREE_SUBSCRIPTION_REQUIRED"!%3D%3D_||(C%3D(0,r._)((0,n._)({},C),{communityPost:{id:p,publication_id:f,body:b,audience:h,type:y,media_assets:v,threadMediaUploads:S?[{mediaUpload:S}]:[],link_url:w?(0,o.yRP)(w,{utm_source:s.VU.postEmbed}):null}}))%3Blet E%3D(0,o.sWz)({postId:u,utm_source:s.VU.threadEmbed})%3Breturn(0,n._)({url:E,postId:u},C)}async function h(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema,r%3Dawait b(t)%3Breturn r?n.nodes.communityPost.create(r):null}},60282:function(t,e,a){a.d(e,{c:()%3D>r,x:()%3D>i})%3Bvar n%3Da(29496)%3Blet r%3D{content:"text*",group:"block",draggable:!1,selectable:!0,isolating:!0,defining:!0,atom:!1,parseDOM:[{tag:"p.cta-caption"}],toDOM:()%3D>["p",{class:"cta-caption"},0]},i%3D(0,n.C)({name:"ctaCaption",nodeSpec:r})},70679:function(t,e,a){a.d(e,{I8:()%3D>s,c:()%3D>o,eZ:()%3D>p,nV:()%3D>b,t7:()%3D>u})%3Bvar n%3Da(99851),r%3Da(39318),i%3Da(8283),l%3Da(29496)%3Blet o%3D{attrs:{url:{default:""},thumbnail_url:{default:""},thumbnail_url_full:{default:""},height:{default:""},title:{default:""},description:{default:""}},inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDom:[{tag:"div.datawrapper-wrap",getAttrs:a(78495).t}],toDOM:t%3D>f(t),toDOMStatic:t%3D>g(t)},s%3D(0,l.C)({name:"datawrapper",nodeSpec:o,addCommands(){return{insertDatawrapper:t%3D>e%3D>{let{commands:a}%3De%3Breturn a.insertContent({type:this.name,attrs:t})}}}}),d%3D/^.*https?:\/\/datawrapper\.dwcdn\.net\/.*$/,c%3D/^.*https?:\/\/(www\.)?datawrapper.de\/_\/.*$/,u%3Dt%3D>{let e%3Dd.exec(t)%3Bif(e)return e[0]%3Blet a%3Dc.exec(t)%3Breturn a&&a[0]},m%3Dasync t%3D>{let e%3D(await Promise.resolve().then(a.t.bind(a,15734,23))).default%3Breturn(await e.get("/api/v1/datawrapper-embed").query({url:t.trim()})).body},p%3Dasync function(t){let{customSchema:e}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},n%3D(e?{schema:e}:await Promise.resolve().then(a.bind(a,86508))).schema%3Bif(!n.nodes.datawrapper)throw Error("Datawrapper node not found in schema")%3Breturn n.nodes.datawrapper.create(await m(t))},g%3Dfunction(t){let{}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{},e%3Ddocument.createElement("div")%3Be.className%3D"datawrapper-wrap static",e.setAttribute("data-component-name","DatawrapperToDOMStatic")%3Blet a%3Ddocument.createElement("a")%3Bif(a.href%3Dt.attrs.url.replace(/embed\//,""),a.setAttribute("target","_blank"),t.attrs.title){let a%3Ddocument.createElement("div")%3Ba.className%3D"datawrapper-title",a.innerHTML%3Dt.attrs.title,e.appendChild(a)}if(t.attrs.description){let a%3Ddocument.createElement("div")%3Ba.className%3D"datawrapper-description",a.innerHTML%3Dt.attrs.description,e.appendChild(a)}let n%3Ddocument.createElement("div"),i%3Ddocument.createElement("img")%3Breturn i.className%3D"datawrapper-wrap thumbnail",i.src%3D(0,r.dJ9)(t.attrs.thumbnail_url,640),i.style.backgroundImage%3D"url(".concat(t.attrs.thumbnail_url,")"),t.attrs.belowTheFold&&i.setAttribute("loading","lazy"),a.append(i),n.append(a),e.appendChild(n),e},f%3Dt%3D>{let e%3Ddocument.createElement("div")%3Be.id%3D"datawrapper-iframe",e.className%3D"datawrapper-wrap outer",e.dataset.attrs%3DJSON.stringify(t.attrs),e.setAttribute("data-component-name","DatawrapperToDOM")%3Blet a%3Ddocument.createElement("iframe")%3Ba.id%3D"iframe-datawrapper",a.className%3D"datawrapper-iframe",a.src%3Dt.attrs.url,a.width%3D"730",a.height%3Dt.attrs.height||"455",a.frameBorder%3D"0",a.scrolling%3D"no",t.attrs.belowTheFold&&a.setAttribute("loading","lazy"),e.appendChild(a)%3Blet n%3Ddocument.createElement("script")%3Breturn n.type%3D"text/javascript",n.text%3Di.I,e.appendChild(n),e}%3Bclass b{constructor(t){(0,n._)(this,"dom",void 0)%3Bconst e%3Df(t),a%3De.querySelector(".datawrapper-iframe"),r%3Ddocument.createElement("div")%3Br.className%3D"datawrapper-screen",r.addEventListener("dblclick",()%3D>{var t%3Br.classList.add("sunken"),null%3D%3D(t%3Da.focus)||t.call(a)}),null%3D%3Da||a.addEventListener("blur",()%3D>{r.classList.remove("sunken")}),e.appendChild(r),this.dom%3De}}},21577:function(t,e,a){a.d(e,{TG:()%3D>k,jU:()%3D>h,lL:()%3D>w,mB:()%3D>y})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(32641),l%3Da(50172),o%3Da(26469),s%3Da(99595),d%3Da(44383),c%3Da.n(d),u%3Da(15734),m%3Da.n(u),p%3Da(49807),g%3Da(31211),f%3Da(29496)%3Blet b%3D"digest-post-embed"%3Bfunction h(t){let{digestPostEmbedViews:e,digestPostEmbedBindings:a,errorPlaceholderBindings:i}%3Dt%3Breturn{attrs:{nodeId:{default:null},caption:{default:null},cta:{default:null},showBylines:{default:!0},size:{default:null},isEditorNode:{default:!1},title:{default:null},publishedBylines:{default:null},post_date:{default:null},cover_image:{default:null},cover_image_alt:{default:null},canonical_url:{default:null},section_name:{default:null},video_upload_id:{default:null},id:{default:null},type:{default:null},reaction_count:{default:null},comment_count:{default:null},publication_id:{default:null},publication_name:{default:null},publication_logo_url:{default:null},belowTheFold:{default:!1},youtube_url:{default:null},show_links:{default:null},feed_url:{default:null}},group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,editable:!1,parseDOM:[{tag:".".concat(b),getAttrs:t%3D>{if("string"%3D%3Dtypeof t)return!1%3Btry{var e%3Blet i%3DJSON.parse(null!%3D(e%3Dt.getAttribute("data-attrs"))?e:"{}")%3Breturn(0,r._)((0,n._)({},i),{nodeId:a.uuidV4()})}catch(t){return!1}}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window&&t.attrs.isEditorNode)try{let a%3Ddocument.createElement("div")%3Breturn a.className%3Db,a.setAttribute("data-attrs",JSON.stringify(t.attrs)),e.renderWithI18NContext((0,l.h)(e.DigestPostEmbedWeb,(0,r._)((0,n._)({},t.attrs),{caption:t.attrs.caption,cta:t.attrs.cta,showBylines:t.attrs.showBylines,size:t.attrs.size||void 0,isEditor:!0,pub:window._preloads.pub})),a),a}catch(e){return console.error("Error rendering DigestPostEmbedWeb",e),(0,g.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:i})}return v(t)},toDOMStatic:t%3D>["div",{class:b,"data-attrs":JSON.stringify((0,n._)({isEmail:!0},t.attrs))}]}}function y(t){let{digestPostEmbedViews:e,digestPostEmbedBindings:a,errorPlaceholderBindings:n}%3Dt%3Breturn(0,f.C)({name:"digestPostEmbed",nodeSpec:h({digestPostEmbedViews:e,digestPostEmbedBindings:a,errorPlaceholderBindings:n}),addNodeView:()%3D>(0,s.gu)(e.DigestPostEditor),addCommands:()%3D>({convertDigestPostEmbedToLinkV2:t%3D>{let{pos:e,url:a}%3Dt%3Breturn t%3D>{let{dispatch:n,state:r,chain:i}%3Dt%3Bif(n){let t%3Dr.tr,n%3De+a.length%3Breturn i().setNodeSelection(e).deleteSelection().command(t%3D>{let{tr:n}%3Dt%3Breturn n.insertText(a,e),!0}).command(t%3D>{let{tr:i}%3Dt%3Breturn r.schema.marks.link?(i.addMark(e,n+1,r.schema.marks.link.create({text:a,href:a})),!0):(console.warn("Link mark not in schema, cannot convert digest to v2"),!1)}).setTextSelection(o.U3.create(t.doc,e,n+1)).scrollIntoView().focus(n+2).run()}return!0}},convertDigestPostEmbedToEmbeddedPostV2:t%3D>{let{pos:e,attrs:a}%3Dt%3Breturn t%3D>{let{dispatch:n,chain:r}%3Dt%3Bif(n){let t%3D{id:a.id,url:a.url,title:a.title,publication_id:a.publication_id,publication_name:a.publication_name,publication_logo_url:a.publication_logo_url,date:a.post_date,comment_count:a.comment_count,bylines:a.publishedBylines}%3Breturn r().setNodeSelection(e).deleteCurrentNode().insertContent({type:"embeddedPost",attrs:t}).run()}return!0}}})})}let v%3Dt%3D>["div",{class:b,"data-attrs":JSON.stringify(t.attrs)}],w%3Dfunction(t){var e,a,n,r%3Blet{customSchema:i}%3Darguments.length>1&&void 0!%3D%3Darguments[1]?arguments[1]:{}%3Bif(i&&!i.nodes.digestPostEmbed)return null%3Blet l%3D(0,p.Dlv)(t)%3Bif(!l)return null%3Blet o%3D(0,p.JQq)({url:t,currentSubdomain:null%3D%3D(a%3Dwindow._preloads)||null%3D%3D(e%3Da.pub)?void 0:e.subdomain,currentCustomDomain:null%3D%3D(r%3Dwindow._preloads)||null%3D%3D(n%3Dr.pub)?void 0:n.custom_domain})%3Breturn l&&(l.pathname.startsWith("/p/")||(0,p.Sns)(l))&&o?t:null},k%3Dasync t%3D>{let{pub:e,post:a}%3D(await m().get("/api/v1/posts/digest_embed").query({url:t.trim()})).body,{truncated_body_text:l}%3Da,o%3D(0,i._)(a,["truncated_body_text"]),{id:s,name:d,logo_url:u}%3De%3Ba.is_draft&&alert("This post has not been published yet. Check that the embed looks correct before publishing.")%3Blet p%3Dc()(o,["title","publishedBylines","post_date","cover_image","cover_image_alt","canonical_url","section_name","id","type","reaction_count","comment_count","video_upload_id","youtube_url","show_links","feed_url"])%3Breturn(0,r._)((0,n._)({caption:null!%3Dl?l:"",cta:a.video_upload_id?"Watch now":"podcast"%3D%3D%3Da.type?"Listen now":"Read full story",size:"lg",isEditor:!0},p),{publishedBylines:p.publishedBylines.map(t%3D>c()(t,["id","name","bio","photo_url","is_guest","bestseller_tier","primaryPublicationSubscribeUrl","primaryPublicationUrl","primaryPublicationName","primaryPublicationId"])),publication_id:s,publication_name:d,publication_logo_url:null!%3Du?u:""})}},85052:function(t,e,a){a.d(e,{eW:()%3D>g,p_:()%3D>f,qs:()%3D>p})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(50172),l%3Da(88285),o%3Da(99595),s%3Da(65112),d%3Da(31211),c%3Da(33333),u%3Da(29496)%3Blet m%3D"directMessage"%3Bfunction p(t){let{directMessageViews:e,errorPlaceholderBindings:a}%3Dt%3Breturn{name:m,group:"block",selectable:!0,inline:!1,draggable:!0,atom:!0,attrs:(0,s.lh)({attrs:{userId:{default:null,keepOnSplit:!1},userName:{default:null,keepOnSplit:!1},canDm:{default:null,keepOnSplit:!1},dmUpgradeOptions:{default:null,keepOnSplit:!1},isEditorNode:{default:!1,keepOnSplit:!1}}}),parseDOM:[{tag:"div.directMessage",getAttrs:t%3D>{try{if(t instanceof HTMLElement){let e%3Dt.getAttribute("data-attrs")%3Bif(e)return JSON.parse(e)}}catch(t){}return!1}}],toDOM:t%3D>{if("undefined"!%3Dtypeof window&&t.attrs.isEditorNode)try{t.attrs.isEditor%3D!0%3Blet a%3Ddocument.createElement("div")%3Breturn a.className%3Dm,a.setAttribute("data-attrs",JSON.stringify(t.attrs)),e.renderWithI18NContext((0,i.h)(e.DirectMessageToDOM,{node:(0,n._)({},t)}),a),a}catch(e){return console.error("Error rendering DirectMessageEditor",e),(0,d.D)({msg:null,node:t,err:e,group:"block",errorPlaceholderBindings:a})}return["div",{class:"".concat(m," button"),"data-attrs":JSON.stringify((0,n._)({},t.attrs)),"data-component-name":"DirectMessageToDOM"}]},toDOMStatic:t%3D>["div",{class:m,"data-attrs":JSON.stringify((0,r._)((0,n._)({},t.attrs),{isEmail:!0})),"data-component-name":"DirectMessageToDOMStatic"}]}}let g%3Dl.YY.create({name:"directMessageExtension",addCommands:()%3D>({insertDirectMessage:t%3D>e%3D>{let{dispatch:a,state:n}%3De,{user:r}%3Dt,i%3D{userName:r.name,userId:r.id,isEditorNode:!0}%3Breturn a&&a((0,c.DL)(n,n.schema.nodes.directMessage.create(i))),!0}})})%3Bfunction f(t){let{directMessageViews:e,errorPlaceholderBindings:a}%3Dt,n%3Dp({directMessageViews:e,errorPlaceholderBindings:a})%3Breturn(0,u.C)({name:"directMessage",nodeSpec:n,addCommands:g.addCommands,addNodeView:()%3D>(0,o.gu)(e.DirectMessageEditor)})}},26746:function(t,e,a){a.d(e,{A:()%3D>o,F:()%3D>s})%3Bvar n%3Da(65768),r%3Da(8037),i%3Da(29496)%3Blet l%3Dnew n.Ay({actionButtonAttr:null,substackType:"ebook",mimeTypesToSignature:r.qy,actionButtonText:null}),o%3Dl,s%3D(0,i.C)({name:"ebook",nodeSpec:l.nodeSpec})},97966:function(t,e,a){a.d(e,{TG:()%3D>m,Xs:()%3D>f,c:()%3D>u,iO:()%3D>p})%3Bvar n%3Da(69277),r%3Da(70408),i%3Da(39318),l%3Da(70189),o%3Da(49807),s%3Da(82776),d%3Da(57324),c%3Da(29496)%3Blet u%3D{attrs:{id:{default:null},url:{default:null},publication_id:{default:null},publication_name:{default:null},publication_logo_url:{default:null},title:{default:null},truncated_body_text:{default:null},date:{default:null},like_count:{default:null},comment_count:{default:null},bylines:{default:null},utm_campaign:{default:null},belowTheFold:{default:!1},type:{default:null},language:{default:"en"}},untrackedAttrs:["truncated_body_text","bylines"],inline:!1,group:"block",draggable:!0,atom:!0,selectable:!0,isolating:!0,defining:!0,parseDOM:[{tag:"div.embedded-post-wrap",getAttrs:a(78495).t}],toDOM:t%3D>Not flagged
substack.com Overview

Description of substack.com

Substack appears to be a large publishing and newsletter platform focused on independent writers, journalists, podcasters, and other creators. The homepage and metadata describe it as an app for independent voices, and the interface shown in the screenshot includes subscriptions, chat, activity, discovery, and creator onboarding features. Its structure suggests a hybrid of blogging, email publishing, and social feed functionality.

Based on the domain, branding, and visible site elements, the platform is operated by Substack as a mainstream web service rather than a single-purpose personal site. It allows creators to publish posts, build subscriber audiences, and in some cases monetize through paid subscriptions. The very strong traffic ranking and long domain history are consistent with an established online media and creator-platform service.

Safety Assessment for substack.com

Scan results appear largely favorable at the time of this scan. Only 1 out of 91 security engines reported a detection, while blacklist checks were clean across the listed databases. The malware scan marked the site as suspicious and identified one JavaScript file on the associated content delivery domain, but no specific malware family or threat name was provided, and no external links or referenced domains were flagged.

Context reduces the weight of that isolated finding. The domain has been registered for many years, has a very strong popularity ranking, and presents as a well-known publishing platform with substantial legitimate usage. Large dynamic platforms often serve complex JavaScript bundles that can occasionally trigger heuristic or false-positive alerts in automated scanners.

Based on available data, no widespread or strongly corroborated threats were detected at the time of this scan. Visitors should still use normal caution with user-generated content and outbound links hosted on any large publishing platform.

Technical Description

The site was served over HTTPS with a valid SSL/TLS certificate issued by a major certificate authority, and the infrastructure appears to be fronted by Cloudflare. DNS points to Cloudflare nameservers, the web server is identified as Cloudflare, and the resolved IP address is associated with Cloudflare hosting in Canada. This setup is common for performance optimization, DDoS mitigation, and edge delivery.

DNSSEC appears to be unsigned, which is not unusual but means DNS responses do not benefit from that additional authenticity layer. No major infrastructure-level issues are evident from the provided data. One flagged JavaScript bundle on the platform's CDN may warrant monitoring, but by itself it does not conclusively indicate compromise at the time of this scan.

HTTP Redirect Chain
No redirects detected - direct connection to destination
Website Insights
#522
Tranco Rank
Extremely Popular
Visitors >100M/mo
Category: News & Media
Rank History (30 days)
Mar 23 May 2
15 cookies detected
Essential12
Analytics2
Advertising1
Social0
15 1st party cookies
0 3rd party (trackers)
Dispute This Score For website owners
Believe this score is inaccurate?
If you are the website owner and believe the scan results contain errors or false positives, you can submit a dispute for manual review. Our team typically responds within 1-2 business days.
You will be asked to verify your email before the dispute can be processed.
By submitting this form, you confirm that the information provided is accurate. Disputes are reviewed manually and results may take up to 48 hours to update.
One more step..
To submit your dispute for substack.com, please click the verification link we just emailed you. Once verified, we'll review it within 1–2 business days.
This report was generated automatically and is provided for informational purposes only. Results are based on a point-in-time scan and may contain false positives or incomplete data. This does not constitute a security audit or certification. No vendor in the market can guarantee a 100% detection rate. If you believe this report is inaccurate, please submit a dispute.

Share your experience with this website. Was it safe? Did you encounter any issues?