├── assets ├── css │ ├── tailwind.css │ ├── style.css │ └── fonts.css ├── imgs │ ├── hero.png │ ├── buy-me-coffe.png │ └── github.svg └── fonts │ ├── SourceSansPro-Black.ttf │ ├── SourceSansPro-Bold.ttf │ ├── SourceSansPro-Italic.ttf │ ├── SourceSansPro-Light.ttf │ ├── SourceSansPro-Regular.ttf │ ├── SourceSansPro-SemiBold.ttf │ ├── SourceSansPro-BlackItalic.ttf │ ├── SourceSansPro-BoldItalic.ttf │ ├── SourceSansPro-ExtraLight.ttf │ ├── SourceSansPro-LightItalic.ttf │ ├── SourceSansPro-ExtraLightItalic.ttf │ └── SourceSansPro-SemiBoldItalic.ttf ├── static └── favicon.ico ├── .github └── FUNDING.yml ├── plugins └── aos.js ├── jsconfig.json ├── .editorconfig ├── store └── README.md ├── tailwind.config.js ├── tsconfig.json ├── package.json ├── nuxt.config.js ├── .gitignore ├── components └── layout │ ├── Footer.vue │ └── Nav.vue ├── README.md └── pages └── index.vue /assets/css/tailwind.css: -------------------------------------------------------------------------------- 1 | @tailwind base;@tailwind components;@tailwind utilities; -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /assets/imgs/hero.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/imgs/hero.png -------------------------------------------------------------------------------- /assets/imgs/buy-me-coffe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/imgs/buy-me-coffe.png -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | custom: https://www.buymeacoffee.com/hakimovDev 4 | -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-Black.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-Bold.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-Italic.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-Light.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-Regular.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-SemiBold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-SemiBold.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-BlackItalic.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-BoldItalic.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-ExtraLight.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-LightItalic.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /assets/fonts/SourceSansPro-SemiBoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hakimov-dev/landing-template/HEAD/assets/fonts/SourceSansPro-SemiBoldItalic.ttf -------------------------------------------------------------------------------- /plugins/aos.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import AOS from 'aos'; 3 | import 'aos/dist/aos.css'; 4 | 5 | // Initialize AOS 6 | AOS.init({ 7 | duration: 1200 8 | }); 9 | 10 | // Add AOS to the Vue prototype 11 | Vue.prototype.$aos = AOS; 12 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "~/*": ["./*"], 6 | "@/*": ["./*"], 7 | "~~/*": ["./*"], 8 | "@@/*": ["./*"] 9 | } 10 | }, 11 | "exclude": ["node_modules", ".nuxt", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /assets/css/style.css: -------------------------------------------------------------------------------- 1 | @import url(./tailwind.css);@import url(./fonts.css);*{transition:all .3s linear;font-family:'SourceSansPro',sans-serif}.gradient{background:linear-gradient(90deg,#d53369 0%,#daae51 100%)}@media (max-width:768px){[data-aos]{opacity:1 !important;transform:none !important;visibility:visible !important}}html{scroll-behavior:smooth}#customers,#pricing{scroll-margin-top:100px}img{user-select:none;user-drag:none;pointer-events:none} -------------------------------------------------------------------------------- /store/README.md: -------------------------------------------------------------------------------- 1 | # STORE 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Vuex Store files. 6 | Vuex Store option is implemented in the Nuxt.js framework. 7 | 8 | Creating a file in this directory automatically activates the option in the framework. 9 | 10 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). 11 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | // tailwind.config.js 2 | module.exports = { 3 | purge: [ 4 | './components/**/*.{vue,js}', 5 | './layouts/**/*.vue', 6 | './pages/**/*.vue', 7 | './plugins/**/*.{js,ts}', 8 | './nuxt.config.{js,ts}', 9 | ], 10 | darkMode: false, // or 'media' or 'class' 11 | theme: { 12 | extend: {}, 13 | }, 14 | variants: { 15 | extend: {}, 16 | }, 17 | plugins: [], 18 | } -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2018", 4 | "module": "ESNext", 5 | "moduleResolution": "Node", 6 | "lib": [ 7 | "ESNext", 8 | "ESNext.AsyncIterable", 9 | "DOM" 10 | ], 11 | "esModuleInterop": true, 12 | "allowJs": true, 13 | "sourceMap": true, 14 | "strict": true, 15 | "noEmit": true, 16 | "experimentalDecorators": true, 17 | "baseUrl": ".", 18 | "paths": { 19 | "~/*": [ 20 | "./*" 21 | ], 22 | "@/*": [ 23 | "./*" 24 | ] 25 | }, 26 | "types": [ 27 | "@nuxt/types", 28 | "@types/node" 29 | ] 30 | }, 31 | "exclude": [ 32 | "node_modules", 33 | ".nuxt", 34 | "dist" 35 | ] 36 | } 37 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "project-1", 3 | "version": "1.0.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "nuxt", 7 | "build": "nuxt build", 8 | "start": "nuxt start", 9 | "generate": "nuxt generate" 10 | }, 11 | "dependencies": { 12 | "aos": "^2.3.4", 13 | "core-js": "^3.25.3", 14 | "nuxt": "^2.15.8", 15 | "vue": "^2.7.10", 16 | "vue-server-renderer": "^2.7.10", 17 | "vue-template-compiler": "^2.7.10" 18 | }, 19 | "devDependencies": { 20 | "@nuxt/types": "^2.15.8", 21 | "@nuxt/typescript-build": "^2.1.0", 22 | "@nuxtjs/tailwindcss": "^6.8.0", 23 | "@types/aos": "^3.0.4", 24 | "@types/node": "^20.3.3", 25 | "autoprefixer": "^10.4.14", 26 | "postcss": "^8.4.24", 27 | "tailwindcss": "^3.3.2" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /assets/css/fonts.css: -------------------------------------------------------------------------------- 1 | @font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-Black.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-BlackItalic.ttf)}@font-face{font-family:'SourceSansPro';font-weight:800;src:url(../fonts/SourceSansPro-Bold.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-BoldItalic.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-ExtraLight.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-ExtraLightItalic.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-Italic.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-Light.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-LightItalic.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-Regular.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-SemiBold.ttf)}@font-face{font-family:'SourceSansPro';src:url(../fonts/SourceSansPro-SemiBoldItalic.ttf)} -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | // Disable server-side rendering: https://go.nuxtjs.dev/ssr-mode 3 | ssr: false, 4 | 5 | // Global page headers: https://go.nuxtjs.dev/config-head 6 | head: { 7 | title: 'Landing page', 8 | htmlAttrs: { 9 | lang: 'en' 10 | }, 11 | meta: [ 12 | { charset: 'utf-8' }, 13 | { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 14 | { hid: 'description', name: 'description', content: '' }, 15 | { name: 'format-detection', content: 'telephone=no' } 16 | ], 17 | link: [ 18 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } 19 | ] 20 | }, 21 | 22 | // Global CSS: https://go.nuxtjs.dev/config-css 23 | css: [ 24 | '~/assets/css/style.css' 25 | ], 26 | 27 | // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins 28 | plugins: [ 29 | { src: '~/plugins/aos.js', mode: 'client' } 30 | ], 31 | 32 | // Auto import components: https://go.nuxtjs.dev/config-components 33 | components: true, 34 | 35 | // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules 36 | buildModules: [ 37 | // https://go.nuxtjs.dev/typescript 38 | '@nuxt/typescript-build', 39 | '@nuxtjs/tailwindcss' 40 | ], 41 | 42 | // Modules: https://go.nuxtjs.dev/config-modules 43 | modules: [ 44 | ], 45 | 46 | // Build Configuration: https://go.nuxtjs.dev/config-build 47 | build: { 48 | postcss: { 49 | postcssOptions: { 50 | plugins: { 51 | tailwindcss: {}, 52 | autoprefixer: {}, 53 | }, 54 | }, 55 | }, 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Node template 3 | # Logs 4 | /logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # TypeScript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # parcel-bundler cache (https://parceljs.org/) 63 | .cache 64 | 65 | # next.js build output 66 | .next 67 | 68 | # nuxt.js build output 69 | .nuxt 70 | 71 | # Nuxt generate 72 | dist 73 | 74 | # vuepress build output 75 | .vuepress/dist 76 | 77 | # Serverless directories 78 | .serverless 79 | 80 | # IDE / Editor 81 | .idea 82 | 83 | # Service worker 84 | sw.* 85 | 86 | # macOS 87 | .DS_Store 88 | 89 | # Vim swap files 90 | *.swp 91 | -------------------------------------------------------------------------------- /assets/imgs/github.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | team-collaboration/version-control/github 6 | Created with Sketch. 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /components/layout/Footer.vue: -------------------------------------------------------------------------------- 1 | 136 | 137 | 144 | -------------------------------------------------------------------------------- /components/layout/Nav.vue: -------------------------------------------------------------------------------- 1 | 97 | 98 | 150 | 151 | 162 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Landing page template 2 | 3 | ![themeforest template](https://github.com/hakimov-dev/landing-template/assets/83240328/e09b9efb-732a-4d38-a409-d145eab7992b) 4 | 5 | ## Support this project 😇 6 | 7 | 8 | 9 | 10 | ## About this project 👨‍💻 11 | 12 | ### Introducing a Cutting-Edge Landing Page Powered by Nuxt.js, Vue.js, TypeScript, Tailwind CSS, and AOS! 13 | 14 | Our exceptional landing page showcases the perfect blend of innovative technologies, delivering a stunning user experience. Created using the powerful combination of Nuxt.js, Vue.js, TypeScript, Tailwind CSS, and AOS (Animate On Scroll), this landing page is a game-changer. 15 | 16 | Nuxt.js, built on Vue.js, provides server-side rendering and generates static sites, ensuring lightning-fast performance and improved search engine optimization. Vue.js, renowned for its simplicity and versatility, empowers seamless component integration, resulting in a seamless and interactive user journey. 17 | 18 | Harnessing the power of TypeScript, our landing page offers a robust development environment with enhanced code quality, increased collaboration, and improved productivity. Leveraging static typing and advanced tooling, TypeScript elevates your project's reliability and scalability. 19 | 20 | The visually captivating design of our landing page is made possible by Tailwind CSS. This utility-first CSS framework equips us with a comprehensive set of pre-built components and a flexible class-based system. With Tailwind CSS, we effortlessly customize styles while staying on top of the latest design trends. 21 | 22 | To add an extra layer of sophistication and interactivity, we have integrated the AOS (Animate On Scroll) library. Brace yourself for captivating animations triggered by scrolling, seamlessly enhancing the overall user experience. Engage and mesmerize your visitors with smooth transitions, fades, and parallax effects. 23 | 24 | Our landing page masterfully integrates these powerful technologies, ensuring optimal performance, unparalleled visual appeal, and intuitive user interaction. Whether you're promoting a product, service, or event, our landing page built with Nuxt.js, Vue.js, TypeScript, Tailwind CSS, and AOS is guaranteed to leave a lasting impression. 25 | 26 | Embark on a transformative journey by embracing the power of our exceptional landing page template. Experience the perfect convergence of aesthetics, functionality, and ease of use, all driven by the latest web technologies. Take your online presence to new heights with our remarkable landing page creation. 27 | 28 | Get started today and unlock a world of possibilities with our groundbreaking landing page template. Elevate your brand, captivate your audience, and set yourself apart from the competition with our powerful Nuxt.js, Vue.js, TypeScript, Tailwind CSS, and AOS landing page. 29 | 30 | ## Build Setup 31 | 32 | ```bash 33 | # install dependencies 34 | $ yarn install 35 | 36 | # serve with hot reload at localhost:3000 37 | $ yarn dev 38 | 39 | # build for production and launch server 40 | $ yarn build 41 | $ yarn start 42 | 43 | # generate static project 44 | $ yarn generate 45 | ``` 46 | 47 | For detailed explanation on how things work, check out the [documentation](https://nuxtjs.org). 48 | 49 | ## Special Directories 50 | 51 | You can create the following extra directories, some of which have special behaviors. Only `pages` is required; you can delete them if you don't want to use their functionality. 52 | 53 | ### `assets` 54 | 55 | The assets directory contains your uncompiled assets such as Stylus or Sass files, images, or fonts. 56 | 57 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/assets). 58 | 59 | ### `components` 60 | 61 | The components directory contains your Vue.js components. Components make up the different parts of your page and can be reused and imported into your pages, layouts and even other components. 62 | 63 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/components). 64 | 65 | ### `layouts` 66 | 67 | Layouts are a great help when you want to change the look and feel of your Nuxt app, whether you want to include a sidebar or have distinct layouts for mobile and desktop. 68 | 69 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/layouts). 70 | 71 | 72 | ### `pages` 73 | 74 | This directory contains your application views and routes. Nuxt will read all the `*.vue` files inside this directory and setup Vue Router automatically. 75 | 76 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/get-started/routing). 77 | 78 | ### `plugins` 79 | 80 | The plugins directory contains JavaScript plugins that you want to run before instantiating the root Vue.js Application. This is the place to add Vue plugins and to inject functions or constants. Every time you need to use `Vue.use()`, you should create a file in `plugins/` and add its path to plugins in `nuxt.config.js`. 81 | 82 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/plugins). 83 | 84 | ### `static` 85 | 86 | This directory contains your static files. Each file inside this directory is mapped to `/`. 87 | 88 | Example: `/static/robots.txt` is mapped as `/robots.txt`. 89 | 90 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/static). 91 | 92 | ### `store` 93 | 94 | This directory contains your Vuex store files. Creating a file in this directory automatically activates Vuex. 95 | 96 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/store). 97 | -------------------------------------------------------------------------------- /pages/index.vue: -------------------------------------------------------------------------------- 1 | 788 | 789 | 796 | --------------------------------------------------------------------------------