This commit is contained in:
2024-05-20 20:03:18 +03:00
parent 48ecf18982
commit d3d62f6490
19 changed files with 8187 additions and 0 deletions

43
.gitignore vendored
View File

@@ -292,3 +292,46 @@ cython_debug/
# option (not recommended) you can uncomment the following to ignore the entire idea folder. # option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/ #.idea/
# build output
dist/
# generated types
.astro/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# environment variables
.env
.env.production
# macOS-specific files
.DS_Store
# jetbrains setting folder
.idea/
# build output
dist/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# environment variables
.env
.env.production
# macOS-specific files
.DS_Store

4
.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,4 @@
{
"recommendations": ["astro-build.astro-vscode"],
"unwantedRecommendations": []
}

11
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,11 @@
{
"version": "0.2.0",
"configurations": [
{
"command": "./node_modules/.bin/astro dev",
"name": "Development server",
"request": "launch",
"type": "node-terminal"
}
]
}

View File

@@ -1,2 +1,40 @@
# vikileo-shop-SITE # vikileo-shop-SITE
# Astro & Tailwind CSS Starter Kit
## Template Integrations
- @astrojs/tailwind - https://docs.astro.build/en/guides/integrations-guide/tailwind/
- @astrojs/sitemap - https://docs.astro.build/en/guides/integrations-guide/sitemap/
- ## License
This template is open-source software licensed under the [GPL-3.0 license](https://opensource.org/licenses/GPL-3.0). Feel free to fork, modify, and use it in your projects.
## Template Structure
Inside of your Astro project, you'll see the following folders and files:
```
/
├── public/
├── src/
│ └── components/
│ └── layouts/
│ └── pages/
│ └── index.astro
│ └── styles/
└── package.json
```
Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
Any static assets, like images, can be placed in the `public/` directory.
## Commands
All commands are run from the root of the project, from a terminal:
| Command | Action |
| :--------------------- | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `npm run astro --help` | Get help using the Astro CLI |
## Want to learn more?
Feel free to check Astroäs [documentation](https://docs.astro.build)
# quickstore

7
astro.config.mjs Normal file
View File

@@ -0,0 +1,7 @@
import { defineConfig } from 'astro/config';
import tailwind from "@astrojs/tailwind";
import sitemap from "@astrojs/sitemap";
export default defineConfig({
site: 'https://lexingtonthemes.com',
integrations: [tailwind(), sitemap()]
});

7643
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

19
package.json Normal file
View File

@@ -0,0 +1,19 @@
{
"name": "michael-andreuzza-quickstore",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro check && astro build",
"preview": "astro preview",
"astro": "astro"
},
"dependencies": {
"@astrojs/check": "^0.6.0",
"@astrojs/sitemap": "^3.1.4",
"@astrojs/tailwind": "^5.1.0",
"astro": "^4.8.2",
"typescript": "^5.4.5"
}
}

9
public/favicon.svg Normal file
View File

@@ -0,0 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
<style>
path { fill: #000; }
@media (prefers-color-scheme: dark) {
path { fill: #FFF; }
}
</style>
</svg>

After

Width:  |  Height:  |  Size: 749 B

View File

@@ -0,0 +1,40 @@
---
import '../styles/global.css';
---
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="author" content="@iTKeyS" />
<meta
name=""
content=""
/>
<!-- Favicon guidelines generated with https://realfavicongenerator.net/ -->
<link
rel="apple-touch-icon"
sizes="180x180"
href="/images/favicons/apple-touch-icon.png"
/>
<link
rel="icon"
type="image/png"
sizes="32x32"
href="/images/favicons/favicon-32x32.png"
/>
<link
rel="icon"
type="image/png"
sizes="16x16"
href="/images/favicons/favicon-16x16.png"
/>
<link rel="manifest" href="/images/favicons/site.webmanifest" />
<link
rel="mask-icon"
href="/images/favicons/safari-pinned-tab.svg"
color="#3E433E"
/>
<meta name="msapplication-TileColor" content="#3E433E" />
<meta name="theme-color" content="#3E433E" />
<link href="https://fonts.cdnfonts.com/css/space-grotesk" rel="stylesheet">

View File

@@ -0,0 +1,41 @@
<footer >
<div class="items-center text-center 2xl:max-w-7xl lg:px-16 md:px-12 mx-auto px-8 w-xl xl:px-36">
<div class="flex flex-col gap-y-12 items-start justify-between lg:flex-row lg:items-center lg:py-16 pb-6 pt-16">
<div class="lg:text-center lg:mx-auto">
<div class="flex items-center text-negroni-500">
<div class="lg:text-center lg:mx-auto">
<div class="flex items-center text-white">
<div class="lg:text-center lg:mx-auto">
<p class="font-bold italic lg:mx-auto lg:text-4xl text-2xl">
Viki&Leo.Shop
</p>
<p class="text-sm mt-1">
Модные тренды для маленьких модников уже на Кавказе!<br />от
<a href="#" class="underline hover:text-negroni-500 duration-200">
Красильниковой Ульяны.
</a>
</p>
</div>
</div>
</div>
</div>
<nav class="flex gap-8 mt-11">
<a href="#" class="text-negroni-500 h-8 delay-150 hover:text-tomato-500 text-sm transition-colors">
Ссылка 1
</a>
<a href="#" class="text-negroni-500 h-8 delay-150 hover:text-tomato-500 text-sm transition-colors">
Ссылка 2
</a>
<a href="#" class="text-negroni-500 h-8 delay-150 hover:text-tomato-500 text-sm transition-colors">
Ссылка 3
</a>
</nav>
</div>
</div>
<div class="flex flex-col border-t border-negroni-500/10 lg:mx-auto lg:text-center md:pt-6 pb-12 pt-8">
<p class="text-tomato-500 md:mt-0 mt-6 text-sm">
Над проектор работал @iTKeyS
</p>
</div>
</div>
</footer>

View File

View File

@@ -0,0 +1,26 @@
<main class="relative overflow-hidden">
<div class="relative mx-auto px-8 max-w-7xl py-24 md:px-12">
<div class="mx-auto text-center ">
<h1
class="text-negroni-500 font-bold md:text-6xl text-3xl tracking-tight">
VIKI&LEO<span class="md:block">SHOP</span>
</h1>
<p class="mt-8 text-white">
Демонстрируйте товары из таких сервисов, как HM или Lemon Squeezy..
</p>
<div class="flex justify-center flex-col gap-3 mt-10 sm:flex-row">
<a
class="items-center h-12 justify-center font-semibold rounded-full border-negroni-500 duration-200 focus:outline-none inline-flex px-6 py-3 text-center w-full text-negroni-500 lg:w-auto border focus-visible:outline-negroni-500 text-negroni-500/80"
href="#">Авито</a
>
<a
class="items-center h-12 justify-center rounded-full font-semibold duration-200 focus:outline-none inline-flex px-6 py-3 text-center w-full border-2 hover:bg-transparent border-negroni-500 bg-negroni-500 focus-visible:outline-negroni-500 focus-visible:ring-negroni-500 hover:border-negroni-500 hover:text-negroni-500 lg:w-auto text-charcoal-500"
href="#">Telegram BOT &nbsp; →</a
>
</div>
</div>
</div>
</main>

View File

@@ -0,0 +1,98 @@
<main >
<div class="relative mx-auto px-8 max-w-7xl py-12 md:px-12">
<div
class="grid grid-cols-1 gap-6 lg:gap-y-32 md:grid-cols-2 ">
<figure>
<img
class="w-full rounded-3xl shadow-2xl"
src="https://cdn.dribbble.com/users/1622978/screenshots/16873134/media/7f5d72bce5b94fe1ae56484394de673f.jpg?compress=1&resize=1600x1200&vertical=top"
alt=""
width="1310"
height="873"
/>
<div class="mt-4 flex justify-between px-6">
<div>
<h3 class="text-sm text-negroni-500">
<a href="#">
<span aria-hidden="true" class="absolute inset-0"></span>
Paper bags with print
</a>
</h3>
<p class="mt-1 text-lg font-medium leading-6 text-white">Beige</p>
</div>
<p class="text-base text-tomato-500">$3</p>
</div>
</figure>
<figure>
<img
class="w-full rounded-3xl shadow-2xl"
src="https://cdn.dribbble.com/users/1622978/screenshots/16873134/media/8ea407efd5f947aa6a37488cfe305269.jpg?compress=1&resize=1600x1200&vertical=top"
alt=""
width="1310"
height="873"
/>
<div class="mt-4 flex justify-between px-6">
<div>
<h3 class="text-sm text-negroni-500">
<a href="#">
<span aria-hidden="true" class="absolute inset-0"></span>
Basic Tee bag
</a>
</h3>
<p class="mt-1 text-lg font-medium leading-6 text-white">
Olive green / Orange
</p>
</div>
<p class="text-base text-tomato-500">$35</p>
</div>
</figure>
<figure>
<img
class="w-full rounded-3xl shadow-2xl"
src="https://cdn.dribbble.com/users/1622978/screenshots/16397986/media/75e59a9fcf94b8a51764df66ce7a1d4f.jpg?compress=1&resize=1600x1200&vertical=top"
alt=""
width="1310"
height="873"
/>
<div class="mt-4 flex justify-between px-6">
<div>
<h3 class="text-sm text-negroni-500">
<a href="#">
<span aria-hidden="true" class="absolute inset-0"></span>
Coffe bag
</a>
</h3>
<p class="mt-1 text-lg font-medium leading-6 text-white">
Strong. Level: Developer
</p>
</div>
<p class="text-base text-tomato-500">$35</p>
</div>
</figure>
<figure>
<img
class="w-full rounded-3xl shadow-2xl"
src="https://cdn.dribbble.com/userupload/2739254/file/original-ac8226a7213611e49363fc0176a48cb0.jpg?compress=1&resize=1504x1128"
alt=""
width="1310"
height="873"
/>
<div class="mt-4 flex justify-between px-6">
<div>
<h3 class="text-sm text-negroni-500">
<a href="#">
<span aria-hidden="true" class="absolute inset-0"></span>
Coffe bag
</a>
</h3>
<p class="mt-1 text-lg font-medium leading-6 text-white">
Strong. Level: Designer
</p>
</div>
<p class="text-base text-tomato-500">$35</p>
</div>
</figure>
</div>
</div>
</main>

1
src/env.d.ts vendored Normal file
View File

@@ -0,0 +1 @@
/// <reference types="astro/client" />

View File

@@ -0,0 +1,15 @@
---
import BaseHead from "../components/BaseHead.astro";
import Footer from "../components/global/Footer.astro";
---
<html lang="en">
<head>
<BaseHead />
</head>
<body class="bg-charcoal-500">
<slot />
<Footer/>
</body>
</html>

11
src/pages/index.astro Normal file
View File

@@ -0,0 +1,11 @@
---
import BaseLayout from "../layouts/BaseLayout.astro";
import Hero from "../components/landing/Hero.astro";
import Products from "../components/landing/Products.astro";
---
<BaseLayout>
<Hero />
<Products />
</BaseLayout>

26
src/styles/global.css Normal file
View File

@@ -0,0 +1,26 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
/* CSS */
:root {
font-family: Inter, sans-serif;
font-feature-settings:
"liga" 1,
"calt" 1, /* Contextual Alternates */
"dlig" 1, /* Discretionary Ligatures */
"ss07" 1, /* fSquare punctuation */
"ss08" 1, /* Square quotes */
"zero" 1, /* Slashed zero */
"tnum" 1, /* Tabular numbers */
"cv03", /* Open six */
"cv04" 1, /* Open nine */
"cv01" 1, /* Alternate one */
"cv09", /* Flat-top three */
"cv02" 1; /* Open 4 */
}
@supports (font-variation-settings: normal) {
/* Use variable font if supported */
:root {
font-family: InterVariable, sans-serif;
}
}

136
tailwind.config.cjs Normal file
View File

@@ -0,0 +1,136 @@
/** @type {import('tailwindcss').Config} */
const defaultTheme = require("tailwindcss/defaultTheme");
const colors = require("tailwindcss/colors");
module.exports = {
content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
theme: {
fontSize: {
xs: [
"0.75rem",
{
lineHeight: "1rem",
},
],
sm: [
"0.875rem",
{
lineHeight: "1.5rem",
},
],
base: [
"1rem",
{
lineHeight: "1.75rem",
},
],
lg: [
"1.125rem",
{
lineHeight: "2rem",
},
],
xl: [
"1.25rem",
{
lineHeight: "2rem",
},
],
"2xl": [
"1.5rem",
{
lineHeight: "2rem",
},
],
"3xl": [
"2rem",
{
lineHeight: "2.5rem",
},
],
"4xl": [
"2.5rem",
{
lineHeight: "3.5rem",
},
],
"5xl": [
"3rem",
{
lineHeight: "3.5rem",
},
],
"6xl": [
"3.75rem",
{
lineHeight: "1",
},
],
"7xl": [
"4.5rem",
{
lineHeight: "1.1",
},
],
"8xl": [
"6rem",
{
lineHeight: "1",
},
],
"9xl": [
"8rem",
{
lineHeight: "1",
},
],
},
extend: {
backgroundImage: (theme) => ({
screens: "url('/path-to/image.png')",
}),
colors: {
charcoal: {
50: "#ECEEEC",
100: "#D7DAD7",
200: "#B0B5B0",
300: "#889188",
400: "#626A62",
500: "#3E433E",
600: "#313531",
700: "#252825",
800: "#191A19",
900: "#0C0D0C",
},
tomato: {
50: "#FFEEEB",
100: "#FFE1DC",
200: "#FEBFB3",
300: "#FEA090",
400: "#FD7E68",
500: "#FD6043",
600: "#FC2803",
700: "#C01E02",
800: "#7E1401",
900: "#420A01",
},
negroni: {
50: "#FDFAF7",
100: "#FBF5EF",
200: "#F6E8DA",
300: "#F2DECA",
400: "#EDD1B5",
500: "#E9C7A5",
600: "#D99E63",
700: "#C1782F",
800: "#7F4F1F",
900: "#422910",
},
},
fontFamily: {
sans: ["Inter", ...defaultTheme.fontFamily.sans],
},
},
},
plugins: [],
};

19
tsconfig.json Normal file
View File

@@ -0,0 +1,19 @@
{
"compilerOptions": {
// Enable top-level await, and other modern ESM features.
"target": "ESNext",
"module": "ESNext",
// Enable node-style module resolution, for things like npm package imports.
"moduleResolution": "node",
// Enable JSON imports.
"resolveJsonModule": true,
// Enable stricter transpilation for better output.
"isolatedModules": true,
// Astro will directly run your TypeScript code, no transpilation needed.
"noEmit": true,
"baseUrl": ".",
"paths": {
"@/*": ["src/*"]
}
}
}