chore: add sitemap generator (#4019)

* chore: add sitemap generator

* .com

* chore: downgrade supabase UI
This commit is contained in:
Jonathan Summers-Muir
2021-11-23 22:42:30 +08:00
committed by GitHub
parent 399ae9a530
commit a8c899cc99
6 changed files with 12761 additions and 609 deletions

View File

@@ -0,0 +1,82 @@
import { writeFileSync } from 'fs'
import { globby } from 'globby'
import prettier from 'prettier'
/*
* kudos to leerob from vercel
* https://leerob.io/blog/nextjs-sitemap-robots
*/
async function generate() {
const prettierConfig = await prettier.resolveConfig('./.prettierrc.js')
const pages = await globby([
'pages/*.js',
'pages/*.tsx',
'pages/*/*.tsx',
'data/**/*.mdx',
'_blog/*.mdx',
'!pages/index.tsx',
'!data/*.mdx',
'!pages/_*.js',
'!pages/*/index.tsx',
'!pages/api',
'!pages/404.js',
])
const sitemap = `
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
${pages
.filter((page) => !page.includes('_document.tsx'))
.map((page) => {
const path = page
.replace('pages', '')
// add a `/` for blog posts
.replace('_blog', '/blog')
.replace('.tsx', '')
.replace('.mdx', '')
// replace the paths for nested 'index' based routes
.replace('/auth/Auth', '/auth')
.replace('/database/Database', '/database')
.replace('/storage/Storage', '/storage')
let route = path === '/index' ? '' : path
//
// blog specific urls
//
if (route.includes('/blog/')) {
// clean blog post route from string
const _route = route.replace('/blog/', '')
// splut the url
let split = _route.split('')
// target and replace the `-` between dates
split[4] = '/'
split[7] = '/'
split[10] = '/'
// reconstruct the url
route = '/blog/' + split.join('')
}
return `
<url>
<loc>${`https://supabase.com${route}`}</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
`
})
.join('')}
</urlset>
`
const formatted = prettier.format(sitemap, {
...prettierConfig,
parser: 'html',
})
// eslint-disable-next-line no-sync
writeFileSync('public/sitemap_www.xml', formatted)
}
generate()

12812
www/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -9,24 +9,27 @@
"export": "next export",
"start": "next start",
"typecheck": "tsc",
"prettier": "prettier --write \"./{pages,components,lib,stores,styles,tests}/**/*.{ts,tsx,md,js,jsx,json}\""
"prettier": "prettier --write \"./{pages,components,lib,stores,styles,tests}/**/*.{ts,tsx,md,js,jsx,json}\"",
"postbuild": "node ./internals/generate-sitemap.mjs"
},
"dependencies": {
"@mdx-js/loader": "^1.6.22",
"@mdx-js/react": "^1.6.22",
"@next/mdx": "^10.0.7",
"@supabase/supabase-js": "^1.6.0",
"@supabase/ui": "^0.25.0",
"@supabase/ui": "0.25.0",
"chalk": "^2.4.2",
"classnames": "2.2.6",
"date-fns": "2.10.0",
"globby": "^12.0.2",
"gray-matter": "^4.0.2",
"markdown-toc": "^1.2.0",
"next": "latest",
"next-mdx-remote": "^2.1.3",
"next-seo": "^4.20.0",
"react": "^16.13.0",
"react": "^17.0.2",
"react-copy-to-clipboard": "^5.0.2",
"react-dom": "^16.13.0",
"react-dom": "^17.0.2",
"react-ga": "^3.3.0",
"react-markdown": "^5.0.3",
"react-syntax-highlighter": "^15.3.1",

2
www/public/robots.txt Normal file
View File

@@ -0,0 +1,2 @@
User-agent: *
Sitemap: https://supabase.com/sitemap.xml

9
www/public/sitemap.xml Normal file
View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://supabase.com/sitemap_www.xml</loc>
</sitemap>
<sitemap>
<loc>http://supabase.com/docs/sitemap.xml</loc>
</sitemap>
</sitemapindex>

454
www/public/sitemap_www.xml Normal file
View File

@@ -0,0 +1,454 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://supabase.com/_app</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/beta</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/brand-assets</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/company</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/support</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/storage</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/auth</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/database</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/05/01/supabase-alpha-april-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/06/01/supabase-alpha-may-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/06/15/supabase-steve-chavez</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/07/01/supabase-alpha-june-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/07/09/postgresql-templates</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/07/10/alpha-launch-postmortem</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/07/17/postgresql-physical-logical-backups</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/08/02/continuous-postgresql-backup-walg</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/08/02/supabase-alpha-july-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/08/05/supabase-auth</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/09/03/supabase-alpha-august-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/09/11/supabase-hacktoberfest-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/10/03/supabase-alpha-september-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/10/30/improved-dx</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/11/02/supabase-alpha-october-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/11/18/postgresql-views</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/01/supabase-alpha-november-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/02/case-study-monitoro</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/02/case-study-tayfa</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/02/case-study-xendit</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/02/supabase-striveschool</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2020/12/13/supabase-dashboard-performance</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/01/02/supabase-beta-december-2020</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/02/02/supabase-beta-january-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/02/09/case-study-roboflow</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/02/27/cracking-postgres-interview</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/02/supabase-beta-february-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/05/postgres-as-a-cron-server</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc
>https://supabase.com/blog/2021/03/08/toad-a-link-shortener-with-simple-apis-for-low-coders</loc
>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/11/using-supabase-replit</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/22/In-The-Loop</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/25/angels-of-supabase</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/25/launch-week</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/29/pricing</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/30/supabase-storage</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/03/31/supabase-cli</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/04/01/supabase-nft-marketplace</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/04/02/supabase-dot-com</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/04/02/supabase-pgbouncer</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/04/02/supabase-workflows</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/04/06/supabase-beta-march-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/05/03/supabase-beta-april-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/06/02/supabase-beta-may-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/01/roles-postgres-hooks</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/02/supabase-beta-june-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/22/supabase-launch-week-sql</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/26/epsilon3-self-hosting</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/26/supabase-community-day</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/26/supabase-postgres-13</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/27/spot-flutter-with-postgres</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/27/storage-beta</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/28/mobbin-supabase-200000-users</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/28/supabase-auth-passwordless-sms-login</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/29/supabase-reports-and-metrics</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/30/1-the-supabase-hackathon</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/30/supabase-functions-updates</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/07/30/supabase-swag-store</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/08/09/hackathon-winners</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/08/12/supabase-beta-july-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/09/10/supabase-beta-august-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/09/28/supabase-hacktoberfest-hackathon-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/10/04/supabase-beta-sept-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/10/14/hacktoberfest-hackathon-winners-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/10/19/replenysh-time-to-value-in-less-than-24-hours</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/10/28/supabase-series-a</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
<url>
<loc>https://supabase.com/blog/2021/11/05/supabase-beta-october-2021</loc>
<changefreq>weekly</changefreq>
<changefreq>0.5</changefreq>
</url>
</urlset>