https://codeberg.org/nathandyer/Vocal

제출된 URL:
https://codeberg.org/nathandyer/Vocal
보고서 완료:

링크 · 5개 결과

링크텍스트
https://vocalproject.nethttps://vocalproject.net
https://codeberg.pageCodeberg Pages
https://status.codeberg.euStatus Page
https://social.anoxinon.de/@CodebergMastodon
https://matrix.to/#/#codeberg-space:matrix.orgMatrix Space

JavaScript 변수 · 37개 결과

이름유형
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
configobject
RelativeTimeElementfunction
updateCloneStatesfunction
HSfunction
$Sfunction
tofunction
fpfunction

콘솔 로그 메시지 · 1개 결과

유형카테고리로그
warningother
텍스트
Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'interest-cohort'.

HTML

<!DOCTYPE html><html lang="en-US" data-theme="codeberg-auto"><head>
	<meta name="viewport" content="width=device-width, initial-scale=1">
	
	<title>nathandyer/Vocal: The podcast client for the modern free desktop - Codeberg.org</title>
	<link rel="manifest" href="data:application/json;base64,eyJuYW1lIjoiQ29kZWJlcmcub3JnIiwic2hvcnRfbmFtZSI6IkNvZGViZXJnLm9yZyIsInN0YXJ0X3VybCI6Imh0dHBzOi8vY29kZWJlcmcub3JnLyIsImljb25zIjpbeyJzcmMiOiJodHRwczovL2NvZGViZXJnLm9yZy9hc3NldHMvaW1nL2xvZ28ucG5nIiwidHlwZSI6ImltYWdlL3BuZyIsInNpemVzIjoiNTEyeDUxMiJ9LHsic3JjIjoiaHR0cHM6Ly9jb2RlYmVyZy5vcmcvYXNzZXRzL2ltZy9sb2dvLnN2ZyIsInR5cGUiOiJpbWFnZS9zdmcreG1sIiwic2l6ZXMiOiI1MTJ4NTEyIn1dfQ==">
	<meta name="author" content="nathandyer">
	<meta name="description" content="Vocal - The podcast client for the modern free desktop">
	<meta name="keywords" content="git,non-profit,foss,oss,free,software,open,source,code,hosting">
	<meta name="referrer" content="no-referrer">


	<link rel="alternate" type="application/atom+xml" title="" href="/nathandyer/Vocal.atom">
	<link rel="alternate" type="application/rss+xml" title="" href="/nathandyer/Vocal.rss">

	<link rel="icon" href="/assets/img/favicon.svg" type="image/svg+xml">
	<link rel="alternate icon" href="/assets/img/favicon.png" type="image/png">
	
<script>
	
	window.addEventListener('error', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
	window.addEventListener('unhandledrejection', function(e) {window._globalHandlerErrors=window._globalHandlerErrors||[]; window._globalHandlerErrors.push(e);});
	window.config = {
		appUrl: 'https:\/\/codeberg.org\/',
		appSubUrl: '',
		assetVersionEncoded: encodeURIComponent('8.0.3-53-9d5cce4bcc~gitea-1.22.0'), 
		assetUrlPrefix: '\/assets',
		runModeIsProd:  true ,
		customEmojis: {"codeberg":":codeberg:","forgejo":":forgejo:","git":":git:","gitea":":gitea:","github":":github:","gitlab":":gitlab:","gogs":":gogs:"},
		csrfToken: 'jodvEDc9lp_1Rjj5ODTHyRCceco6MTcyOTMzMTQwNTAzNTg1OTQ5NA',
		pageData: {},
		notificationSettings: {"EventSourceUpdateTime":10000,"MaxTimeout":60000,"MinTimeout":10000,"TimeoutStep":10000}, 
		enableTimeTracking:  true ,
		
		mermaidMaxSourceCharacters:  5000 ,
		
		i18n: {
			copy_success: "Copied!",
			copy_error: "Copy failed",
			error_occurred: "An error occurred",
			network_error: "Network error",
			remove_label_str: "Remove item \"%s\"",
			modal_confirm: "Confirm",
			modal_cancel: "Cancel",
			more_items: "More items",
		},
	};
	
	window.config.pageData = window.config.pageData || {};
</script>
<script src="/assets/js/webcomponents.js?v=8.0.3-53-9d5cce4bcc~gitea-1.22.0"></script>

	<noscript>
		<style>
			.dropdown:hover > .menu { display: block; }
			.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; }
		</style>
	</noscript>
	
	
		<meta property="og:title" content="Vocal">
		<meta property="og:url" content="https://codeberg.org/nathandyer/Vocal">
		
			<meta property="og:description" content="The podcast client for the modern free desktop">
		
	
	<meta property="og:type" content="object">
	
		<meta property="og:image" content="https://codeberg.org/repo-avatars/a4f510a1c0f4deee73c04cd95fdeb976d37210f0d249399b9f090d24f2a646f6">
	

<meta property="og:site_name" content="Codeberg.org">

	<link rel="stylesheet" href="/assets/css/index.css?v=8.0.3-53-9d5cce4bcc~gitea-1.22.0">
<link rel="stylesheet" href="/assets/css/theme-codeberg-auto.css?v=8.0.3-53-9d5cce4bcc~gitea-1.22.0">

	
<style>                      .htmx-indicator{opacity:0}                      .is-loading .htmx-indicator{opacity:1; transition: opacity 200ms ease-in;}                      .is-loading.htmx-indicator{opacity:1; transition: opacity 200ms ease-in;}                    </style></head>
<body hx-headers="{&quot;x-csrf-token&quot;: &quot;jodvEDc9lp_1Rjj5ODTHyRCceco6MTcyOTMzMTQwNTAzNTg1OTQ5NA&quot;}" hx-swap="outerHTML" hx-ext="morph" hx-push-url="false">
	

	<div class="full height">
		<noscript>This website requires JavaScript.</noscript>

		

		
			


<nav id="navbar" aria-label="Navigation bar">
	<div class="navbar-left ui secondary menu">
		
		<a class="item" id="navbar-logo" href="/" aria-label="Home">
			<img width="30" height="30" src="https://design.codeberg.org/logo-kit/icon_inverted.svg" aria-hidden="true">
		</a>

		
		<div class="ui secondary menu item navbar-mobile-right only-mobile">
			
			<button class="item tw-w-auto ui icon mini button tw-p-2 tw-m-0" id="navbar-expand-toggle" aria-label="Toggle menu"><svg viewBox="0 0 16 16" class="svg octicon-three-bars" aria-hidden="true" width="16" height="16"><path d="M1 2.75A.75.75 0 0 1 1.75 2h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 2.75m0 5A.75.75 0 0 1 1.75 7h12.5a.75.75 0 0 1 0 1.5H1.75A.75.75 0 0 1 1 7.75M1.75 12h12.5a.75.75 0 0 1 0 1.5H1.75a.75.75 0 0 1 0-1.5"></path></svg></button>
		</div>

		
		
			<a class="item" href="/explore/repos">Explore</a>
		

		

		
			<a class="item" target="_blank" href="https://docs.codeberg.org/getting-started/what-is-codeberg/#what-is-codeberg-e.v.%3F">About</a>
			<a class="item" target="_blank" href="https://docs.codeberg.org/getting-started/faq/">FAQ</a>
			<a class="item" target="_blank" href="https://docs.codeberg.org/improving-codeberg/#donate-to-codeberg">Donate</a>
			<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.codeberg.org">Help</a>
		
	</div>

	
	<div class="navbar-right ui secondary menu">
		
			
				<a class="item" href="/user/cbrgp/iJMEUzh">
					<svg viewBox="0 0 16 16" class="svg octicon-person" aria-hidden="true" width="16" height="16"><path d="M10.561 8.073a6 6 0 0 1 3.432 5.142.75.75 0 1 1-1.498.07 4.5 4.5 0 0 0-8.99 0 .75.75 0 0 1-1.498-.07 6 6 0 0 1 3.431-5.142 3.999 3.999 0 1 1 5.123 0M10.5 5a2.5 2.5 0 1 0-5 0 2.5 2.5 0 0 0 5 0"></path></svg> Register
				</a>
			
			<a class="item" rel="nofollow" href="/user/login?redirect_to=%2fnathandyer%2fVocal">
				<svg viewBox="0 0 16 16" class="svg octicon-sign-in" aria-hidden="true" width="16" height="16"><path d="M2 2.75C2 1.784 2.784 1 3.75 1h2.5a.75.75 0 0 1 0 1.5h-2.5a.25.25 0 0 0-.25.25v10.5c0 .138.112.25.25.25h2.5a.75.75 0 0 1 0 1.5h-2.5A1.75 1.75 0 0 1 2 13.25Zm6.56 4.5h5.69a.75.75 0 0 1 0 1.5H8.56l1.97 1.97a.749.749 0 0 1-.326 1.275.75.75 0 0 1-.734-.215L6.22 8.53a.75.75 0 0 1 0-1.06l3.25-3.25a.749.749 0 0 1 1.275.326.75.75 0 0 1-.215.734Z"></path></svg> Sign In
			</a>
		
	</div>
</nav>

		



<div role="main" aria-label="nathandyer/Vocal: The podcast client for the modern free desktop" class="page-content repository file list ">
	<div class="secondary-nav">

	<div class="ui container">
		<div class="repo-header">
			<div class="flex-item tw-items-center">
				<div class="flex-item-leading">
					

	<img class="ui avatar tw-align-middle" src="/repo-avatars/a4f510a1c0f4deee73c04cd95fdeb976d37210f0d249399b9f090d24f2a646f6" width="24" height="24" alt="nathandyer/Vocal">


				</div>
				<div class="flex-item-main">
					<div class="flex-item-title gt-font-18">
						<a class="muted gt-font-normal" href="/nathandyer">nathandyer</a>/<a class="muted" href="/nathandyer/Vocal">Vocal</a>
					</div>
				</div>
				<div class="flex-item-trailing">
					
					
						
					
					
					
				</div>
			</div>
			
				<div class="repo-buttons button-row">
					
					
					
					
					<a class="ui compact small basic button" href="/nathandyer/Vocal.rss" data-tooltip-content="RSS feed" aria-label="RSS feed">
						<svg viewBox="0 0 16 16" class="svg octicon-rss" aria-hidden="true" width="16" height="16"><path d="M2.002 2.725a.75.75 0 0 1 .797-.699C8.79 2.42 13.58 7.21 13.974 13.201a.75.75 0 0 1-1.497.098 10.5 10.5 0 0 0-9.776-9.776.747.747 0 0 1-.7-.798ZM2.84 7.05h-.002a7 7 0 0 1 6.113 6.111.75.75 0 0 1-1.49.178 5.5 5.5 0 0 0-4.8-4.8.75.75 0 0 1 .179-1.489M2 13a1 1 0 1 1 2 0 1 1 0 0 1-2 0"></path></svg>
					</a>
					
					<form hx-boost="true" hx-target="this" method="post" action="/nathandyer/Vocal/action/watch">
	<div class="ui labeled button" data-tooltip-content="Sign in to watch this repository." aria-label="Sign in to watch this repository.">
		<button type="submit" class="ui compact small basic button" disabled="">
			
				<svg viewBox="0 0 16 16" class="svg octicon-eye" aria-hidden="true" width="16" height="16"><path d="M8 2c1.981 0 3.671.992 4.933 2.078 1.27 1.091 2.187 2.345 2.637 3.023a1.62 1.62 0 0 1 0 1.798c-.45.678-1.367 1.932-2.637 3.023C11.67 13.008 9.981 14 8 14s-3.671-.992-4.933-2.078C1.797 10.83.88 9.576.43 8.898a1.62 1.62 0 0 1 0-1.798c.45-.677 1.367-1.931 2.637-3.022C4.33 2.992 6.019 2 8 2M1.679 7.932a.12.12 0 0 0 0 .136c.411.622 1.241 1.75 2.366 2.717C5.176 11.758 6.527 12.5 8 12.5s2.825-.742 3.955-1.715c1.124-.967 1.954-2.096 2.366-2.717a.12.12 0 0 0 0-.136c-.412-.621-1.242-1.75-2.366-2.717C10.824 4.242 9.473 3.5 8 3.5s-2.825.742-3.955 1.715c-1.124.967-1.954 2.096-2.366 2.717M8 10a2 2 0 1 1-.001-3.999A2 2 0 0 1 8 10"></path></svg><span class="text not-mobile">Watch</span>
			
		</button>
		<a hx-boost="false" class="ui basic label" href="/nathandyer/Vocal/watchers">
			1
		</a>
	</div>
</form>

					
					<form hx-boost="true" hx-target="this" method="post" action="/nathandyer/Vocal/action/star">
	<div class="ui labeled button" data-tooltip-content="Sign in to star this repository." aria-label="Sign in to star this repository.">
		<button type="submit" class="ui compact small basic button" disabled="">
			
				<svg viewBox="0 0 16 16" class="svg octicon-star" aria-hidden="true" width="16" height="16"><path d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25m0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41z"></path></svg><span class="text not-mobile">Star</span>
			
		</button>
		<a hx-boost="false" class="ui basic label" href="/nathandyer/Vocal/stars">
			1
		</a>
	</div>
</form>

					
					
					

	<div class="ui labeled button
		
			disabled
		" data-tooltip-content="Sign in to fork this repository." aria-label="Sign in to fork this repository.">
		<a class="ui compact small basic button">
			<svg viewBox="0 0 16 16" class="svg octicon-repo-forked" aria-hidden="true" width="16" height="16"><path d="M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0M5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0m6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5m-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0"></path></svg><span class="text not-mobile">Fork</span>
		</a>
		<div class="ui small modal" id="fork-repo-modal">
			<div class="header">
				You've already forked Vocal
			</div>
			<div class="content tw-text-left">
				<div class="ui list">
					
				</div>
				
			</div>
		</div>
		<a class="ui basic label" href="/nathandyer/Vocal/forks">
			0
		</a>
	</div>



					
				</div>
			
		</div>
		
		
		
	</div>

	<overflow-menu class="ui container secondary pointing tabular top attached borderless menu tw-pt-0 tw-my-0" role="navigation">
		
			<div class="overflow-menu-items">
				
					<a class="active item" href="/nathandyer/Vocal">
						<svg viewBox="0 0 16 16" class="svg octicon-code" aria-hidden="true" width="16" height="16"><path d="m11.28 3.22 4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.749.749 0 0 1-1.275-.326.75.75 0 0 1 .215-.734L13.94 8l-3.72-3.72a.749.749 0 0 1 .326-1.275.75.75 0 0 1 .734.215m-6.56 0a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042L2.06 8l3.72 3.72a.749.749 0 0 1-.326 1.275.75.75 0 0 1-.734-.215L.47 8.53a.75.75 0 0 1 0-1.06Z"></path></svg><span class="resize-for-semibold" data-text="Code">Code</span></a>
				

				
					<a class="item" href="/nathandyer/Vocal/issues">
						<svg viewBox="0 0 16 16" class="svg octicon-issue-opened" aria-hidden="true" width="16" height="16"><path d="M8 9.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3"></path><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0"></path></svg><span class="resize-for-semibold" data-text="Issues">Issues</span><span class="ui small label">9</span>
						
					</a>
				

				

				
					<a class="item" href="/nathandyer/Vocal/pulls">
						<svg viewBox="0 0 16 16" class="svg octicon-git-pull-request" aria-hidden="true" width="16" height="16"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25m5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354M3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0"></path></svg><span class="resize-for-semibold" data-text="Pull requests">Pull requests</span></a>
				

				

				
					<a class="item" href="/nathandyer/Vocal/releases">
						<svg viewBox="0 0 16 16" class="svg octicon-tag" aria-hidden="true" width="16" height="16"><path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775m1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2"></path></svg><span class="resize-for-semibold" data-text="Releases">Releases</span></a>
				

				

				
					<a class="item" href="/nathandyer/Vocal/wiki">
						<svg viewBox="0 0 16 16" class="svg octicon-book" aria-hidden="true" width="16" height="16"><path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.74 3.74 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574M8.755 4.75l-.004 7.322a3.75 3.75 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25"></path></svg><span class="resize-for-semibold" data-text="Wiki">Wiki</span></a>
				

				

				
					<a class="item" href="/nathandyer/Vocal/activity">
						<svg viewBox="0 0 16 16" class="svg octicon-pulse" aria-hidden="true" width="16" height="16"><path d="M6 2c.306 0 .582.187.696.471L10 10.731l1.304-3.26A.75.75 0 0 1 12 7h3.25a.75.75 0 0 1 0 1.5h-2.742l-1.812 4.528a.751.751 0 0 1-1.392 0L6 4.77 4.696 8.03A.75.75 0 0 1 4 8.5H.75a.75.75 0 0 1 0-1.5h2.742l1.812-4.529A.75.75 0 0 1 6 2"></path></svg><span class="resize-for-semibold" data-text="Activity">Activity</span></a>
				

				

				

				

				
			</div>
		
	<div class="tippy-target" tabindex="-1"></div></overflow-menu>
	<div class="ui tabs divider"></div>
</div>

	<div class="ui container ">
		




		

		
		<div class="repo-description">
			<div id="repo-desc" class="tw-break-anywhere tw-text-16">
				
				<span class="description">The podcast client for the modern free desktop</span>
				<a class="link" href="https://vocalproject.net">https://vocalproject.net</a>
			</div>
			
		</div>
		<div class="tw-flex tw-items-center tw-flex-wrap tw-gap-2 tw-my-2" id="repo-topics">
			
			
			
		</div>
		
		

		
		










		
		
<div class="ui segments repository-summary tw-mt-1 tw-mb-0">
	<div class="ui segment sub-menu repository-menu">
		
			<a class="item muted " href="/nathandyer/Vocal/commits/branch/main">
				<svg viewBox="0 0 16 16" class="svg octicon-history" aria-hidden="true" width="16" height="16"><path d="m.427 1.927 1.215 1.215a8.002 8.002 0 1 1-1.6 5.685.75.75 0 1 1 1.493-.154 6.5 6.5 0 1 0 1.18-4.458l1.358 1.358A.25.25 0 0 1 3.896 6H.25A.25.25 0 0 1 0 5.75V2.104a.25.25 0 0 1 .427-.177M7.75 4a.75.75 0 0 1 .75.75v2.992l2.028.812a.75.75 0 0 1-.557 1.392l-2.5-1A.75.75 0 0 1 7 8.25v-3.5A.75.75 0 0 1 7.75 4"></path></svg> <b>458</b> commits
			</a>
			<a class="item muted " href="/nathandyer/Vocal/branches">
				<svg viewBox="0 0 16 16" class="svg octicon-git-branch" aria-hidden="true" width="16" height="16"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.5 2.5 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25m-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0m8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5M4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5"></path></svg> <b>11</b> branches
			</a>
			
				<a class="item muted " href="/nathandyer/Vocal/tags">
					<svg viewBox="0 0 16 16" class="svg octicon-tag" aria-hidden="true" width="16" height="16"><path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775m1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2"></path></svg> <b>17</b> tags
				</a>
			
			<span class="item not-mobile" data-tooltip-content="git: 6 MiB, lfs: 0 B" aria-label="git: 6 MiB, lfs: 0 B">
				
				<svg viewBox="0 0 16 16" class="svg octicon-database" aria-hidden="true" width="16" height="16"><path d="M1 3.5c0-.626.292-1.165.7-1.59.406-.422.956-.767 1.579-1.041C4.525.32 6.195 0 8 0s3.475.32 4.722.869c.622.274 1.172.62 1.578 1.04.408.426.7.965.7 1.591v9c0 .626-.292 1.165-.7 1.59-.406.422-.956.767-1.579 1.041C11.476 15.68 9.806 16 8 16c-1.805 0-3.475-.32-4.721-.869-.623-.274-1.173-.62-1.579-1.04-.408-.426-.7-.965-.7-1.591Zm1.5 0c0 .133.058.318.282.551.227.237.591.483 1.101.707C4.898 5.205 6.353 5.5 8 5.5s3.101-.295 4.118-.742c.508-.224.873-.471 1.1-.708.224-.232.282-.417.282-.55s-.058-.318-.282-.551c-.227-.237-.591-.483-1.101-.707C11.102 1.795 9.647 1.5 8 1.5s-3.101.295-4.118.742c-.508.224-.873.471-1.1.708-.224.232-.282.417-.282.55m0 4.5c0 .133.058.318.282.551.227.237.591.483 1.101.707C4.898 9.705 6.353 10 8 10s3.101-.295 4.118-.742c.508-.224.873-.471 1.1-.708.224-.232.282-.417.282-.55V5.724c-.241.15-.503.286-.778.407C11.475 6.68 9.805 7 8 7s-3.475-.32-4.721-.869a6 6 0 0 1-.779-.407Zm0 2.225V12.5c0 .133.058.318.282.55.227.237.592.484 1.1.708 1.016.447 2.471.742 4.118.742s3.102-.295 4.117-.742c.51-.224.874-.47 1.101-.707.224-.233.282-.418.282-.551v-2.275c-.241.15-.503.285-.778.406-1.247.549-2.917.869-4.722.869s-3.475-.32-4.721-.869a6 6 0 0 1-.779-.406"></path></svg> <b>6</b> MiB
			</span>
		
	</div>
	
	<div class="ui segment sub-menu language-stats-details tw-hidden">
		
		<div class="item">
			<i class="color-icon" style="background-color: #a56de2"></i>
			<span class="tw-font-semibold">
				
					Vala
				
			</span>
			98.7%
		</div>
		
		<div class="item">
			<i class="color-icon" style="background-color: #007800"></i>
			<span class="tw-font-semibold">
				
					Meson
				
			</span>
			1.2%
		</div>
		
	</div>
	<a class="ui segment language-stats show-panel toggle" data-panel=".repository-summary > .sub-menu">
		
		<div class="bar" style="width: 98.7%; background-color: #a56de2" data-tooltip-placement="top" data-tooltip-content="Vala" data-tooltip-follow-cursor="horizontal" aria-label="Vala"></div>
		
		<div class="bar" style="width: 1.2%; background-color: #007800" data-tooltip-placement="top" data-tooltip-content="Meson" data-tooltip-follow-cursor="horizontal" aria-label="Meson"></div>
		
	</a>
	
</div>


		
		
		
		<div class="repo-button-row">
			<div class="tw-flex tw-items-center tw-gap-y-2">
				






	




<script type="module">
	const data = {
		'textReleaseCompare': "Compare",
		'textCreateTag': "Create tag \u003cstrong\u003e%s\u003c/strong\u003e",
		'textCreateBranch': "Create branch \u003cstrong\u003e%s\u003c/strong\u003e",
		'textCreateBranchFrom': "from \"%s\"",
		'textBranches': "Branches",
		'textTags': "Tags",
		'textDefaultBranchLabel': "default",

		'mode': 'branches',
		'showBranchesInDropdown':  true ,
		'searchFieldPlaceholder': 'Filter branch or tag...',
		'branchForm':  null ,
		'disableCreateBranch':  true ,
		'setAction':  null ,
		'submitForm':  null ,
		'viewType': "branch",
		'refName': "main",
		'commitIdShort': "539b4d83b8",
		'tagName': "",
		'branchName': "main",
		'noTag':  null ,
		'defaultSelectedRefName': "main",
		'repoDefaultBranch': "main",
		'enableFeed':  true ,
		'rssURLPrefix': '\/nathandyer\/Vocal/rss/branch/',
		'branchURLPrefix': '\/nathandyer\/Vocal/src/branch/',
		'branchURLSuffix': '',
		'tagURLPrefix': '\/nathandyer\/Vocal/src/tag/',
		'tagURLSuffix': '',
		'repoLink': "/nathandyer/Vocal",
		'treePath': "",
		'branchNameSubURL': "branch/main",
		'noResults': "No results found.",
	};
	
	window.config.pageData.branchDropdownDataList = window.config.pageData.branchDropdownDataList || [];
	window.config.pageData.branchDropdownDataList.push(data);
</script>

<div class="js-branch-tag-selector tw-mr-1" data-v-app=""><div data-v-3ee7eea9="" class="ui dropdown custom"><button data-v-3ee7eea9="" class="branch-dropdown-button gt-ellipsis ui basic small compact button tw-flex tw-m-0"><span data-v-3ee7eea9="" class="text tw-flex tw-items-center tw-mr-1 gt-ellipsis"><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" class="svg octicon-git-branch"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.5 2.5 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25m-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0m8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5M4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5"></path></svg><strong data-v-3ee7eea9="" class="tw-ml-2 tw-inline-block gt-ellipsis">main</strong></span><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" class="svg octicon-triangle-down dropdown icon"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427"></path></svg></button><div data-v-3ee7eea9="" class="menu transition" style="display: none;"><div data-v-3ee7eea9="" class="ui icon search input"><i data-v-3ee7eea9="" class="icon"><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" class="svg octicon-filter"><path d="M.75 3h14.5a.75.75 0 0 1 0 1.5H.75a.75.75 0 0 1 0-1.5M3 7.75A.75.75 0 0 1 3.75 7h8.5a.75.75 0 0 1 0 1.5h-8.5A.75.75 0 0 1 3 7.75m3 4a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75"></path></svg></i><input data-v-3ee7eea9="" name="search" autocomplete="off" placeholder="Filter branch or tag..." dir="auto"></div><div data-v-3ee7eea9="" class="branch-tag-tab"><a data-v-3ee7eea9="" class="branch-tag-item muted active" href="#"><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" class="svg octicon-git-branch tw-mr-1"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.5 2.5 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25m-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0m8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5M4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5"></path></svg>Branches</a><a data-v-3ee7eea9="" class="branch-tag-item muted" href="#"><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" class="svg octicon-tag tw-mr-1"><path d="M1 7.775V2.75C1 1.784 1.784 1 2.75 1h5.025c.464 0 .91.184 1.238.513l6.25 6.25a1.75 1.75 0 0 1 0 2.474l-5.026 5.026a1.75 1.75 0 0 1-2.474 0l-6.25-6.25A1.75 1.75 0 0 1 1 7.775m1.5 0c0 .066.026.13.073.177l6.25 6.25a.25.25 0 0 0 .354 0l5.025-5.025a.25.25 0 0 0 0-.354l-6.25-6.25a.25.25 0 0 0-.177-.073H2.75a.25.25 0 0 0-.25.25ZM6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2"></path></svg>Tags</a></div><div data-v-3ee7eea9="" class="branch-tag-divider"></div><div data-v-3ee7eea9="" class="scrolling menu"><svg data-v-3ee7eea9="" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" class="svg octicon-rss tw-hidden svg-symbol-container"><symbol id="svg-symbol-octicon-rss" viewBox="0 0 16 16"><path d="M2.002 2.725a.75.75 0 0 1 .797-.699C8.79 2.42 13.58 7.21 13.974 13.201a.75.75 0 0 1-1.497.098 10.5 10.5 0 0 0-9.776-9.776.747.747 0 0 1-.7-.798ZM2.84 7.05h-.002a7 7 0 0 1 6.113 6.111.75.75 0 0 1-1.49.178 5.5 5.5 0 0 0-4.8-4.8.75.75 0 0 1 .179-1.489M2 13a1 1 0 1 1 2 0 1 1 0 0 1-2 0"></path></symbol></svg><!--v-if--><!--v-if--></div><div data-v-3ee7eea9="" class="message">No results found.</div></div></div></div>

				
					
					
					
					
					<a id="new-pull-request" role="button" class="ui compact basic button" href="/nathandyer/Vocal/compare/main...main" data-tooltip-content="Compare" aria-label="Compare">
						<svg viewBox="0 0 16 16" class="svg octicon-git-pull-request" aria-hidden="true" width="16" height="16"><path d="M1.5 3.25a2.25 2.25 0 1 1 3 2.122v5.256a2.251 2.251 0 1 1-1.5 0V5.372A2.25 2.25 0 0 1 1.5 3.25m5.677-.177L9.573.677A.25.25 0 0 1 10 .854V2.5h1A2.5 2.5 0 0 1 13.5 5v5.628a2.251 2.251 0 1 1-1.5 0V5a1 1 0 0 0-1-1h-1v1.646a.25.25 0 0 1-.427.177L7.177 3.427a.25.25 0 0 1 0-.354M3.75 2.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m0 9.5a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5m8.25.75a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0"></path></svg>
					</a>
				
				
				
					<a href="/nathandyer/Vocal/find/branch/main" class="ui compact basic button">Find a file</a>
				

				

				
				
			</div>
			<div class="tw-flex tw-items-center">
				
				
					<div class="clone-panel ui action tiny input">
						

	<button class="ui small button primary" id="repo-clone-https" data-link="https://codeberg.org/nathandyer/Vocal.git">HTTPS</button>


<input id="repo-clone-url" size="20" class="js-clone-url" value="https://codeberg.org/nathandyer/Vocal.git" readonly="" dir="auto">
<button class="ui small icon button" id="clipboard-btn" data-tooltip-content="Copy URL" data-clipboard-target="#repo-clone-url" aria-label="Copy URL">
	<svg viewBox="0 0 16 16" class="svg octicon-copy" aria-hidden="true" width="14" height="14"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg>
</button>

						<button class="ui small jump dropdown icon button" data-tooltip-content="More operations" role="menu" aria-haspopup="" aria-controls="_aria_auto_id_0" aria-expanded="false" aria-label="More operations" tabindex="0">
							<svg viewBox="0 0 16 16" class="svg octicon-kebab-horizontal" aria-hidden="true" width="16" height="16"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3m13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3"></path></svg>
							<div class="menu hidden transition" id="_aria_auto_id_0" role="" tabindex="-1">
								
									<a class="item archive-link" href="/nathandyer/Vocal/archive/main.zip" rel="nofollow" id="_aria_auto_id_1" role="menuitem" tabindex="-1"><svg viewBox="0 0 16 16" class="tw-mr-2 svg octicon-file-zip" aria-hidden="true" width="16" height="16"><path d="M3.5 1.75v11.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.75 1.75 0 0 1 2 13.25V1.75C2 .784 2.784 0 3.75 0h5.586c.464 0 .909.185 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v8.586A1.75 1.75 0 0 1 12.25 15h-.5a.75.75 0 0 1 0-1.5h.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177L9.513 1.573a.25.25 0 0 0-.177-.073H7.25a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5h-3a.25.25 0 0 0-.25.25m3.75 8.75h.5c.966 0 1.75.784 1.75 1.75v3a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1-.75-.75v-3c0-.966.784-1.75 1.75-1.75M6 5.25a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 6 5.25m.75 2.25h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M8 6.75A.75.75 0 0 1 8.75 6h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 8 6.75M8.75 3h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M8 9.75A.75.75 0 0 1 8.75 9h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 8 9.75m-1 2.5v2.25h1v-2.25a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25"></path></svg>Download ZIP</a>
									<a class="item archive-link" href="/nathandyer/Vocal/archive/main.tar.gz" rel="nofollow" id="_aria_auto_id_2" role="menuitem" tabindex="-1"><svg viewBox="0 0 16 16" class="tw-mr-2 svg octicon-file-zip" aria-hidden="true" width="16" height="16"><path d="M3.5 1.75v11.5c0 .09.048.173.126.217a.75.75 0 0 1-.752 1.298A1.75 1.75 0 0 1 2 13.25V1.75C2 .784 2.784 0 3.75 0h5.586c.464 0 .909.185 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v8.586A1.75 1.75 0 0 1 12.25 15h-.5a.75.75 0 0 1 0-1.5h.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177L9.513 1.573a.25.25 0 0 0-.177-.073H7.25a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5h-3a.25.25 0 0 0-.25.25m3.75 8.75h.5c.966 0 1.75.784 1.75 1.75v3a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1-.75-.75v-3c0-.966.784-1.75 1.75-1.75M6 5.25a.75.75 0 0 1 .75-.75h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 6 5.25m.75 2.25h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M8 6.75A.75.75 0 0 1 8.75 6h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 8 6.75M8.75 3h.5a.75.75 0 0 1 0 1.5h-.5a.75.75 0 0 1 0-1.5M8 9.75A.75.75 0 0 1 8.75 9h.5a.75.75 0 0 1 0 1.5h-.5A.75.75 0 0 1 8 9.75m-1 2.5v2.25h1v-2.25a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25"></path></svg>Download TAR.GZ</a>
									<a class="item archive-link" href="/nathandyer/Vocal/archive/main.bundle" rel="nofollow" id="_aria_auto_id_3" role="menuitem" tabindex="-1"><svg viewBox="0 0 16 16" class="tw-mr-2 svg octicon-package" aria-hidden="true" width="16" height="16"><path d="m8.878.392 5.25 3.045c.54.314.872.89.872 1.514v6.098a1.75 1.75 0 0 1-.872 1.514l-5.25 3.045a1.75 1.75 0 0 1-1.756 0l-5.25-3.045A1.75 1.75 0 0 1 1 11.049V4.951c0-.624.332-1.201.872-1.514L7.122.392a1.75 1.75 0 0 1 1.756 0M7.875 1.69l-4.63 2.685L8 7.133l4.755-2.758-4.63-2.685a.25.25 0 0 0-.25 0M2.5 5.677v5.372c0 .09.047.171.125.216l4.625 2.683V8.432Zm6.25 8.271 4.625-2.683a.25.25 0 0 0 .125-.216V5.677L8.75 8.432Z"></path></svg>Download BUNDLE</a>
								
								
								
									<a class="item js-clone-url-editor" data-href-template="vscode://vscode.git/clone?url={url}" href="vscode://vscode.git/clone?url=https%3A%2F%2Fcodeberg.org%2Fnathandyer%2FVocal.git" id="_aria_auto_id_4" role="menuitem" tabindex="-1"><svg viewBox="-1 -1 34 34" class="tw-mr-2 svg gitea-open-with-vscode" aria-hidden="true" width="16" height="16"><path d="M30.9 3.4 24.3.3a2 2 0 0 0-2.3.4L9.4 12.2 3.9 8c-.5-.4-1.2-.4-1.7 0L.4 9.8c-.5.5-.5 1.4 0 2L5.2 16 .4 20.3c-.5.6-.5 1.5 0 2L2.2 24c.5.5 1.2.5 1.7 0l5.5-4L22 31.2a2 2 0 0 0 2.3.4l6.6-3.2a2 2 0 0 0 1.1-1.8V5.2a2 2 0 0 0-1.1-1.8M24 23.3 14.4 16 24 8.7z"></path></svg>Open with VS Code</a>
								
									<a class="item js-clone-url-editor" data-href-template="vscodium://vscode.git/clone?url={url}" href="vscodium://vscode.git/clone?url=https%3A%2F%2Fcodeberg.org%2Fnathandyer%2FVocal.git" id="_aria_auto_id_5" role="menuitem" tabindex="-1"><svg xml:space="preserve" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" clip-rule="evenodd" viewBox="0 0 16 16" class="tw-mr-2 svg gitea-open-with-vscodium" aria-hidden="true" width="16" height="16"><path fill-rule="nonzero" d="m10.2.2.5-.3c.3 0 .5.2.7.4l.2.8-.2 1-.8 2.4c-.3 1-.4 2 0 2.9l.8-2c.2 0 .4.1.4.3l-.3 1L9.2 13l3.1-2.9c.3-.2.7-.5.8-1a2 2 0 0 0-.3-1c-.2-.5-.5-.9-.6-1.4l.1-.7c.1-.1.3-.2.5-.1.2 0 .3.2.4.4.3.5.4 1.2.5 1.8l.6-1.2c0-.2.2-.4.4-.6l.4-.2c.2 0 .4.3.4.4v.6l-.8 1.6-1.4 1.8 1-.4c.2 0 .6.2.7.5 0 .2 0 .4-.2.5-.3.2-.6.2-1 .2-1 0-2.2.6-2.9 1.4L9.6 15c-.4.4-.9 1-1.4.8-.8-.1-.8-1.3-1-1.8 0-.3-.2-.6-.4-.7-.3-.2-.5-.3-.8-.3-.6-.1-1.2 0-1.8-.2l-.8-.4-.4-.7c-.3-.6-.3-1.2-.5-1.8A4 4 0 0 0 1 8l-.4-.4v-.4c.2-.2.5-.2.7 0 .5.2.5.8 1 1.1V6.2s.3-.1.4 0l.2.5L3 9c.4-.4.6-1 .5-1.5L3.4 7l.3-.2c.2 0 .3.2.4.3v.7c0 .6-.3 1.1-.4 1.7-.2.4-.3 1-.1 1.4.1.5.5.9.9 1 .5.3 1.1.4 1.7.4-.4-.6-.7-1.2-.7-2 0-.7.4-1.3.6-2C6.3 7 5.7 5.8 4.8 5l-1.5-.7c-.4-.2-.7-.7-.7-1.2.3-.1.7 0 1 .1L5 4.5l.6.1c.2-.3 0-.6-.2-.8-.3-.5-1-.6-1.3-1a.9.9 0 0 1-.2-.8c0-.2.3-.4.5-.4.4 0 .7.3.9.5.8.8 1.2 1.8 1.4 3s0 2.5-.2 3.7c0 .3-.2.5-.1.8l.2.2c.2 0 .4 0 .5-.2.4-.3.8-.8.9-1.3l.1-1.2.1-.6.4-.2.3.3v.6c-.1.5-.2 1-.5 1.6a2 2 0 0 1-.6 1l-1 1c-.1.2-.2.6-.1.9 0 .2.2.4.4.5.4.2.8.2 1 0 .3-.1.5-.4.7-.6l.5-1.4.4-2.5C9.7 7 9.6 6 9 5.2c-.2-.4-.5-.7-1-1l-1-.8c-.2-.3-.4-.7-.3-1.2h.6c.4.1.7.4.9.8s.4.8.9 1l-1-2c-.1-.3-.3-.5-.2-.8 0-.2.2-.4.4-.4s.4.1.5.3l.2.5 1 3.1a4 4 0 0 0 .4-2.3L10 1V.2Z"></path></svg>Open with VSCodium</a>
								
									<a class="item js-clone-url-editor" data-href-template="jetbrains://idea/checkout/git?idea.required.plugins.id=Git4Idea&amp;checkout.repo={url}" href="jetbrains://idea/checkout/git?idea.required.plugins.id=Git4Idea&amp;checkout.repo=https%3A%2F%2Fcodeberg.org%2Fnathandyer%2FVocal.git" id="_aria_auto_id_6" role="menuitem" tabindex="-1"><svg xml:space="preserve" viewBox="0 0 70 70" class="tw-mr-2 svg gitea-open-with-jetbrains" aria-hidden="true" width="16" height="16"><linearGradient id="gitea-open-with-jetbrains__a" x1=".79" x2="33.317" y1="40.089" y2="40.089" gradientUnits="userSpaceOnUse"><stop offset=".258" style="stop-color:#f97a12"></stop><stop offset=".459" style="stop-color:#b07b58"></stop><stop offset=".724" style="stop-color:#577bae"></stop><stop offset=".91" style="stop-color:#1e7ce5"></stop><stop offset="1" style="stop-color:#087cfa"></stop></linearGradient><path d="M17.7 54.6.8 41.2l8.4-15.6L33.3 35z" style="fill:url(#gitea-open-with-jetbrains__a)"></path><linearGradient id="gitea-open-with-jetbrains__b" x1="25.767" x2="79.424" y1="24.88" y2="54.57" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#f97a12"></stop><stop offset=".072" style="stop-color:#cb7a3e"></stop><stop offset=".154" style="stop-color:#9e7b6a"></stop><stop offset=".242" style="stop-color:#757b91"></stop><stop offset=".334" style="stop-color:#537bb1"></stop><stop offset=".432" style="stop-color:#387ccc"></stop><stop offset=".538" style="stop-color:#237ce0"></stop><stop offset=".655" style="stop-color:#147cef"></stop><stop offset=".792" style="stop-color:#0b7cf7"></stop><stop offset="1" style="stop-color:#087cfa"></stop></linearGradient><path d="m70 18.7-1.3 40.5L41.8 70 25.6 59.6 49.3 35 38.9 12.3l9.3-11.2z" style="fill:url(#gitea-open-with-jetbrains__b)"></path><linearGradient id="gitea-open-with-jetbrains__c" x1="63.228" x2="48.29" y1="42.915" y2="-1.719" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#fe315d"></stop><stop offset=".078" style="stop-color:#cb417e"></stop><stop offset=".16" style="stop-color:#9e4e9b"></stop><stop offset=".247" style="stop-color:#755bb4"></stop><stop offset=".339" style="stop-color:#5365ca"></stop><stop offset=".436" style="stop-color:#386ddb"></stop><stop offset=".541" style="stop-color:#2374e9"></stop><stop offset=".658" style="stop-color:#1478f3"></stop><stop offset=".794" style="stop-color:#0b7bf8"></stop><stop offset="1" style="stop-color:#087cfa"></stop></linearGradient><path d="M70 18.7 48.7 43.9l-9.8-31.6 9.3-11.2z" style="fill:url(#gitea-open-with-jetbrains__c)"></path><linearGradient id="gitea-open-with-jetbrains__d" x1="10.72" x2="55.524" y1="16.473" y2="90.58" gradientUnits="userSpaceOnUse"><stop offset="0" style="stop-color:#fe315d"></stop><stop offset=".04" style="stop-color:#f63462"></stop><stop offset=".104" style="stop-color:#df3a71"></stop><stop offset=".167" style="stop-color:#c24383"></stop><stop offset=".291" style="stop-color:#ad4a91"></stop><stop offset=".55" style="stop-color:#755bb4"></stop><stop offset=".917" style="stop-color:#1d76ed"></stop><stop offset="1" style="stop-color:#087cfa"></stop></linearGradient><path d="M33.7 58.1 5.6 68.3l4.5-15.8L16 33.1 0 27.7 10.1 0l22 2.7 21.6 24.7z" style="fill:url(#gitea-open-with-jetbrains__d)"></path><path d="M13.7 13.5h43.2v43.2H13.7z" style="fill:#000"></path><path d="M17.7 48.6h16.2v2.7H17.7zM29.4 22.4v-3.3h-9v3.3H23v11.3h-2.6V37h9v-3.3h-2.5V22.4zM38 37.3c-1.4 0-2.6-.3-3.5-.8s-1.7-1.2-2.3-1.9l2.5-2.8c.5.6 1 1 1.5 1.3s1.1.5 1.7.5c.7 0 1.3-.2 1.8-.7.4-.5.6-1.2.6-2.3V19.1h4v11.7c0 1.1-.1 2-.4 2.8s-.7 1.4-1.3 2c-.5.5-1.2 1-2 1.2-.8.3-1.6.5-2.6.5" style="fill:#fff"></path></svg>Open with Intellij IDEA</a>
								
							</div>
						</button>
						<script>
	
	
	
	
	
	
	(window.updateCloneStates = function() {
		const httpsBtn = document.getElementById('repo-clone-https');
		const sshBtn = document.getElementById('repo-clone-ssh');
		const value = localStorage.getItem('repo-clone-protocol') || 'https';
		const isSSH = value === 'ssh' && sshBtn || value !== 'ssh' && !httpsBtn;

		if (httpsBtn) {
			httpsBtn.textContent = window.origin.split(':')[0].toUpperCase();
			httpsBtn.classList.toggle('primary', !isSSH);
			httpsBtn.classList.toggle('basic', isSSH);
		}
		if (sshBtn) {
			sshBtn.classList.toggle('primary', isSSH);
			sshBtn.classList.toggle('basic', !isSSH);
		}

		const btn = isSSH ? sshBtn : httpsBtn;
		if (!btn) return;

		
		function toOriginUrl(urlStr) {
			try {
				if (urlStr.startsWith('http://') || urlStr.startsWith('https://') || urlStr.startsWith('/')) {
					const {origin, protocol, hostname, port} = window.location;
					const url = new URL(urlStr, origin);
					url.protocol = protocol;
					url.hostname = hostname;
					url.port = port || (protocol === 'https:' ? '443' : '80');
					return url.toString();
				}
			} catch {}
			return urlStr;
		}
		const link = toOriginUrl(btn.getAttribute('data-link'));

		for (const el of document.getElementsByClassName('js-clone-url')) {
			el[el.nodeName === 'INPUT' ? 'value' : 'textContent'] = link;
		}
		for (const el of document.getElementsByClassName('js-clone-url-editor')) {
			el.href = el.getAttribute('data-href-template').replace('{url}', encodeURIComponent(link));
		}
	})();
</script>

					</div>
					<div class="ui small modal" id="cite-repo-modal">
	<div class="header">
		Cite this repository
	</div>
	<div class="content">
		<div class="ui stackable secondary menu">
			<div class="ui action input" id="citation-panel">
				<span class="ui citation label primary" id="citation-copy-bibtex" data-text="">
BibTeX
</span>

<input id="citation-copy-content" value="" size="1" readonly="" dir="auto">
<button class="ui icon button" id="citation-clipboard-btn" data-tooltip-content="Copy" data-clipboard-target="#citation-copy-content" aria-label="Copy">
	<svg viewBox="0 0 16 16" class="svg octicon-copy" aria-hidden="true" width="16" height="16"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 0 1 0 1.5h-1.5a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-1.5a.75.75 0 0 1 1.5 0v1.5A1.75 1.75 0 0 1 9.25 16h-7.5A1.75 1.75 0 0 1 0 14.25Z"></path><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0 1 14.25 11h-7.5A1.75 1.75 0 0 1 5 9.25Zm1.75-.25a.25.25 0 0 0-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 0 0 .25-.25v-7.5a.25.25 0 0 0-.25-.25Z"></path></svg>
</button>

				<a id="goto-citation-btn" class="ui basic jump icon button" href="/nathandyer/Vocal/src/main/CITATION.cff" data-tooltip-content="Find a file" aria-label="Find a file">
					<svg viewBox="0 0 16 16" class="svg octicon-file-moved" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-3.5a.75.75 0 0 1 0-1.5h3.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177l-2.914-2.914a.25.25 0 0 0-.177-.073H3.75a.25.25 0 0 0-.25.25v6.5a.75.75 0 0 1-1.5 0z"></path><path d="m5.427 15.573 3.146-3.146a.25.25 0 0 0 0-.354L5.427 8.927A.25.25 0 0 0 5 9.104V11.5H.75a.75.75 0 0 0 0 1.5H5v2.396c0 .223.27.335.427.177"></path></svg>
				</a>
			</div>
		</div>
	</div>
	<div class="actions">
		<button class="ui cancel button">
			Cancel
		</button>
	</div>
</div>

				
				
			</div>
		</div>
		
			<table id="repo-files-table" class="ui single line table tw-mt-0">
	<thead>
		<tr class="commit-list">
			<th class="tw-overflow-hidden" colspan="2">
				<div class="tw-flex">
					<div class="latest-commit">
						
	
		<img class="ui avatar tw-align-middle tw-mr-1" src="/avatars/72027d1dcfc5e21590fe1aa6f25d8f0a?size=48" title="Nathan Dyer" width="24" height="24">
		
			<a class="muted author-wrapper" title="Nathan Dyer" href="/nathandyer"><strong>Nathan Dyer</strong></a>
		
	
	<a rel="nofollow" class="ui sha label  isSigned  isVerified" href="/nathandyer/Vocal/commit/539b4d83b83666ea3325fe21e1000705e2e868b4">
		<span class="shortsha">539b4d83b8</span>
		
			<div class="ui detail icon button">
	
		<div title="nathandyer / 020404FFA28482E9">
		
			<svg viewBox="0 0 14 16" class="svg gitea-lock" aria-hidden="true" width="16" height="16"><path d="M12.5 7h-.75V4.75A4.756 4.756 0 0 0 7 0a4.756 4.756 0 0 0-4.75 4.75V7H1.5A1.5 1.5 0 0 0 0 8.5v6A1.5 1.5 0 0 0 1.5 16h11a1.5 1.5 0 0 0 1.5-1.5v-6A1.5 1.5 0 0 0 12.5 7M9.25 7h-4.5V4.75C4.75 3.51 5.76 2.5 7 2.5s2.25 1.01 2.25 2.25z"></path></svg>
			<img class="ui avatar tw-align-middle signature" src="/avatars/72027d1dcfc5e21590fe1aa6f25d8f0a?size=56" title="Nathan Dyer" width="28" height="28">
		
		</div>
	
</div>

		
	</a>
	

	
	<span class="grey commit-summary" title="WIP: Add ability to mark episodes as played or unplayed"><span class="message-wrapper"><a href="/nathandyer/Vocal/commit/539b4d83b83666ea3325fe21e1000705e2e868b4" class="default-link muted">WIP: Add ability to mark episodes as played or unplayed</a></span>
		
	</span>


					</div>
				</div>
			</th>
			<th class="text grey right age"><relative-time prefix="" tense="past" datetime="2024-09-04T09:17:57-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 4, 2024, 1:17 PM UTC">2024-09-04 09:17:57 -04:00</relative-time></th>
		</tr>
	</thead>
	<tbody>
		
		
			
			
			
			<tr data-entryname="data" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/data" title="data">
									
									
									
										data
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="icons" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/icons/assets" title="icons/assets">
									
									
									
										
										<span class="text light-2">icons</span>/assets
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="meson" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/meson" title="meson">
									
									
									
										meson
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">cmake to meson (</a><a href="/nathandyer/Vocal/issues/500" class="ref-issue" aria-expanded="false">#500</a><a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">)</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2022-04-06T09:05:08-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Apr 6, 2022, 1:05 PM UTC">2022-04-06 09:05:08 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="po" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/po" title="po">
									
									
									
										po
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="src" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/src" title="src">
									
									
									
										src
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/539b4d83b83666ea3325fe21e1000705e2e868b4" class="default-link muted">WIP: Add ability to mark episodes as played or unplayed</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-04T09:17:57-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 4, 2024, 1:17 PM UTC">2024-09-04 09:17:57 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="tests" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/tests" title="tests">
									
									
									
										tests
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">cmake to meson (</a><a href="/nathandyer/Vocal/issues/500" class="ref-issue" aria-expanded="false">#500</a><a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">)</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2022-04-06T09:05:08-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Apr 6, 2022, 1:05 PM UTC">2022-04-06 09:05:08 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="vapi" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								
								<svg viewBox="0 0 16 16" class="svg octicon-file-directory-fill" aria-hidden="true" width="16" height="16"><path d="M1.75 1A1.75 1.75 0 0 0 0 2.75v10.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0 0 16 13.25v-8.5A1.75 1.75 0 0 0 14.25 3H7.5a.25.25 0 0 1-.2-.1l-.9-1.2C6.07 1.26 5.55 1 5 1z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/vapi" title="vapi">
									
									
									
										vapi
									
								</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/31a03c85267d17a9d62ee9cb0e8b3a24fe6ff575" class="default-link muted">remove executable bit from non-executable files</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2017-12-30T21:56:05+01:00" data-tooltip-content="" data-tooltip-interactive="true" title="Dec 30, 2017, 8:56 PM UTC">2017-12-30 21:56:05 +01:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname=".gitignore" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/.gitignore" title=".gitignore">.gitignore</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">cmake to meson (</a><a href="/nathandyer/Vocal/issues/500" class="ref-issue" aria-expanded="false">#500</a><a href="/nathandyer/Vocal/commit/1544141dc8e788f7c3854dada9a43aab7781ad97" class="default-link muted">)</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2022-04-06T09:05:08-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Apr 6, 2022, 1:05 PM UTC">2022-04-06 09:05:08 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="AUTHORS" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/AUTHORS" title="AUTHORS">AUTHORS</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="CODE_OF_CONDUCT.md" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/CODE_OF_CONDUCT.md" title="CODE_OF_CONDUCT.md">CODE_OF_CONDUCT.md</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/2938373200b05d4d4a583a14af061ad23f907398" class="default-link muted">Create CODE_OF_CONDUCT.md</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2017-07-06T16:30:39-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Jul 6, 2017, 8:30 PM UTC">2017-07-06 16:30:39 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="COPYING" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/COPYING" title="COPYING">COPYING</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/366d7b8f79c988f367666dcd36a64ded3507abcf" class="default-link muted">Initial port to GTK4/libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2022-06-17T09:07:26-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Jun 17, 2022, 1:07 PM UTC">2022-06-17 09:07:26 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="INSTALL" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/INSTALL" title="INSTALL">INSTALL</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="meson.build" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/meson.build" title="meson.build">meson.build</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="net.vocalproject.Vocal.json" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/net.vocalproject.Vocal.json" title="net.vocalproject.Vocal.json">net.vocalproject.Vocal.json</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
			
			
			
			<tr data-entryname="README.md" data-ready="true" class="ready entry">
				<td class="name four wide">
					<span class="truncate">
						
							
								<svg viewBox="0 0 16 16" class="svg octicon-file" aria-hidden="true" width="16" height="16"><path d="M2 1.75C2 .784 2.784 0 3.75 0h6.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16h-9.5A1.75 1.75 0 0 1 2 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h9.5a.25.25 0 0 0 .25-.25V6h-2.75A1.75 1.75 0 0 1 9 4.25V1.5Zm6.75.062V4.25c0 .138.112.25.25.25h2.688l-.011-.013-2.914-2.914z"></path></svg>
								<a class="muted" href="/nathandyer/Vocal/src/branch/main/README.md" title="README.md">README.md</a>
							
						
					</span>
				</td>
				<td class="message nine wide">
					<span class="truncate">
						
							
							<a href="/nathandyer/Vocal/commit/6ef844e8bdbbf016954b6f7cbb9f0ce8ee923590" class="default-link muted">WIP: Port to GTK4 and libadwaita</a>
						
					</span>
				</td>
				<td class="text right age three wide"><relative-time prefix="" tense="past" datetime="2024-09-02T19:38:22-04:00" data-tooltip-content="" data-tooltip-interactive="true" title="Sep 2, 2024, 11:38 PM UTC">2024-09-02 19:38:22 -04:00</relative-time></td>
			</tr>
		
	</tbody>
</table>

	<div id="readme" class="tab-size-4 non-diff-file-content">

	

	<h4 class="file-header ui top attached header tw-flex tw-items-center tw-justify-between tw-flex-wrap">
		<div class="file-header-left tw-flex tw-items-center tw-py-2 tw-pr-4">
			
				<svg viewBox="0 0 16 16" class="tw-mr-2 svg octicon-book" aria-hidden="true" width="16" height="16"><path d="M0 1.75A.75.75 0 0 1 .75 1h4.253c1.227 0 2.317.59 3 1.501A3.74 3.74 0 0 1 11.006 1h4.245a.75.75 0 0 1 .75.75v10.5a.75.75 0 0 1-.75.75h-4.507a2.25 2.25 0 0 0-1.591.659l-.622.621a.75.75 0 0 1-1.06 0l-.622-.621A2.25 2.25 0 0 0 5.258 13H.75a.75.75 0 0 1-.75-.75Zm7.251 10.324.004-5.073-.002-2.253A2.25 2.25 0 0 0 5.003 2.5H1.5v9h3.757a3.75 3.75 0 0 1 1.994.574M8.755 4.75l-.004 7.322a3.75 3.75 0 0 1 1.992-.572H14.5v-9h-3.495a2.25 2.25 0 0 0-2.25 2.25"></path></svg>
				<strong><a class="default-link muted" href="#readme">README.md</a></strong>
			
		</div>
		<div class="file-header-right file-actions tw-flex tw-items-center tw-flex-wrap">
			
			
			
		</div>
	</h4>
	<div class="ui bottom attached table unstackable segment">
		
		<div class="file-view markup markdown">
			
				<h1 id="user-content-vocal" dir="auto"><a class="anchor" href="#vocal"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Vocal</h1>
<h2 id="user-content-the-podcast-client-for-the-modern-free-desktop" dir="auto"><a class="anchor" href="#the-podcast-client-for-the-modern-free-desktop"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>The podcast client for the modern free desktop</h2>
<p dir="auto">Vocal is a podcast manager for the free desktop, built on modern technologies
like GTK4, libadwaita, and Flatpak. It follows the GNOME human interface
guidelines and feels most at home within a GNOME environment, but will work
well on other desktop environments.</p>
<p dir="auto">We intend for Vocal to be thoughtful and well-designed, but with additional
features and customization options beyond what's available in the GNOME
Podcasts application.</p>
<p dir="auto">Vocal was created in 2014, and is currently celebrating its tenth birthday!</p>
<h2 id="user-content-official-installation-options" dir="auto"><a class="anchor" href="#official-installation-options"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Official Installation Options</h2>
<h3 id="user-content-flatpak" dir="auto"><a class="anchor" href="#flatpak"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Flatpak</h3>
<p dir="auto">Vocal will be available on Flathub once 4.0.0 (stable) has been released.</p>
<p dir="auto">There is currently an old version of Vocal on Flathub that will be deprecated as
soon as the new stable release is ready. If you are not already an existing
Vocal user, we recommend waiting to install Vocal for now, as the current version
is quite out-of-date.</p>
<p dir="auto">Please note, it will be necessary to export your library and import it back once
4.0.0 has been released.</p>
<h4 id="user-content-building-from-source" dir="auto"><a class="anchor" href="#building-from-source"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Building from source</h4>
<p dir="auto">We strongly recommend using GNOME Builder to build from source. You can
clone this repo, open Builder, and point it at the Flatpak manifest file. From
there, it will handle pulling in the necessary dependencies, and allow you to
make changes or explore the project.</p>
<p dir="auto">If you prefer to do things manually, you can follow the steps below:</p>
<ol dir="auto">
<li>
<p dir="auto">Clone from source</p>
</li>
<li>
<p dir="auto">Install build dependencies</p>
</li>
<li>
<p dir="auto">Make the build folder:</p>
<ul dir="auto">
<li><code>cd vocal</code></li>
<li><code>mkdir -p build</code></li>
<li><code>cd build</code></li>
</ul>
</li>
<li>
<p dir="auto">Build the package:</p>
<ul dir="auto">
<li><code>meson build --prefix=/usr</code></li>
<li><code>ninja</code></li>
</ul>
</li>
<li>
<p dir="auto">Install the package:</p>
<ul dir="auto">
<li><code>sudo ninja install</code></li>
</ul>
</li>
</ol>
<h2 id="user-content-get-involved" dir="auto"><a class="anchor" href="#get-involved"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Get Involved</h2>
<h3 id="user-content-code" dir="auto"><a class="anchor" href="#code"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Code</h3>
<p dir="auto"><strong>Important: We are currently not accepting pull requests until 4.0.0
stable has been released.</strong></p>
<p dir="auto">We love collaborating with others and gladly welcome code contributions.
Pull requests are much appreciated. Please feel free to jump in and help with
any confirmed issues (make sure you leave a comment or assign yourself so we
know it's being worked on). If you have a new feature in mind that you would
like to work on, we recommend opening an issue first and making sure the feature
gets approved just so you don't spend your time implementing something that
wouldn't get accepted into the project.</p>
<p dir="auto">The Vocal project is hosted on Codeberg.</p>
<h3 id="user-content-bugs-and-feature-requests" dir="auto"><a class="anchor" href="#bugs-and-feature-requests"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Bugs and Feature Requests</h3>
<p dir="auto">Please report bugs and feature requests on Codeberg.</p>
<h3 id="user-content-translations" dir="auto"><a class="anchor" href="#translations"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>Translations</h3>
<p dir="auto">We're currently restructuring our Translations system. Please check back soon
for instructions on how to contribute translations.</p>
<h2 id="user-content-faqs-documentation-and-project-roadmaps" dir="auto"><a class="anchor" href="#faqs-documentation-and-project-roadmaps"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="svg octicon-link" width="16" height="16" aria-hidden="true"><path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .75.75 0 0 1 .018-1.042.75.75 0 0 1 1.042-.018 2 2 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.75.75 0 0 1-1.042-.018.75.75 0 0 1-.018-1.042m-4.69 9.64a2 2 0 0 0 2.83 0l1.25-1.25a.75.75 0 0 1 1.042.018.75.75 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .75.75 0 0 1-.018 1.042.75.75 0 0 1-1.042.018 2 2 0 0 0-2.83 0l-2.5 2.5a2 2 0 0 0 0 2.83"></path></svg></a>FAQs, Documentation, and Project Roadmaps</h2>
<p dir="auto">Please consult our wiki for documentation, frequently asked questions, and
project roadmaps.</p>

			
		</div>
	</div>
</div>



		
	</div>
</div>


	

	</div>

	

	<footer class="page-footer" role="group" aria-label="Footer">
	<div class="grid" aria-label="Links">
		<div class="branding not-mobile" aria-hidden="true">
			<img src="https://design.codeberg.org/logo-kit/icon_inverted.svg">
		</div>
		<div>
			<b>Codeberg</b>
			<ul>
				<li><a href="https://docs.codeberg.org" target="_blank">Documentation</a></li>
				<li><a href="/Codeberg/Community/issues">Community Issues</a></li>
				
				<li><a href="/Codeberg/Contributing">Contributing</a>
				</li><li><a href="https://docs.codeberg.org/contact/#abuse" target="_blank">Report Abuse</a>
			</li></ul>
		</div>
		<div>
			<b>Association</b>
			<ul>
				<li><a href="https://docs.codeberg.org/getting-started/what-is-codeberg/#what-is-codeberg-e.v.%3F" target="_blank">Who are we?</a></li>
				<li><a href="/codeberg/org/src/en/bylaws.md" target="_blank">Bylaws / Satzung</a></li>
				<li><a href="https://docs.codeberg.org/improving-codeberg/donate/" target="_blank">Donate</a></li>
				<li><a href="https://join.codeberg.org" target="_blank">Join / Support</a></li>
				<li><a href="https://docs.codeberg.org/contact/" target="_blank">Contact</a></li>
			</ul>
		</div>
		<div>
			<b>Service</b>
			<ul>
				<li><a href="https://codeberg.page" target="_blank">Codeberg Pages</a></li>
				<li><a href="https://translate.codeberg.org" target="_blank">Weblate Translations</a></li>
				<li><a href="https://docs.codeberg.org/ci/#using-codeberg's-instance-of-woodpecker-ci" target="_blank">Woodpecker CI</a></li>
				
					<li><a href="/api/swagger">Forgejo API</a></li>
				
				<li><a href="https://status.codeberg.eu" target="_blank">Status Page</a></li>
			</ul>
		</div>
		<div>
			<b>Legal</b>
			<ul>
				<li><a href="/codeberg/org/src/Imprint.md" target="_blank">Imprint / Impressum</a></li>
				<li><a href="/codeberg/org/src/PrivacyPolicy.md" target="_blank">Privacy Policy</a></li>
				<li><a href="/assets/licenses.txt">Licenses</a></li>
				<li><a href="/codeberg/org/src/TermsOfUse.md">Terms of Use</a></li>
			</ul>
		</div>
	</div>
	<center>
		<a href="https://blog.codeberg.org" target="_blank">Blog</a> |
		<a href="https://social.anoxinon.de/@Codeberg" target="_blank" rel="noopener noreferrer">Mastodon</a> |
		<a href="https://matrix.to/#/#codeberg-space:matrix.org" target="_blank" rel="noopener noreferrer">Matrix Space</a>
	</center>
	<div class="gt-float-right">
		<div class="ui language bottom floating slide up dropdown link item button" tabindex="0" role="menu" aria-haspopup="" aria-controls="_aria_auto_id_7" aria-expanded="false">
			<svg viewBox="0 0 16 16" class="svg octicon-globe" aria-hidden="true" width="16" height="16"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0M5.78 8.75a9.64 9.64 0 0 0 1.363 4.177q.383.64.857 1.215c.245-.296.551-.705.857-1.215A9.64 9.64 0 0 0 10.22 8.75Zm4.44-1.5a9.64 9.64 0 0 0-1.363-4.177c-.307-.51-.612-.919-.857-1.215a10 10 0 0 0-.857 1.215A9.64 9.64 0 0 0 5.78 7.25Zm-5.944 1.5H1.543a6.51 6.51 0 0 0 4.666 5.5q-.184-.271-.352-.552c-.715-1.192-1.437-2.874-1.581-4.948m-2.733-1.5h2.733c.144-2.074.866-3.756 1.58-4.948q.18-.295.353-.552a6.51 6.51 0 0 0-4.666 5.5m10.181 1.5c-.144 2.074-.866 3.756-1.58 4.948q-.18.296-.353.552a6.51 6.51 0 0 0 4.666-5.5Zm2.733-1.5a6.51 6.51 0 0 0-4.666-5.5q.184.272.353.552c.714 1.192 1.436 2.874 1.58 4.948Z"></path></svg>
			<div class="text">English</div>
			<div class="menu language-menu" tabindex="-1" id="_aria_auto_id_7" role="">
				
					<a lang="id-ID" data-url="/?lang=id-ID" class="item " id="_aria_auto_id_8" role="menuitem" tabindex="-1">Bahasa Indonesia</a>
				
					<a lang="de-DE" data-url="/?lang=de-DE" class="item " id="_aria_auto_id_9" role="menuitem" tabindex="-1">Deutsch</a>
				
					<a lang="en-US" data-url="/?lang=en-US" class="item active selected" id="_aria_auto_id_10" role="menuitem" tabindex="-1">English</a>
				
					<a lang="es-ES" data-url="/?lang=es-ES" class="item " id="_aria_auto_id_11" role="menuitem" tabindex="-1">Español</a>
				
					<a lang="eo" data-url="/?lang=eo" class="item " id="_aria_auto_id_12" role="menuitem" tabindex="-1">Esperanto</a>
				
					<a lang="fil" data-url="/?lang=fil" class="item " id="_aria_auto_id_13" role="menuitem" tabindex="-1">Filipino</a>
				
					<a lang="fr-FR" data-url="/?lang=fr-FR" class="item " id="_aria_auto_id_14" role="menuitem" tabindex="-1">Français</a>
				
					<a lang="it-IT" data-url="/?lang=it-IT" class="item " id="_aria_auto_id_15" role="menuitem" tabindex="-1">Italiano</a>
				
					<a lang="lv-LV" data-url="/?lang=lv-LV" class="item " id="_aria_auto_id_16" role="menuitem" tabindex="-1">Latviešu</a>
				
					<a lang="hu-HU" data-url="/?lang=hu-HU" class="item " id="_aria_auto_id_17" role="menuitem" tabindex="-1">Magyar nyelv</a>
				
					<a lang="nl-NL" data-url="/?lang=nl-NL" class="item " id="_aria_auto_id_18" role="menuitem" tabindex="-1">Nederlands</a>
				
					<a lang="pl-PL" data-url="/?lang=pl-PL" class="item " id="_aria_auto_id_19" role="menuitem" tabindex="-1">Polski</a>
				
					<a lang="pt-PT" data-url="/?lang=pt-PT" class="item " id="_aria_auto_id_20" role="menuitem" tabindex="-1">Português de Portugal</a>
				
					<a lang="pt-BR" data-url="/?lang=pt-BR" class="item " id="_aria_auto_id_21" role="menuitem" tabindex="-1">Português do Brasil</a>
				
					<a lang="sl" data-url="/?lang=sl" class="item " id="_aria_auto_id_22" role="menuitem" tabindex="-1">Slovenščina</a>
				
					<a lang="fi-FI" data-url="/?lang=fi-FI" class="item " id="_aria_auto_id_23" role="menuitem" tabindex="-1">Suomi</a>
				
					<a lang="sv-SE" data-url="/?lang=sv-SE" class="item " id="_aria_auto_id_24" role="menuitem" tabindex="-1">Svenska</a>
				
					<a lang="tr-TR" data-url="/?lang=tr-TR" class="item " id="_aria_auto_id_25" role="menuitem" tabindex="-1">Türkçe</a>
				
					<a lang="cs-CZ" data-url="/?lang=cs-CZ" class="item " id="_aria_auto_id_26" role="menuitem" tabindex="-1">Čeština</a>
				
					<a lang="el-GR" data-url="/?lang=el-GR" class="item " id="_aria_auto_id_27" role="menuitem" tabindex="-1">Ελληνικά</a>
				
					<a lang="bg" data-url="/?lang=bg" class="item " id="_aria_auto_id_28" role="menuitem" tabindex="-1">Български</a>
				
					<a lang="ru-RU" data-url="/?lang=ru-RU" class="item " id="_aria_auto_id_29" role="menuitem" tabindex="-1">Русский</a>
				
					<a lang="uk-UA" data-url="/?lang=uk-UA" class="item " id="_aria_auto_id_30" role="menuitem" tabindex="-1">Українська</a>
				
					<a lang="fa-IR" data-url="/?lang=fa-IR" class="item " id="_aria_auto_id_31" role="menuitem" tabindex="-1">فارسی</a>
				
					<a lang="ja-JP" data-url="/?lang=ja-JP" class="item " id="_aria_auto_id_32" role="menuitem" tabindex="-1">日本語</a>
				
					<a lang="zh-CN" data-url="/?lang=zh-CN" class="item " id="_aria_auto_id_33" role="menuitem" tabindex="-1">简体中文</a>
				
					<a lang="zh-TW" data-url="/?lang=zh-TW" class="item " id="_aria_auto_id_34" role="menuitem" tabindex="-1">繁體中文(台灣)</a>
				
					<a lang="zh-HK" data-url="/?lang=zh-HK" class="item " id="_aria_auto_id_35" role="menuitem" tabindex="-1">繁體中文(香港)</a>
				
					<a lang="ko-KR" data-url="/?lang=ko-KR" class="item " id="_aria_auto_id_36" role="menuitem" tabindex="-1">한국어</a>
				
			</div>
		</div>
	</div>
</footer>


	<script src="/assets/js/index.js?v=8.0.3-53-9d5cce4bcc~gitea-1.22.0" onerror="alert('Failed to load asset files from ' + this.src + '. Please make sure the asset files can be accessed.')"></script>

	



</body></html>