diff --git a/apps/storybook/.storybook/main.ts b/apps/storybook/.storybook/main.ts
index f4e881888..84a80c5c3 100644
--- a/apps/storybook/.storybook/main.ts
+++ b/apps/storybook/.storybook/main.ts
@@ -14,7 +14,7 @@ const config: StorybookConfig = {
stories: [
'../src/**/*.mdx',
'../src/**/*.stories.@(js|jsx|ts|tsx|svelte)',
- '../../../packages/ui/src/**/*.stories.@(js|jsx|ts|tsx|svelte)',
+ '../../../packages/ui/src/components/**/*.stories.@(js|jsx|ts|tsx|svelte)',
],
addons: [
getAbsolutePath('@storybook/addon-links'),
diff --git a/apps/web/.env.example b/apps/web/.env.example
new file mode 100644
index 000000000..79fbe3895
--- /dev/null
+++ b/apps/web/.env.example
@@ -0,0 +1,4 @@
+GOOGLE_OAUTH_ID=
+GOOGLE_OAUTH_SECRET=
+
+DATABASE_URL=postgresql://username:password@localhost:5432/cugetreg
diff --git a/packages/ui/src/components/logo/cugetreg/DarkFull.svelte b/packages/ui/src/components/logo/cugetreg/DarkFull.svelte
new file mode 100644
index 000000000..9e8be2b00
--- /dev/null
+++ b/packages/ui/src/components/logo/cugetreg/DarkFull.svelte
@@ -0,0 +1,53 @@
+
diff --git a/packages/ui/src/components/logo/cugetreg/DarkSmall.svelte b/packages/ui/src/components/logo/cugetreg/DarkSmall.svelte
new file mode 100644
index 000000000..acfeeb186
--- /dev/null
+++ b/packages/ui/src/components/logo/cugetreg/DarkSmall.svelte
@@ -0,0 +1,81 @@
+
diff --git a/packages/ui/src/components/logo/cugetreg/WhiteFull.svelte b/packages/ui/src/components/logo/cugetreg/WhiteFull.svelte
new file mode 100644
index 000000000..ec6336990
--- /dev/null
+++ b/packages/ui/src/components/logo/cugetreg/WhiteFull.svelte
@@ -0,0 +1,53 @@
+
diff --git a/packages/ui/src/components/logo/cugetreg/WhiteSmall.svelte b/packages/ui/src/components/logo/cugetreg/WhiteSmall.svelte
new file mode 100644
index 000000000..b94f0a788
--- /dev/null
+++ b/packages/ui/src/components/logo/cugetreg/WhiteSmall.svelte
@@ -0,0 +1,81 @@
+
diff --git a/packages/ui/src/components/logo/cugetreg/index.ts b/packages/ui/src/components/logo/cugetreg/index.ts
new file mode 100644
index 000000000..cde89c770
--- /dev/null
+++ b/packages/ui/src/components/logo/cugetreg/index.ts
@@ -0,0 +1,4 @@
+export { default as CUGetRegDarkFull } from './DarkFull.svelte'
+export { default as CUGetRegDarkSmall } from './DarkSmall.svelte'
+export { default as CUGetRegWhiteFull } from './WhiteFull.svelte'
+export { default as CUGetRegWhiteSmall } from './WhiteSmall.svelte'
diff --git a/packages/ui/src/components/logo/thinc/OnDark.svelte b/packages/ui/src/components/logo/thinc/OnDark.svelte
new file mode 100644
index 000000000..907b1f890
--- /dev/null
+++ b/packages/ui/src/components/logo/thinc/OnDark.svelte
@@ -0,0 +1,110 @@
+
diff --git a/packages/ui/src/components/logo/thinc/OnLight.svelte b/packages/ui/src/components/logo/thinc/OnLight.svelte
new file mode 100644
index 000000000..ace454894
--- /dev/null
+++ b/packages/ui/src/components/logo/thinc/OnLight.svelte
@@ -0,0 +1,101 @@
+
diff --git a/packages/ui/src/components/logo/thinc/index.ts b/packages/ui/src/components/logo/thinc/index.ts
new file mode 100644
index 000000000..b1d229db4
--- /dev/null
+++ b/packages/ui/src/components/logo/thinc/index.ts
@@ -0,0 +1,2 @@
+export { default as ThincOnDark } from './OnDark.svelte'
+export { default as ThincOnLight } from './OnLight.svelte'
diff --git a/packages/ui/src/components/logo/vendor/GitHubMark.svelte b/packages/ui/src/components/logo/vendor/GitHubMark.svelte
new file mode 100644
index 000000000..6d45f3a86
--- /dev/null
+++ b/packages/ui/src/components/logo/vendor/GitHubMark.svelte
@@ -0,0 +1,14 @@
+
diff --git a/packages/ui/src/components/logo/vendor/index.ts b/packages/ui/src/components/logo/vendor/index.ts
new file mode 100644
index 000000000..9ce128e2b
--- /dev/null
+++ b/packages/ui/src/components/logo/vendor/index.ts
@@ -0,0 +1 @@
+export { default as GitHubMark } from './GitHubMark.svelte'
diff --git a/packages/ui/src/components/organism/footer/footer.stories.svelte b/packages/ui/src/components/organism/footer/footer.stories.svelte
new file mode 100644
index 000000000..ee79f3671
--- /dev/null
+++ b/packages/ui/src/components/organism/footer/footer.stories.svelte
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/ui/src/components/organism/footer/footer.svelte b/packages/ui/src/components/organism/footer/footer.svelte
new file mode 100644
index 000000000..eb4cbe64d
--- /dev/null
+++ b/packages/ui/src/components/organism/footer/footer.svelte
@@ -0,0 +1,36 @@
+
+
+
diff --git a/packages/ui/src/components/organism/footer/index.ts b/packages/ui/src/components/organism/footer/index.ts
new file mode 100644
index 000000000..1239908ef
--- /dev/null
+++ b/packages/ui/src/components/organism/footer/index.ts
@@ -0,0 +1 @@
+export { default as Footer } from './footer.svelte'