Monorepo for Tangled tangled.org
6

Configure Feed

Select the types of activity you want to include in your feed.

1{{ define "layouts/blogbase" }} 2 <!doctype html> 3 <html lang="en" class="dark:bg-gray-900"> 4 <head> 5 <meta charset="UTF-8" /> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"/> 7 <meta name="description" content="The next-generation social coding platform."/> 8 9 <!-- Open Graph defaults --> 10 <meta property="og:site_name" content="Tangled" /> 11 <meta property="og:type" content="website" /> 12 <meta property="og:locale" content="en_US" /> 13 14 <!-- Keywords --> 15 <meta name="keywords" content="git, code collaboration, AT Protocol, open source, version control, social coding, code hosting" /> 16 17 <!-- Author and copyright --> 18 <meta name="author" content="Tangled" /> 19 <meta name="robots" content="index, follow" /> 20 21 <link rel="icon" href="/static/logos/dolly.ico" sizes="48x48"/> 22 <link rel="icon" href="/static/logos/dolly.svg" sizes="any" type="image/svg+xml"/> 23 <link rel="apple-touch-icon" href="/static/logos/dolly.png"/> 24 25 <!-- preconnect to image cdn --> 26 <link rel="preconnect" href="https://avatar.tangled.sh" /> 27 <link rel="preconnect" href="https://camo.tangled.sh" /> 28 29 <!-- preload main font --> 30 <link rel="preload" href="/static/fonts/InterVariable.woff2" as="font" type="font/woff2" crossorigin /> 31 32 <link rel="stylesheet" href="/static/tw.css?{{ cssContentHash }}" type="text/css" /> 33 34 <script> 35 document.addEventListener('DOMContentLoaded', () => { 36 const nodes = document.querySelectorAll('pre.mermaid'); 37 if (!nodes.length) return; 38 const script = document.createElement('script'); 39 script.src = '/static/mermaid.min.js'; 40 script.onload = async () => { 41 mermaid.initialize({ 42 startOnLoad: true, 43 theme: window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'default', 44 }); 45 await mermaid.run({ nodes }); 46 }; 47 document.head.appendChild(script); 48 }); 49 </script> 50 <title>{{ block "title" . }}{{ end }}</title> 51 {{ block "extrameta" . }}{{ end }} 52 </head> 53 <body class="min-h-screen flex flex-col gap-4 bg-slate-100 dark:bg-gray-900 dark:text-white transition-colors duration-200 {{ block "bodyClasses" . }} {{ end }}"> 54 {{ block "topbarLayout" . }}{{ end }} 55 56 {{ block "mainLayout" . }} 57 <div class="flex-grow"> 58 <div class="max-w-screen-lg mx-auto flex flex-col gap-4"> 59 {{ block "contentLayout" . }} 60 <main> 61 {{ block "content" . }}{{ end }} 62 </main> 63 {{ end }} 64 65 {{ block "contentAfterLayout" . }} 66 <main> 67 {{ block "contentAfter" . }}{{ end }} 68 </main> 69 {{ end }} 70 </div> 71 </div> 72 {{ end }} 73 74 {{ block "footerLayout" . }}{{ end }} 75 </body> 76 </html> 77{{ end }}