this repo has no description
1{{ define "title" }}tangled &middot; tightly-knit social coding{{ end }} 2 3{{ define "extrameta" }} 4 {{ $desc := "Collaborate on code with decentralized git hosting, modern contribution and review workflows, and lightweight CI/CD pipelines." }} 5 {{ $title = "tangled · tightly-knit social coding" }} 6 7 <meta name="description" content="{{ $desc }}" /> 8 <meta property="og:title" content="{{ $title }}" /> 9 <meta property="og:type" content="website" /> 10 <meta property="og:url" content="https://tangled.org" /> 11 <meta property="og:description" content="Decentralized git hosting with improved pull requests and lightweight CI/CD. Host repositories on your own infrastructure." /> 12 <meta property="og:image" content="https://assets.tangled.network/tangled_og.png" /> 13 <meta property="og:image:width" content="1200" /> 14 <meta property="og:image:height" content="630" /> 15 16 <meta name="twitter:card" content="summary_large_image" /> 17 <meta name="twitter:title" content="{{ $title }}" /> 18 <meta name="twitter:description" content="{{ $desc }}" /> 19 <meta name="twitter:image" content="https://assets.tangled.network/tangled_og.png" /> 20 21 <!-- Enhanced Structured Data for Homepage --> 22 <script type="application/ld+json"> 23 { 24 "@context": "https://schema.org", 25 "@type": "WebSite", 26 "name": "Tangled", 27 "alternateName": "Tangled", 28 "url": "https://tangled.org", 29 "description": "{{ $desc }}", 30 "potentialAction": { 31 "@type": "SearchAction", 32 "target": "https://tangled.org/?q={search_term_string}", 33 "query-input": "required name=search_term_string" 34 } 35 } 36 </script> 37 <script type="application/ld+json"> 38 { 39 "@context": "https://schema.org", 40 "@type": "SoftwareApplication", 41 "name": "Tangled", 42 "applicationCategory": "DeveloperTool", 43 "offers": { 44 "@type": "Offer", 45 "price": "0", 46 "priceCurrency": "USD" 47 }, 48 "operatingSystem": "Web", 49 "description": "{{ $desc }}" 50 } 51 </script> 52{{ end }} 53 54{{ define "canonical" }}https://tangled.org{{ end }} 55 56 57{{ define "content" }} 58 <div class="flex flex-col gap-4"> 59 {{ template "timeline/fragments/hero" . }} 60 {{ template "features" . }} 61 {{ template "timeline/fragments/goodfirstissues" . }} 62 {{ template "timeline/fragments/trending" . }} 63 {{ template "timeline/fragments/timeline" . }} 64 <div class="flex justify-end"> 65 <a href="/timeline" class="inline-flex items-center gap-2 text-gray-500 dark:text-gray-400"> 66 view more 67 {{ i "arrow-right" "size-4" }} 68 </a> 69 </div> 70 </div> 71{{ end }} 72 73 74{{ define "feature" }} 75 {{ $info := index . 0 }} 76 {{ $bullets := index . 1 }} 77 <div class="flex flex-col items-center gap-6 md:flex-row md:items-top"> 78 <div class="flex-1"> 79 <h2 class="text-2xl font-bold text-black dark:text-white mb-6">{{ $info.title }}</h2> 80 <ul class="leading-normal"> 81 {{ range $bullets }} 82 <li><p>{{ escapeHtml . }}</p></li> 83 {{ end }} 84 </ul> 85 </div> 86 <div class="flex-shrink-0 w-96 md:w-1/3"> 87 <a href="{{ $info.image }}"> 88 <img src="{{ $info.image }}" alt="{{ $info.alt }}" class="w-full h-auto rounded shadow-sm" /> 89 </a> 90 </div> 91 </div> 92{{ end }} 93 94{{ define "features" }} 95 <div class="prose dark:text-gray-200 space-y-12 px-6 py-4 bg-white dark:bg-gray-800 rounded drop-shadow-sm"> 96 {{ template "feature" (list 97 (dict 98 "title" "lightweight git repo hosting" 99 "image" "https://assets.tangled.network/what-is-tangled-repo.png" 100 "alt" "A repository hosted on Tangled" 101 ) 102 (list 103 "Host your repositories on your own infrastructure using <em>knots</em>&mdash;tiny, headless servers that facilitate git operations." 104 "Add friends to your knot or invite collaborators to your repository." 105 "Guarded by fine-grained role-based access control." 106 "Use SSH to push and pull." 107 ) 108 ) }} 109 110 {{ template "feature" (list 111 (dict 112 "title" "improved pull request model" 113 "image" "https://assets.tangled.network/pulls.png" 114 "alt" "Round-based pull requests." 115 ) 116 (list 117 "An intuitive and effective round-based pull request flow, with inter-diffing between rounds." 118 "Stacked pull requests using Jujutsu's change IDs." 119 "Paste a <code>git diff</code> or <code>git format-patch</code> for quick drive-by changes." 120 ) 121 ) }} 122 123 {{ template "feature" (list 124 (dict 125 "title" "run pipelines using spindles" 126 "image" "https://assets.tangled.network/pipelines.png" 127 "alt" "CI pipeline running on spindle" 128 ) 129 (list 130 "Run pipelines on your own infrastructure using <em>spindles</em>&mdash;lightweight CI runners." 131 "Natively supports Nix for package management." 132 "Easily extended to support different execution backends." 133 ) 134 ) }} 135 </div> 136{{ end }}