├── .env.example ├── .eslintignore ├── .github ├── .kodiak.toml └── PULL_REQUEST_TEMPLATE.md ├── .gitignore ├── .nvmrc ├── .vscode ├── extensions.json └── settings.json ├── README.example.md ├── README.md ├── index.d.ts ├── next-env.d.ts ├── next-sitemap.config.js ├── next.config.js ├── package.json ├── public ├── apple-touch-icon.png ├── favicon-dark.svg ├── favicon.ico ├── icon-192.png ├── icon-512.png └── manifest.webmanifest ├── src ├── app │ ├── app-hooks.tsx │ ├── favicon.svg │ ├── layout.tsx │ ├── opengraph-image.png │ ├── page.tsx │ ├── providers.tsx │ └── sections │ │ └── welcome │ │ ├── index.tsx │ │ └── welcome.module.css ├── components │ ├── README.md │ ├── aspect-box.tsx │ ├── container.tsx │ ├── header │ │ ├── header.module.scss │ │ ├── index.tsx │ │ └── mobile-menu.tsx │ ├── mux-video.tsx │ ├── portal.tsx │ └── primitives │ │ └── link │ │ └── index.tsx ├── context │ └── use-app-store.ts ├── css │ ├── global.scss │ ├── helpers.scss │ ├── layout.scss │ └── reset.css ├── hooks │ ├── use-device-detect.ts │ ├── use-elements-observer.ts │ ├── use-has-rendered.ts │ ├── use-image-fade-in.ts │ ├── use-intersection-observer.ts │ ├── use-is-hydrated.ts │ ├── use-media.ts │ ├── use-mousetrap.ts │ ├── use-prevent-scroll.ts │ ├── use-storage.ts │ ├── use-toggle-state.ts │ └── use-window-size.ts ├── lib │ ├── api-responses.ts │ ├── constants.ts │ ├── debug │ │ └── grid-debugger │ │ │ ├── grid.module.scss │ │ │ └── index.tsx │ ├── ga.tsx │ └── utils │ │ ├── can-prefetch.ts │ │ ├── create-context.tsx │ │ ├── image.ts │ │ ├── index.ts │ │ └── router.ts └── ts │ └── README.md ├── tsconfig.json └── yarn.lock /.env.example: -------------------------------------------------------------------------------- 1 | # Put your environment variable keys here. 2 | 3 | NEXT_PUBLIC_SITE_URL="" -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /.github/.kodiak.toml: -------------------------------------------------------------------------------- 1 | version = 1 -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/.gitignore -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 18.x 2 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.example.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/README.example.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/README.md -------------------------------------------------------------------------------- /index.d.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/next-env.d.ts -------------------------------------------------------------------------------- /next-sitemap.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/next-sitemap.config.js -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/next.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/package.json -------------------------------------------------------------------------------- /public/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/apple-touch-icon.png -------------------------------------------------------------------------------- /public/favicon-dark.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/favicon-dark.svg -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/icon-192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/icon-192.png -------------------------------------------------------------------------------- /public/icon-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/icon-512.png -------------------------------------------------------------------------------- /public/manifest.webmanifest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/public/manifest.webmanifest -------------------------------------------------------------------------------- /src/app/app-hooks.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/app-hooks.tsx -------------------------------------------------------------------------------- /src/app/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/favicon.svg -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/layout.tsx -------------------------------------------------------------------------------- /src/app/opengraph-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/opengraph-image.png -------------------------------------------------------------------------------- /src/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/page.tsx -------------------------------------------------------------------------------- /src/app/providers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/providers.tsx -------------------------------------------------------------------------------- /src/app/sections/welcome/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/sections/welcome/index.tsx -------------------------------------------------------------------------------- /src/app/sections/welcome/welcome.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/app/sections/welcome/welcome.module.css -------------------------------------------------------------------------------- /src/components/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/README.md -------------------------------------------------------------------------------- /src/components/aspect-box.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/aspect-box.tsx -------------------------------------------------------------------------------- /src/components/container.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/container.tsx -------------------------------------------------------------------------------- /src/components/header/header.module.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/header/header.module.scss -------------------------------------------------------------------------------- /src/components/header/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/header/index.tsx -------------------------------------------------------------------------------- /src/components/header/mobile-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/header/mobile-menu.tsx -------------------------------------------------------------------------------- /src/components/mux-video.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/mux-video.tsx -------------------------------------------------------------------------------- /src/components/portal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/portal.tsx -------------------------------------------------------------------------------- /src/components/primitives/link/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/components/primitives/link/index.tsx -------------------------------------------------------------------------------- /src/context/use-app-store.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/context/use-app-store.ts -------------------------------------------------------------------------------- /src/css/global.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/css/global.scss -------------------------------------------------------------------------------- /src/css/helpers.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/css/helpers.scss -------------------------------------------------------------------------------- /src/css/layout.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/css/layout.scss -------------------------------------------------------------------------------- /src/css/reset.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/css/reset.css -------------------------------------------------------------------------------- /src/hooks/use-device-detect.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-device-detect.ts -------------------------------------------------------------------------------- /src/hooks/use-elements-observer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-elements-observer.ts -------------------------------------------------------------------------------- /src/hooks/use-has-rendered.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-has-rendered.ts -------------------------------------------------------------------------------- /src/hooks/use-image-fade-in.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-image-fade-in.ts -------------------------------------------------------------------------------- /src/hooks/use-intersection-observer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-intersection-observer.ts -------------------------------------------------------------------------------- /src/hooks/use-is-hydrated.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-is-hydrated.ts -------------------------------------------------------------------------------- /src/hooks/use-media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-media.ts -------------------------------------------------------------------------------- /src/hooks/use-mousetrap.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-mousetrap.ts -------------------------------------------------------------------------------- /src/hooks/use-prevent-scroll.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-prevent-scroll.ts -------------------------------------------------------------------------------- /src/hooks/use-storage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-storage.ts -------------------------------------------------------------------------------- /src/hooks/use-toggle-state.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-toggle-state.ts -------------------------------------------------------------------------------- /src/hooks/use-window-size.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/hooks/use-window-size.ts -------------------------------------------------------------------------------- /src/lib/api-responses.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/api-responses.ts -------------------------------------------------------------------------------- /src/lib/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/constants.ts -------------------------------------------------------------------------------- /src/lib/debug/grid-debugger/grid.module.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/debug/grid-debugger/grid.module.scss -------------------------------------------------------------------------------- /src/lib/debug/grid-debugger/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/debug/grid-debugger/index.tsx -------------------------------------------------------------------------------- /src/lib/ga.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/ga.tsx -------------------------------------------------------------------------------- /src/lib/utils/can-prefetch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/utils/can-prefetch.ts -------------------------------------------------------------------------------- /src/lib/utils/create-context.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/utils/create-context.tsx -------------------------------------------------------------------------------- /src/lib/utils/image.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/utils/image.ts -------------------------------------------------------------------------------- /src/lib/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/utils/index.ts -------------------------------------------------------------------------------- /src/lib/utils/router.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/lib/utils/router.ts -------------------------------------------------------------------------------- /src/ts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/src/ts/README.md -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/basementstudio/next-typescript/HEAD/yarn.lock --------------------------------------------------------------------------------