Skip to content

Commit f332282

Browse files
committed
Launch 🚀
0 parents  commit f332282

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

85 files changed

+22065
-0
lines changed

.env.example

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
SITE_URL=http://localhost:3000
2+
NODE_ENV=development
3+
HOTJAR_ID=1234567
4+
HOTJAR_VERSION=6

.gitignore

+155
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
# Nuxt dev/build outputs
2+
.output
3+
.data
4+
.nuxt
5+
.nitro
6+
.cache
7+
dist
8+
9+
# Node dependencies
10+
node_modules
11+
12+
# Logs
13+
logs
14+
*.log
15+
16+
# Misc
17+
.DS_Store
18+
.fleet
19+
.idea
20+
21+
# Local env files
22+
.env
23+
.env.*
24+
!.env.example
25+
26+
# Logs
27+
logs
28+
*.log
29+
npm-debug.log*
30+
yarn-debug.log*
31+
yarn-error.log*
32+
lerna-debug.log*
33+
.pnpm-debug.log*
34+
35+
# Diagnostic reports (https://nodejs.org/api/report.html)
36+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
37+
38+
# Runtime data
39+
pids
40+
*.pid
41+
*.seed
42+
*.pid.lock
43+
44+
# Directory for instrumented libs generated by jscoverage/JSCover
45+
lib-cov
46+
47+
# Coverage directory used by tools like istanbul
48+
coverage
49+
*.lcov
50+
51+
# nyc test coverage
52+
.nyc_output
53+
54+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
55+
.grunt
56+
57+
# Bower dependency directory (https://bower.io/)
58+
bower_components
59+
60+
# node-waf configuration
61+
.lock-wscript
62+
63+
# Compiled binary addons (https://nodejs.org/api/addons.html)
64+
build/Release
65+
66+
# Dependency directories
67+
node_modules/
68+
jspm_packages/
69+
70+
# Snowpack dependency directory (https://snowpack.dev/)
71+
web_modules/
72+
73+
# TypeScript cache
74+
*.tsbuildinfo
75+
76+
# Optional npm cache directory
77+
.npm
78+
79+
# Optional eslint cache
80+
.eslintcache
81+
82+
# Optional stylelint cache
83+
.stylelintcache
84+
85+
# Microbundle cache
86+
.rpt2_cache/
87+
.rts2_cache_cjs/
88+
.rts2_cache_es/
89+
.rts2_cache_umd/
90+
91+
# Optional REPL history
92+
.node_repl_history
93+
94+
# Output of 'npm pack'
95+
*.tgz
96+
97+
# Yarn Integrity file
98+
.yarn-integrity
99+
100+
# dotenv environment variable files
101+
.env
102+
.env.development.local
103+
.env.test.local
104+
.env.production.local
105+
.env.local
106+
107+
# parcel-bundler cache (https://parceljs.org/)
108+
.cache
109+
.parcel-cache
110+
111+
# Next.js build output
112+
.next
113+
out
114+
115+
# Nuxt.js build / generate output
116+
.nuxt
117+
dist
118+
119+
# Gatsby files
120+
.cache/
121+
# Comment in the public line in if your project uses Gatsby and not Next.js
122+
# https://nextjs.org/blog/next-9-1#public-directory-support
123+
# public
124+
125+
# vuepress build output
126+
.vuepress/dist
127+
128+
# vuepress v2.x temp and cache directory
129+
.temp
130+
.cache
131+
132+
# Docusaurus cache and generated files
133+
.docusaurus
134+
135+
# Serverless directories
136+
.serverless/
137+
138+
# FuseBox cache
139+
.fusebox/
140+
141+
# DynamoDB Local files
142+
.dynamodb/
143+
144+
# TernJS port file
145+
.tern-port
146+
147+
# Stores VSCode versions used for testing VSCode extensions
148+
.vscode-test
149+
150+
# yarn v2
151+
.yarn/cache
152+
.yarn/unplugged
153+
.yarn/build-state.yml
154+
.yarn/install-state.gz
155+
.pnp.*

.husky/pre-commit

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
npm run format && npm run lint:fix
2+
3+
# Add this to test the code before committing
4+
# exit 1

.prettierrc

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"arrowParens": "always",
3+
"endOfLine": "lf",
4+
"plugins": ["@ianvs/prettier-plugin-sort-imports", "prettier-plugin-tailwindcss"],
5+
"printWidth": 100,
6+
"semi": true,
7+
"singleQuote": false,
8+
"tabWidth": 2,
9+
"trailingComma": "es5",
10+
"useTabs": false,
11+
"vueIndentScriptAndStyle": true,
12+
"tailwindFunctions": ["tv"],
13+
"importOrder": ["<BUILTIN_MODULES>", "<THIRD_PARTY_MODULES>", "<TYPES>", "", "^[.]"]
14+
}

.vscode/settings.json

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"eslint.useFlatConfig": true
3+
}

LICENSE.md

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2024 Behon Baker.
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

+85
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
# TechNova Solutions Landing Page
2+
3+
Welcome to the TechNova Solutions landing page repository. This project is built using the Nuxt 4 to provide a modern, responsive, and user-friendly landing page for our fictional tech startup, TechNova Solutions. [UI Thing](https://ui-thing.behonbaker.com/getting-started/introduction) was used in the creation of this project 🙂.
4+
5+
## Overview
6+
7+
This project is a landing page for a fictional tech startup, TechNova Solutions. Use it if you want to create a landing page for your own project.
8+
9+
## Sections
10+
11+
This landing page includes the following sections:
12+
13+
- **Hero Section**
14+
- **Social Proof Section**
15+
- **Services Section**
16+
- **Review Section**
17+
- **FAQ Section**
18+
19+
## Nuxt Modules Used
20+
21+
This project leverages several modules from the Nuxt ecosystem to enhance functionality and development experience:
22+
23+
- Nuxt Translation Manager - https://github.com/samk-dev/nuxt-translation-manager
24+
- Nuxt i18n - https://i18n.nuxtjs.org/
25+
- Nuxt TailwindCSS - https://tailwindcss.nuxtjs.org/
26+
- Nuxt Color Mode - https://color-mode.nuxtjs.org/
27+
- VueUse Nuxt - https://vueuse.org/
28+
- Nuxt ESLint - https://eslint.nuxt.com/packages/module
29+
- Nuxt Icon - https://github.com/nuxt/icon
30+
- Nuxt Security - https://nuxt-security.vercel.app/
31+
- Nuxt Vite PWA - https://vite-pwa-org.netlify.app/frameworks/nuxt
32+
- Nuxt Hotjar - https://github.com/damevin/nuxt-module-hotjar
33+
- Nuxt GSAP - https://github.com/hypernym-studio/nuxt-gsap
34+
- Nuxt Marquee - https://hanzydev.github.io/nuxt-marquee/
35+
- Nuxt SEO - https://nuxtseo.com/nuxt-seo/getting-started/installation
36+
37+
Thanks to all the creators of these modules for making them available to the Nuxt community.
38+
39+
## Getting Started
40+
41+
Follow these steps to set up the project locally and get it running on your machine:
42+
43+
### Prerequisites
44+
45+
Ensure you have the following installed on your system:
46+
47+
- Node.js (version 18.x or later)
48+
- A package manager like npm or yarn
49+
50+
### Installation
51+
52+
1. **Clone the repository:**
53+
```bash
54+
npx --yes giget@latest gh:BayBreezy/technova my-project --install
55+
```
56+
2. **Navigate to the project directory:**
57+
```bash
58+
cd my-project
59+
```
60+
61+
### Environment Variables
62+
63+
Create a `.env` file in the root of the project and add the contents of the `.env.example` file to it. Fill in the necessary values for the environment variables.
64+
65+
### Development
66+
67+
Start te development server with the following command:
68+
69+
```bash
70+
npm run dev
71+
```
72+
73+
Open your browser and navigate to `http://localhost:3000` to view the project.
74+
75+
## Contributing
76+
77+
We welcome contributions to enhance this project. Please feel free to open issues or submit pull requests.
78+
79+
## License
80+
81+
This project is licensed under the MIT License.
82+
83+
---
84+
85+
Thank you for using the TechNova Solutions Landing Page repository. We hope this project helps you build a fantastic landing page for your business.

app/app.vue

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<template>
2+
<div>
3+
<NuxtRouteAnnouncer />
4+
<NuxtLoadingIndicator />
5+
<ConfigProvider :use-id="useIdFunction">
6+
<NuxtPwaManifest />
7+
<NuxtLayout>
8+
<NuxtPage />
9+
</NuxtLayout>
10+
<UiVueSonner />
11+
</ConfigProvider>
12+
</div>
13+
</template>
14+
15+
<script setup lang="ts">
16+
import { ConfigProvider } from "radix-vue";
17+
18+
const useIdFunction = () => useId();
19+
const { initialize } = useHotjar();
20+
21+
onMounted(() => {
22+
initialize();
23+
});
24+
25+
useHead({
26+
htmlAttrs: { lang: "en" },
27+
link: [{ rel: "icon", type: "image/png", href: "/logo-black.png" }],
28+
});
29+
</script>

app/assets/css/tailwind.css

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
@import url("https://rsms.me/inter/inter.css");
2+
3+
@tailwind base;
4+
@tailwind components;
5+
@tailwind utilities;
6+
7+
@layer base {
8+
:root {
9+
--background: 0 0% 100%;
10+
--foreground: 240 10% 3.9%;
11+
--card: 0 0% 100%;
12+
--card-foreground: 240 10% 3.9%;
13+
--popover: 0 0% 100%;
14+
--popover-foreground: 240 10% 3.9%;
15+
--primary: 240 5.9% 10%;
16+
--primary-foreground: 0 0% 98%;
17+
--secondary: 240 4.8% 95.9%;
18+
--secondary-foreground: 240 5.9% 10%;
19+
--muted: 240 4.8% 95.9%;
20+
--muted-foreground: 240 3.8% 46.1%;
21+
--accent: 240 4.8% 95.9%;
22+
--accent-foreground: 240 5.9% 10%;
23+
--destructive: 0 84.2% 60.2%;
24+
--destructive-foreground: 0 0% 98%;
25+
--border: 240 5.9% 90%;
26+
--input: 240 5.9% 90%;
27+
--ring: 240 5.9% 10%;
28+
--radius: 0.5rem;
29+
}
30+
31+
.dark {
32+
--background: 240 10% 3.9%;
33+
--foreground: 0 0% 98%;
34+
--card: 240 10% 3.9%;
35+
--card-foreground: 0 0% 98%;
36+
--popover: 240 10% 3.9%;
37+
--popover-foreground: 0 0% 98%;
38+
--primary: 0 0% 98%;
39+
--primary-foreground: 240 5.9% 10%;
40+
--secondary: 240 3.7% 15.9%;
41+
--secondary-foreground: 0 0% 98%;
42+
--muted: 240 3.7% 15.9%;
43+
--muted-foreground: 240 5% 64.9%;
44+
--accent: 240 3.7% 15.9%;
45+
--accent-foreground: 0 0% 98%;
46+
--destructive: 0 62.8% 30.6%;
47+
--destructive-foreground: 0 0% 98%;
48+
--border: 240 3.7% 15.9%;
49+
--input: 240 3.7% 15.9%;
50+
--ring: 240 4.9% 83.9%;
51+
}
52+
}
53+
54+
@layer base {
55+
* {
56+
@apply border-border;
57+
}
58+
body {
59+
@apply bg-background text-foreground;
60+
font-feature-settings:
61+
"rlig" 1,
62+
"calt" 1;
63+
}
64+
}

0 commit comments

Comments
 (0)