From 2075496f9203cfbbfcd2b992dc2d249d16334f73 Mon Sep 17 00:00:00 2001 From: Ivan Dimitrov Date: Fri, 27 Oct 2023 18:12:20 +0300 Subject: [PATCH] initial --- .eslintrc.json | 3 ++ .gitignore | 35 ++++++++++++++ README.md | 36 ++++++++++++++ bun.lockb | Bin 0 -> 134760 bytes flake.lock | 25 ++++++++++ flake.nix | 98 ++++++++++++++++++++++++++++++++++++++ next.config.js | 4 ++ package.json | 27 +++++++++++ postcss.config.js | 6 +++ public/next.svg | 1 + public/vercel.svg | 1 + src/app/favicon.ico | Bin 0 -> 25931 bytes src/app/globals.css | 27 +++++++++++ src/app/layout.tsx | 22 +++++++++ src/app/page.tsx | 113 ++++++++++++++++++++++++++++++++++++++++++++ tailwind.config.ts | 20 ++++++++ tsconfig.json | 27 +++++++++++ 17 files changed, 445 insertions(+) create mode 100644 .eslintrc.json create mode 100644 .gitignore create mode 100644 README.md create mode 100755 bun.lockb create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 next.config.js create mode 100644 package.json create mode 100644 postcss.config.js create mode 100644 public/next.svg create mode 100644 public/vercel.svg create mode 100644 src/app/favicon.ico create mode 100644 src/app/globals.css create mode 100644 src/app/layout.tsx create mode 100644 src/app/page.tsx create mode 100644 tailwind.config.ts create mode 100644 tsconfig.json diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..bffb357 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "next/core-web-vitals" +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8f322f0 --- /dev/null +++ b/.gitignore @@ -0,0 +1,35 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md new file mode 100644 index 0000000..c403366 --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). + +## Getting Started + +First, run the development server: + +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev +``` + +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. + +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. + +This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. + +## Learn More + +To learn more about Next.js, take a look at the following resources: + +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. + +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! + +## Deploy on Vercel + +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. + +Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..6509af78ef0a6778d21696e9955106248072d3e8 GIT binary patch literal 134760 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 Yzdaj>*k9q?;S*6D?ct9h{XhKkzkbRn<^TWy literal 0 HcmV?d00001 diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..84b39ee --- /dev/null +++ b/flake.lock @@ -0,0 +1,25 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1698266953, + "narHash": "sha256-jf72t7pC8+8h8fUslUYbWTX5rKsRwOzRMX8jJsGqDXA=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "75a52265bda7fd25e06e3a67dee3f0354e73243c", + "type": "github" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..79efa39 --- /dev/null +++ b/flake.nix @@ -0,0 +1,98 @@ +{ + description = '' + ''; + + inputs = { + nixpkgs.url = "nixpkgs"; + }; + + outputs = { self, nixpkgs }: + let + system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.x86_64-linux; + lib = pkgs.lib; + stdenv = pkgs.stdenv; + pname = "idimitrov-dev"; + version = "1.0.0"; + src = ./.; + buildInputs = with pkgs; [ + coreutils-full + nodejs_20 + bun + ]; + tmuxConfig = '' + tmux new-session -s my_session -d + tmux new-window -t my_session:1 + tmux new-window -t my_session:2 + tmux send-keys -t my_session:1.0 'vi' C-m + tmux attach-session -t my_session + ''; + in + { + devShell.${system} = pkgs.mkShell { + inherit buildInputs; + shellHook = '' + ${tmuxConfig} + ''; + }; + packages.${system}.default = pkgs.stdenv.mkDerivation rec { + inherit buildInputs pname version src; + buildPhase = '' + mkdir -p $out + ''; + }; + nixosModules.default = { config, pkgs, ... }: + let cfg = config.website; in + { + options = { + website = { + enable = lib.mkEnableOption "website"; + }; + }; + + config = lib.mkIf cfg.enable { + services = { + nginx = { + recommendedGzipSettings = true; + recommendedOptimisation = true; + recommendedProxySettings = true; + recommendedTlsSettings = true; + sslCiphers = "AES256+EECDH:AES256+EDH:!aNULL"; + appendHttpConfig = '' + # Add HSTS header with preloading to HTTPS requests. + # Adding this header to HTTP requests is discouraged + map $scheme $hsts_header { + https "max-age=31536000; includeSubdomains; preload"; + } + add_header Strict-Transport-Security $hsts_header; + + # Enable CSP for your services. + #add_header Content-Security-Policy "script-src 'self'; object-src 'none'; base-uri 'none';" always; + + # Minimize information leaked to other domains + add_header 'Referrer-Policy' 'origin-when-cross-origin'; + + # Disable embedding as a frame + add_header X-Frame-Options DENY; + + # Prevent injection of code in other mime types (XSS Attacks) + add_header X-Content-Type-Options nosniff; + ''; + virtualHosts = { + "idimitrov.dev" = { + forceSSL = true; + enableACME = true; + root = self.packages.${system}.default; + default = true; + }; + }; + }; + }; + networking.firewall = { + allowedTCPPorts = [ 80 443 ]; + }; + }; + }; + }; +} + diff --git a/next.config.js b/next.config.js new file mode 100644 index 0000000..767719f --- /dev/null +++ b/next.config.js @@ -0,0 +1,4 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = {} + +module.exports = nextConfig diff --git a/package.json b/package.json new file mode 100644 index 0000000..fa3584b --- /dev/null +++ b/package.json @@ -0,0 +1,27 @@ +{ + "name": "idimitrov.dev", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "dependencies": { + "react": "latest", + "react-dom": "latest", + "next": "latest" + }, + "devDependencies": { + "typescript": "latest", + "@types/react": "latest", + "@types/node": "latest", + "@types/react-dom": "latest", + "autoprefixer": "latest", + "postcss": "latest", + "tailwindcss": "latest", + "eslint": "latest", + "eslint-config-next": "latest" + } +} diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 0000000..33ad091 --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/public/next.svg b/public/next.svg new file mode 100644 index 0000000..5174b28 --- /dev/null +++ b/public/next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/vercel.svg b/public/vercel.svg new file mode 100644 index 0000000..d2f8422 --- /dev/null +++ b/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/app/favicon.ico b/src/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 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 LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/src/app/globals.css b/src/app/globals.css new file mode 100644 index 0000000..fd81e88 --- /dev/null +++ b/src/app/globals.css @@ -0,0 +1,27 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +:root { + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; +} + +@media (prefers-color-scheme: dark) { + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; + } +} + +body { + color: rgb(var(--foreground-rgb)); + background: linear-gradient( + to bottom, + transparent, + rgb(var(--background-end-rgb)) + ) + rgb(var(--background-start-rgb)); +} diff --git a/src/app/layout.tsx b/src/app/layout.tsx new file mode 100644 index 0000000..ae84562 --- /dev/null +++ b/src/app/layout.tsx @@ -0,0 +1,22 @@ +import './globals.css' +import type { Metadata } from 'next' +import { Inter } from 'next/font/google' + +const inter = Inter({ subsets: ['latin'] }) + +export const metadata: Metadata = { + title: 'Create Next App', + description: 'Generated by create next app', +} + +export default function RootLayout({ + children, +}: { + children: React.ReactNode +}) { + return ( + + {children} + + ) +} diff --git a/src/app/page.tsx b/src/app/page.tsx new file mode 100644 index 0000000..e38c626 --- /dev/null +++ b/src/app/page.tsx @@ -0,0 +1,113 @@ +import Image from 'next/image' + +export default function Home() { + return ( +
+
+

+ Get started by editing  + src/app/page.tsx +

+ +
+ +
+ Next.js Logo +
+ + +
+ ) +} diff --git a/tailwind.config.ts b/tailwind.config.ts new file mode 100644 index 0000000..1af3b8f --- /dev/null +++ b/tailwind.config.ts @@ -0,0 +1,20 @@ +import type { Config } from 'tailwindcss' + +const config: Config = { + content: [ + './src/pages/**/*.{js,ts,jsx,tsx,mdx}', + './src/components/**/*.{js,ts,jsx,tsx,mdx}', + './src/app/**/*.{js,ts,jsx,tsx,mdx}', + ], + theme: { + extend: { + backgroundImage: { + 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))', + 'gradient-conic': + 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))', + }, + }, + }, + plugins: [], +} +export default config diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..e59724b --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./src/*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +}