+
+ 👋 Welcome to Stacker News!
+
+
+ To get started, check out our{' '}
+ FAQs or{' '}
+ content guidelines, or go ahead and{' '}
+ {
+ me
+ ? (
+ make a post
+ )
+ : (
+ <>
+ signup or create an{' '}
+ anonymous post
+ >
+ )
+ }.
+
+
+ )
+}
diff --git a/components/banners.module.css b/components/banners.module.css
new file mode 100644
index 00000000..e18fdd73
--- /dev/null
+++ b/components/banners.module.css
@@ -0,0 +1,7 @@
+.banner {
+ margin-top: 1em;
+}
+
+.banner p:last-of-type {
+ margin-bottom: 0;
+}
diff --git a/fragments/users.js b/fragments/users.js
index 30709aa5..bbe2fd9c 100644
--- a/fragments/users.js
+++ b/fragments/users.js
@@ -33,6 +33,7 @@ export const ME = gql`
wildWestMode
greeterMode
lastCheckedJobs
+ hideWelcomeBanner
}
}`
@@ -108,6 +109,13 @@ gql`
}
`
+export const WELCOME_BANNER_MUTATION =
+gql`
+ mutation hideWelcomeBanner {
+ hideWelcomeBanner
+ }
+`
+
export const USER_SEARCH =
gql`
query searchUsers($q: String!, $limit: Int, $similarity: Float) {
diff --git a/pages/~/index.js b/pages/~/index.js
index a3bb8c0d..a52bacf2 100644
--- a/pages/~/index.js
+++ b/pages/~/index.js
@@ -4,6 +4,7 @@ import Items from '../../components/items'
import Layout from '../../components/layout'
import { SUB_ITEMS } from '../../fragments/subs'
import Snl from '../../components/snl'
+import WelcomeBanner from '../../components/banners'
export const getServerSideProps = getGetServerSideProps({
query: SUB_ITEMS,
@@ -17,6 +18,7 @@ export default function Sub ({ ssrData }) {
return (