|
|
|
|
@ -2,28 +2,28 @@
@@ -2,28 +2,28 @@
|
|
|
|
|
import Container from '$lib/components/Container.svelte' |
|
|
|
|
import ReposSummaryList from '$lib/components/ReposSummaryList.svelte' |
|
|
|
|
import ProposalsList from '$lib/components/proposals/ProposalsList.svelte' |
|
|
|
|
import { summary_defaults, type RepoEvent, type RepoSummary } from '$lib/components/repo/type' |
|
|
|
|
import { |
|
|
|
|
summary_defaults, |
|
|
|
|
type RepoEvent, |
|
|
|
|
type RepoSummary, |
|
|
|
|
} from '$lib/components/repo/type' |
|
|
|
|
import { repo_kind } from '$lib/kinds' |
|
|
|
|
import { |
|
|
|
|
ensureProposalSummaries, |
|
|
|
|
proposal_summaries, |
|
|
|
|
} from '$lib/stores/Proposals' |
|
|
|
|
import { |
|
|
|
|
ensureRepo, |
|
|
|
|
ensureRepoCollection, |
|
|
|
|
repoCollectionToSummary, |
|
|
|
|
repoEventToSummary, |
|
|
|
|
returnRepo, |
|
|
|
|
} from '$lib/stores/repos' |
|
|
|
|
import { writable, type Writable } from 'svelte/store' |
|
|
|
|
import { ensureRepo, repoEventToSummary } from '$lib/stores/repos' |
|
|
|
|
import { writable, type Writable } from 'svelte/store' |
|
|
|
|
|
|
|
|
|
ensureProposalSummaries(undefined) |
|
|
|
|
|
|
|
|
|
let example_repos: Writable<RepoSummary[]> = writable([]) |
|
|
|
|
const updateRepos = (r: RepoEvent) => { |
|
|
|
|
example_repos.update(repos => { |
|
|
|
|
example_repos.update((repos) => { |
|
|
|
|
return [ |
|
|
|
|
...repos.filter((s) => s.identifier.length > 0 && s.identifier !== r.identifier), |
|
|
|
|
...repos.filter( |
|
|
|
|
(s) => s.identifier.length > 0 && s.identifier !== r.identifier |
|
|
|
|
), |
|
|
|
|
repoEventToSummary(r) || { |
|
|
|
|
...summary_defaults, |
|
|
|
|
}, |
|
|
|
|
@ -39,24 +39,6 @@ import { writable, type Writable } from 'svelte/store'
@@ -39,24 +39,6 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
).subscribe(updateRepos) |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<div role="alert" class="alert"> |
|
|
|
|
<svg |
|
|
|
|
xmlns="http://www.w3.org/2000/svg" |
|
|
|
|
class="h-6 w-6 shrink-0 stroke-current" |
|
|
|
|
fill="none" |
|
|
|
|
viewBox="0 0 24 24" |
|
|
|
|
><path |
|
|
|
|
stroke-linecap="round" |
|
|
|
|
stroke-linejoin="round" |
|
|
|
|
stroke-width="2" |
|
|
|
|
d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" |
|
|
|
|
/></svg |
|
|
|
|
> |
|
|
|
|
<div> |
|
|
|
|
<h3 class="prose text-xs">Warning Experimental: expect breaking changes</h3> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<Container> |
|
|
|
|
<div> |
|
|
|
|
<div class="m-auto mt-5 max-w-lg text-center"> |
|
|
|
|
@ -75,6 +57,7 @@ import { writable, type Writable } from 'svelte/store'
@@ -75,6 +57,7 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
</Container> |
|
|
|
|
|
|
|
|
|
<Container> |
|
|
|
|
<div class="m-auto max-w-5xl"> |
|
|
|
|
<div class="grid gap-4 md:grid-cols-3"> |
|
|
|
|
<div class="card bg-base-300"> |
|
|
|
|
<div class="card-body"> |
|
|
|
|
@ -82,8 +65,8 @@ import { writable, type Writable } from 'svelte/store'
@@ -82,8 +65,8 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
<h3>nostr</h3> |
|
|
|
|
</div> |
|
|
|
|
<div class="prose"> |
|
|
|
|
An open protocol that is able to create a censorship resistant global |
|
|
|
|
"social" network once and for all |
|
|
|
|
An open protocol that is able to create a censorship resistant |
|
|
|
|
global "social" network once and for all |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
@ -148,12 +131,11 @@ import { writable, type Writable } from 'svelte/store'
@@ -148,12 +131,11 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
</div> |
|
|
|
|
<div class=""></div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</Container> |
|
|
|
|
|
|
|
|
|
<Container> |
|
|
|
|
<div class="mx-auto my-8 grid gap-4 md:grid-cols-2"> |
|
|
|
|
<div class="items"> |
|
|
|
|
<div class="w-lg prose m-auto my-6"> |
|
|
|
|
<div class="prose m-auto mb-6 mt-6"> |
|
|
|
|
<h2>How it works</h2> |
|
|
|
|
<p> |
|
|
|
|
Git is a decentralized version control system, yet most freedom tech |
|
|
|
|
@ -164,15 +146,19 @@ import { writable, type Writable } from 'svelte/store'
@@ -164,15 +146,19 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
ngit and gitworkshop.dev are tools to enable code collaboration over |
|
|
|
|
nostr. ngit allows contributors to manage the flow to open a proposal, |
|
|
|
|
maintainers to verify proposals and incorporate them into the project. |
|
|
|
|
Gitworkshop.dev provides a visual interface to discuss proposals and |
|
|
|
|
open issues. |
|
|
|
|
Gitworkshop.dev provides a visual interface to discuss proposals and open |
|
|
|
|
issues. |
|
|
|
|
</p> |
|
|
|
|
<a href="/about" class="btn btn-secondary text-right">learn more</a> |
|
|
|
|
<h2>Example Repositories</h2> |
|
|
|
|
<p>These repositories have plenty of issues and proposals to explore</p> |
|
|
|
|
<div class="not-prose w-[64rem]"> |
|
|
|
|
<ReposSummaryList repos={$example_repos} loading={false} /> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="hero"> |
|
|
|
|
<a href="/repos" class="btn btn-primary mt-9">List More Repositories</a> |
|
|
|
|
<h2>Recent Proposals</h2> |
|
|
|
|
<div class="not-prose mt-6"> |
|
|
|
|
<ProposalsList |
|
|
|
|
title="Recent Proposals" |
|
|
|
|
proposals_or_issues={$proposal_summaries.summaries} |
|
|
|
|
show_repo={true} |
|
|
|
|
loading={$proposal_summaries.loading} |
|
|
|
|
@ -182,15 +168,3 @@ import { writable, type Writable } from 'svelte/store'
@@ -182,15 +168,3 @@ import { writable, type Writable } from 'svelte/store'
|
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</Container> |
|
|
|
|
|
|
|
|
|
<Container> |
|
|
|
|
<div class="prose mb-6"> |
|
|
|
|
<h2>Example Repositories</h2> |
|
|
|
|
<p>These repositories have plenty of issues and proposals to explore</p> |
|
|
|
|
</div> |
|
|
|
|
<ReposSummaryList |
|
|
|
|
repos={$example_repos} |
|
|
|
|
loading={false} |
|
|
|
|
/> |
|
|
|
|
<a href="/repos" class="btn btn-primary mt-9">List More Repositories</a> |
|
|
|
|
</Container> |
|
|
|
|
|