├── .eslintrc.json ├── .vscode └── settings.json ├── public ├── favicon.ico ├── vercel.svg ├── thirteen.svg └── next.svg ├── assets ├── keyboard.png ├── keyboard1.png ├── keyboard2.png ├── keyboard3.png ├── keyboard4.png └── keyboard-cover.png ├── postcss.config.js ├── jsconfig.json ├── next.config.js ├── pages ├── _app.js ├── api │ └── hello.js ├── about │ ├── index.jsx │ └── [id].js ├── _document.js ├── products │ ├── index.jsx │ └── [id].jsx └── index.js ├── .gitignore ├── components ├── rating.jsx ├── landingScreen.jsx ├── landing.jsx ├── navbar.jsx ├── features.jsx ├── footer.jsx └── products.jsx ├── package.json ├── tailwind.config.js ├── LICENSE ├── README.md ├── styles ├── globals.css └── Home.module.css └── yarn.lock /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "jira-plugin.workingProject": "" 3 | } -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /assets/keyboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard.png -------------------------------------------------------------------------------- /assets/keyboard1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard1.png -------------------------------------------------------------------------------- /assets/keyboard2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard2.png -------------------------------------------------------------------------------- /assets/keyboard3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard3.png -------------------------------------------------------------------------------- /assets/keyboard4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard4.png -------------------------------------------------------------------------------- /assets/keyboard-cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PB2204/Keyboardr/HEAD/assets/keyboard-cover.png -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "@/*": ["./*"] 6 | } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = { 3 | reactStrictMode: true, 4 | } 5 | 6 | module.exports = nextConfig 7 | -------------------------------------------------------------------------------- /pages/_app.js: -------------------------------------------------------------------------------- 1 | import '@/styles/globals.css' 2 | 3 | export default function App({ Component, pageProps }) { 4 | return 5 | } 6 | -------------------------------------------------------------------------------- /pages/api/hello.js: -------------------------------------------------------------------------------- 1 | // Next.js API route support: https://nextjs.org/docs/api-routes/introduction 2 | 3 | export default function handler(req, res) { 4 | res.status(200).json({ name: 'John Doe' }) 5 | } 6 | -------------------------------------------------------------------------------- /pages/about/index.jsx: -------------------------------------------------------------------------------- 1 | export default function About(){ 2 | return( 3 | <> 4 |
5 |

This is the about page

6 |
7 | 8 | ) 9 | } -------------------------------------------------------------------------------- /pages/_document.js: -------------------------------------------------------------------------------- 1 | import { Html, Head, Main, NextScript } from 'next/document' 2 | 3 | export default function Document() { 4 | return ( 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | ) 13 | } 14 | -------------------------------------------------------------------------------- /pages/about/[id].js: -------------------------------------------------------------------------------- 1 | 2 | import { useRouter } from 'next/router' 3 | 4 | export default function AboutWithId(){ 5 | const router = useRouter() 6 | 7 | 8 | return( 9 | 10 |
11 |

This is the about page with id {router.query.id}

12 |
13 | 14 | ) 15 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | .pnpm-debug.log* 27 | 28 | # local env files 29 | .env*.local 30 | 31 | # vercel 32 | .vercel 33 | -------------------------------------------------------------------------------- /components/rating.jsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import { FaStar } from "react-icons/fa"; 3 | 4 | export const Rating = ({ value = 0, max = 5 }) => { 5 | return ( 6 |
7 | {[...Array(max)].map((_, index) => { 8 | const ratingValue = index + 1; 9 | return ( 10 | 16 | ); 17 | })} 18 |
19 | ); 20 | }; 21 | -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "keyboardr", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "next dev", 7 | "build": "next build", 8 | "start": "next start", 9 | "lint": "next lint" 10 | }, 11 | "dependencies": { 12 | "@next/font": "13.5.6", 13 | "eslint": "8.34.0", 14 | "eslint-config-next": "14.1.0", 15 | "next": "14.2.7", 16 | "react": "18.2.0", 17 | "react-alice-carousel": "^2.7.0", 18 | "react-dom": "18.2.0", 19 | "react-icons": "^4.12.0" 20 | }, 21 | "devDependencies": { 22 | "autoprefixer": "^10.4.13", 23 | "postcss": "^8.4.21", 24 | "tailwindcss": "^3.2.6" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | module.exports = { 3 | content: [ 4 | "./app/**/*.{js,ts,jsx,tsx}", 5 | "./pages/**/*.{js,ts,jsx,tsx}", 6 | "./components/**/*.{js,ts,jsx,tsx}", 7 | ], 8 | darkMode: true, 9 | theme: { 10 | extend: { 11 | colors: { 12 | cyan: "#1E90FF", 13 | }, 14 | boxShadow: { 15 | navbar: "0px 2px 4px rgba(0, 0, 0, 0.05)", 16 | }, 17 | fontFamily: { 18 | sans: ["Inter", "sans-serif"], 19 | }, 20 | flex: { 21 | navbar: "0 0 auto", 22 | }, 23 | spacing: { 24 | navbar: "72px", 25 | }, 26 | }, 27 | }, 28 | variants: { 29 | extend: {}, 30 | }, 31 | plugins: [], 32 | } -------------------------------------------------------------------------------- /pages/products/index.jsx: -------------------------------------------------------------------------------- 1 | import Head from "next/head"; 2 | import Image from "next/image"; 3 | import Link from "next/link"; 4 | import { Inter } from "@next/font/google"; 5 | import styles from "@/styles/Home.module.css"; 6 | import Navbar from "../../components/navbar"; 7 | import { LandingSection } from "../../components/landing"; 8 | import Products from "../../components/products"; 9 | import { Footer } from "../../components/footer"; 10 | 11 | const inter = Inter({ subsets: ["latin"] }); 12 | 13 | export default function ProductPage() { 14 | return ( 15 | <> 16 | 17 | Prooducts 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |