From 99a60c5b80437defa306d447732970b902cfa862 Mon Sep 17 00:00:00 2001 From: shialoth Date: Fri, 21 Feb 2025 18:23:37 +0530 Subject: [PATCH] intial setup --- .gitignore | 41 ++ README.md | 1 + eslint.config.mjs | 16 + next.config.ts | 7 + package.json | 30 + postcss.config.mjs | 8 + public/images/body-bg-2.png | Bin 0 -> 18376195 bytes public/images/body-bg.png | Bin 0 -> 424869 bytes public/images/sidebar-icon.png | Bin 0 -> 88571 bytes public/og-banner.png | Bin 0 -> 599733 bytes src/app/(home)/FAQsSection.tsx | 130 ++++ src/app/(home)/FeaturesSection.tsx | 108 +++ src/app/(home)/HeroSection.tsx | 65 ++ src/app/(home)/RoadmapSection.tsx | 225 ++++++ src/app/(home)/TokenomicsSection.tsx | 62 ++ src/app/(home)/page.tsx | 30 + src/app/dashboard/home/page.tsx | 920 ++++++++++++++++++++++++ src/app/delegate/page.tsx | 188 +++++ src/app/favicon.ico | Bin 0 -> 3902 bytes src/app/globals.css | 27 + src/app/layout.tsx | 58 ++ src/app/login/page.tsx | 217 ++++++ src/assets/images/brand/footer-logo.png | Bin 0 -> 40074 bytes src/assets/images/brand/logo.svg | 10 + src/assets/images/feature-1.svg | 6 + src/assets/images/feature-2.svg | 6 + src/assets/images/feature-3.svg | 6 + src/assets/images/feature-4.svg | 4 + src/assets/images/feature-5.svg | 9 + src/assets/images/hero-section-1.png | Bin 0 -> 83679 bytes src/assets/images/hero-section-2.png | Bin 0 -> 94788 bytes src/assets/images/hero-section-3.png | Bin 0 -> 65455 bytes src/assets/images/hero-section-4.png | Bin 0 -> 58918 bytes src/assets/images/tokenomics.png | Bin 0 -> 480401 bytes src/components/Footer.tsx | 63 ++ src/components/Navbar.tsx | 50 ++ src/components/ui/colourful-text.tsx | 54 ++ src/lib/utils.ts | 6 + tailwind.config.ts | 20 + tsconfig.json | 27 + 40 files changed, 2394 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 eslint.config.mjs create mode 100644 next.config.ts create mode 100644 package.json create mode 100644 postcss.config.mjs create mode 100644 public/images/body-bg-2.png create mode 100644 public/images/body-bg.png create mode 100644 public/images/sidebar-icon.png create mode 100644 public/og-banner.png create mode 100644 src/app/(home)/FAQsSection.tsx create mode 100644 src/app/(home)/FeaturesSection.tsx create mode 100644 src/app/(home)/HeroSection.tsx create mode 100644 src/app/(home)/RoadmapSection.tsx create mode 100644 src/app/(home)/TokenomicsSection.tsx create mode 100644 src/app/(home)/page.tsx create mode 100644 src/app/dashboard/home/page.tsx create mode 100644 src/app/delegate/page.tsx 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/login/page.tsx create mode 100644 src/assets/images/brand/footer-logo.png create mode 100644 src/assets/images/brand/logo.svg create mode 100644 src/assets/images/feature-1.svg create mode 100644 src/assets/images/feature-2.svg create mode 100644 src/assets/images/feature-3.svg create mode 100644 src/assets/images/feature-4.svg create mode 100644 src/assets/images/feature-5.svg create mode 100644 src/assets/images/hero-section-1.png create mode 100644 src/assets/images/hero-section-2.png create mode 100644 src/assets/images/hero-section-3.png create mode 100644 src/assets/images/hero-section-4.png create mode 100644 src/assets/images/tokenomics.png create mode 100644 src/components/Footer.tsx create mode 100644 src/components/Navbar.tsx create mode 100644 src/components/ui/colourful-text.tsx create mode 100644 src/lib/utils.ts create mode 100644 tailwind.config.ts create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5ef6a52 --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# env files (can opt-in for committing if needed) +.env* + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md new file mode 100644 index 0000000..7721c28 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Collano diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..c85fb67 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,16 @@ +import { dirname } from "path"; +import { fileURLToPath } from "url"; +import { FlatCompat } from "@eslint/eslintrc"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +const compat = new FlatCompat({ + baseDirectory: __dirname, +}); + +const eslintConfig = [ + ...compat.extends("next/core-web-vitals", "next/typescript"), +]; + +export default eslintConfig; diff --git a/next.config.ts b/next.config.ts new file mode 100644 index 0000000..e9ffa30 --- /dev/null +++ b/next.config.ts @@ -0,0 +1,7 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + /* config options here */ +}; + +export default nextConfig; diff --git a/package.json b/package.json new file mode 100644 index 0000000..309e53c --- /dev/null +++ b/package.json @@ -0,0 +1,30 @@ +{ + "name": "collano", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "dependencies": { + "clsx": "^2.1.1", + "motion": "^12.4.5", + "next": "15.1.7", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "tailwind-merge": "^3.0.1" + }, + "devDependencies": { + "@eslint/eslintrc": "^3", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "15.1.7", + "postcss": "^8", + "tailwindcss": "^3.4.1", + "typescript": "^5" + } +} diff --git a/postcss.config.mjs b/postcss.config.mjs new file mode 100644 index 0000000..1a69fd2 --- /dev/null +++ b/postcss.config.mjs @@ -0,0 +1,8 @@ +/** @type {import('postcss-load-config').Config} */ +const config = { + plugins: { + tailwindcss: {}, + }, +}; + +export default config; diff --git a/public/images/body-bg-2.png b/public/images/body-bg-2.png new file mode 100644 index 0000000000000000000000000000000000000000..eae138e7c1b1a37941cea3365493c3c2d81a097e GIT binary patch literal 18376195 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