init
This commit is contained in:
parent
da8f91466d
commit
7b79ada877
24 changed files with 6718 additions and 0 deletions
21
.gitignore
vendored
Normal file
21
.gitignore
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# 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
|
11
.prettier
Normal file
11
.prettier
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
export default {
|
||||||
|
plugins: ["prettier-plugin-astro"],
|
||||||
|
overrides: [
|
||||||
|
{
|
||||||
|
files: "*.astro",
|
||||||
|
options: {
|
||||||
|
parser: "astro",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
76
.src/styles/global.scss
Normal file
76
.src/styles/global.scss
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
@tailwind base;
|
||||||
|
@tailwind components;
|
||||||
|
@tailwind utilities;
|
||||||
|
|
||||||
|
@layer base {
|
||||||
|
:root {
|
||||||
|
--background: 0 0% 100%;
|
||||||
|
--foreground: 222.2 84% 4.9%;
|
||||||
|
|
||||||
|
--card: 0 0% 100%;
|
||||||
|
--card-foreground: 222.2 84% 4.9%;
|
||||||
|
|
||||||
|
--popover: 0 0% 100%;
|
||||||
|
--popover-foreground: 222.2 84% 4.9%;
|
||||||
|
|
||||||
|
--primary: 222.2 47.4% 11.2%;
|
||||||
|
--primary-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--secondary: 210 40% 96.1%;
|
||||||
|
--secondary-foreground: 222.2 47.4% 11.2%;
|
||||||
|
|
||||||
|
--muted: 210 40% 96.1%;
|
||||||
|
--muted-foreground: 215.4 16.3% 46.9%;
|
||||||
|
|
||||||
|
--accent: 210 40% 96.1%;
|
||||||
|
--accent-foreground: 222.2 47.4% 11.2%;
|
||||||
|
|
||||||
|
--destructive: 0 84.2% 60.2%;
|
||||||
|
--destructive-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--border: 214.3 31.8% 91.4%;
|
||||||
|
--input: 214.3 31.8% 91.4%;
|
||||||
|
--ring: 222.2 84% 4.9%;
|
||||||
|
|
||||||
|
--radius: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dark {
|
||||||
|
--background: 222.2 84% 4.9%;
|
||||||
|
--foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--card: 222.2 84% 4.9%;
|
||||||
|
--card-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--popover: 222.2 84% 4.9%;
|
||||||
|
--popover-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--primary: 210 40% 98%;
|
||||||
|
--primary-foreground: 222.2 47.4% 11.2%;
|
||||||
|
|
||||||
|
--secondary: 217.2 32.6% 17.5%;
|
||||||
|
--secondary-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--muted: 217.2 32.6% 17.5%;
|
||||||
|
--muted-foreground: 215 20.2% 65.1%;
|
||||||
|
|
||||||
|
--accent: 217.2 32.6% 17.5%;
|
||||||
|
--accent-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--destructive: 0 62.8% 30.6%;
|
||||||
|
--destructive-foreground: 210 40% 98%;
|
||||||
|
|
||||||
|
--border: 217.2 32.6% 17.5%;
|
||||||
|
--input: 217.2 32.6% 17.5%;
|
||||||
|
--ring: 212.7 26.8% 83.9%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@layer base {
|
||||||
|
* {
|
||||||
|
@apply border-border;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
@apply bg-background text-foreground;
|
||||||
|
}
|
||||||
|
}
|
4
.vscode/extensions.json
vendored
Normal file
4
.vscode/extensions.json
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"recommendations": ["astro-build.astro-vscode"],
|
||||||
|
"unwantedRecommendations": []
|
||||||
|
}
|
11
.vscode/launch.json
vendored
Normal file
11
.vscode/launch.json
vendored
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"version": "0.2.0",
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"command": "./node_modules/.bin/astro dev",
|
||||||
|
"name": "Development server",
|
||||||
|
"request": "launch",
|
||||||
|
"type": "node-terminal"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
6
.vscode/settings.json
vendored
Normal file
6
.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"prettier.documentSelectors": ["**/*.astro"],
|
||||||
|
"[astro]": {
|
||||||
|
"editor.defaultFormatter": "astro-build.astro-vscode"
|
||||||
|
}
|
||||||
|
}
|
29
README.md
Normal file
29
README.md
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
# IEEE UCSD Website
|
||||||
|
|
||||||
|
## Before we get started
|
||||||
|
|
||||||
|
**Font**
|
||||||
|
|
||||||
|
We use Open Sans as our font. You can read more about why we use it [here](https://brand-experience.ieee.org/whats-your-type/):
|
||||||
|
|
||||||
|
**JS Framework**
|
||||||
|
|
||||||
|
We use AstroJS in order to easily create blog posts and incorperate components from different frameworks, such as React and Vite.
|
||||||
|
|
||||||
|
## Getting started
|
||||||
|
|
||||||
|
To get start, clone our repo:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/ieeeucsd/ieeeucsd.org
|
||||||
|
```
|
||||||
|
|
||||||
|
and install the dependencies:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
yarn install
|
||||||
|
```
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
If you are not a part of IEEE but still want to contribute to the project, make sure you clone the repository and make a pull request. We will look over your code and if everything looks good, we will merge it with the main branch.
|
10
astro.config.mjs
Normal file
10
astro.config.mjs
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
import { defineConfig } from "astro/config";
|
||||||
|
import react from "@astrojs/react";
|
||||||
|
import tailwind from "@astrojs/tailwind";
|
||||||
|
|
||||||
|
import mdx from "@astrojs/mdx";
|
||||||
|
|
||||||
|
// https://astro.build/config
|
||||||
|
export default defineConfig({
|
||||||
|
integrations: [react(), tailwind(), mdx()],
|
||||||
|
});
|
16
components.json
Normal file
16
components.json
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
{
|
||||||
|
"$schema": "https://ui.shadcn.com/schema.json",
|
||||||
|
"style": "default",
|
||||||
|
"rsc": false,
|
||||||
|
"tsx": true,
|
||||||
|
"tailwind": {
|
||||||
|
"config": "tailwind.config.js",
|
||||||
|
"css": ".src/styles/global.scss",
|
||||||
|
"baseColor": "slate",
|
||||||
|
"cssVariables": true
|
||||||
|
},
|
||||||
|
"aliases": {
|
||||||
|
"components": "@/components",
|
||||||
|
"utils": "@/lib/utils"
|
||||||
|
}
|
||||||
|
}
|
33
package.json
Normal file
33
package.json
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"type": "module",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"scripts": {
|
||||||
|
"dev": "astro dev",
|
||||||
|
"start": "astro dev",
|
||||||
|
"build": "astro build",
|
||||||
|
"preview": "astro preview",
|
||||||
|
"astro": "astro"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@astrojs/mdx": "^1.1.2",
|
||||||
|
"@astrojs/react": "^3.0.3",
|
||||||
|
"@astrojs/tailwind": "^5.0.2",
|
||||||
|
"@fontsource-variable/open-sans": "^5.0.16",
|
||||||
|
"@nextui-org/react": "^2.1.13",
|
||||||
|
"@types/react": "^18.0.21",
|
||||||
|
"@types/react-dom": "^18.0.6",
|
||||||
|
"astro": "^3.3.0",
|
||||||
|
"framer-motion": "^10.16.4",
|
||||||
|
"react": "^18.0.0",
|
||||||
|
"react-dom": "^18.0.0",
|
||||||
|
"scss": "^0.2.4",
|
||||||
|
"tailwindcss": "^3.0.24"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"daisyui": "^3.9.2",
|
||||||
|
"prettier": "^3.0.3",
|
||||||
|
"prettier-plugin-astro": "^0.12.0",
|
||||||
|
"sass": "^1.69.3"
|
||||||
|
}
|
||||||
|
}
|
121
public/favicon.svg
Normal file
121
public/favicon.svg
Normal file
|
@ -0,0 +1,121 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0.00 0.00 512.00 512.00">
|
||||||
|
<path fill="#00679a" d="
|
||||||
|
M 512.00 253.08
|
||||||
|
L 512.00 256.51
|
||||||
|
C 510.94 266.81 501.78 270.59 494.56 275.75
|
||||||
|
Q 454.77 304.15 416.67 337.92
|
||||||
|
C 362.73 385.72 313.85 438.00 272.42 496.46
|
||||||
|
Q 269.81 500.15 268.32 501.89
|
||||||
|
C 262.35 508.86 253.44 510.95 245.73 506.16
|
||||||
|
C 241.99 503.83 238.41 499.38 235.70 495.56
|
||||||
|
Q 179.03 415.79 108.14 348.36
|
||||||
|
C 80.98 322.54 52.28 299.39 21.18 280.58
|
||||||
|
C 12.27 275.19 2.91 269.03 0.00 258.50
|
||||||
|
L 0.00 251.99
|
||||||
|
C 1.30 243.56 9.09 237.74 15.98 234.04
|
||||||
|
C 42.05 220.05 65.17 200.29 86.25 180.49
|
||||||
|
Q 157.52 113.51 220.46 38.68
|
||||||
|
C 226.38 31.64 231.52 24.15 236.05 16.77
|
||||||
|
C 239.39 11.31 244.78 4.62 251.41 3.58
|
||||||
|
C 260.00 2.22 265.06 5.27 271.19 12.31
|
||||||
|
C 276.03 17.86 280.56 25.49 284.89 31.01
|
||||||
|
C 326.56 84.17 374.75 138.21 426.55 185.22
|
||||||
|
C 450.40 206.86 475.68 226.45 503.98 241.99
|
||||||
|
Q 510.97 245.83 512.00 253.08
|
||||||
|
Z
|
||||||
|
M 248.20 442.83
|
||||||
|
C 259.21 448.11 268.20 442.33 277.02 436.32
|
||||||
|
Q 290.36 427.24 304.21 415.71
|
||||||
|
C 332.20 392.41 358.50 367.58 383.91 341.52
|
||||||
|
Q 404.94 319.96 423.54 296.25
|
||||||
|
Q 430.63 287.21 438.56 272.56
|
||||||
|
C 443.73 262.99 443.91 255.25 440.11 245.42
|
||||||
|
Q 437.94 239.83 436.28 236.96
|
||||||
|
Q 424.03 215.82 407.29 196.21
|
||||||
|
C 373.95 157.18 337.31 120.95 296.60 90.43
|
||||||
|
C 285.27 81.94 260.46 63.33 245.70 70.18
|
||||||
|
Q 232.06 76.51 216.08 89.32
|
||||||
|
Q 149.29 142.83 94.36 208.37
|
||||||
|
C 84.09 220.63 72.18 235.66 66.52 250.58
|
||||||
|
C 63.53 258.43 65.73 265.45 69.95 273.13
|
||||||
|
Q 77.83 287.49 88.71 300.52
|
||||||
|
C 111.03 327.24 134.79 351.27 159.80 374.84
|
||||||
|
Q 190.50 403.77 224.54 428.73
|
||||||
|
Q 235.34 436.65 248.20 442.83
|
||||||
|
Z"
|
||||||
|
/>
|
||||||
|
<path fill="#00679a" d="
|
||||||
|
M 430.32 265.06
|
||||||
|
Q 424.76 276.99 416.63 287.40
|
||||||
|
Q 396.84 312.75 374.35 335.71
|
||||||
|
C 343.73 366.96 311.41 397.88 276.18 423.92
|
||||||
|
Q 268.47 429.62 259.91 433.91
|
||||||
|
C 256.24 435.75 248.78 431.36 245.59 429.40
|
||||||
|
C 235.76 423.37 226.54 417.09 217.19 409.68
|
||||||
|
Q 158.49 363.12 108.64 307.11
|
||||||
|
Q 95.42 292.26 84.12 275.90
|
||||||
|
Q 79.98 269.91 77.08 263.25
|
||||||
|
C 75.45 259.52 75.58 256.66 77.27 252.76
|
||||||
|
C 83.13 239.28 94.32 225.21 104.33 213.40
|
||||||
|
Q 153.66 155.21 212.25 106.24
|
||||||
|
Q 226.26 94.53 241.61 84.65
|
||||||
|
C 246.95 81.21 252.01 78.19 257.73 80.00
|
||||||
|
C 269.78 83.83 281.58 92.46 291.61 100.15
|
||||||
|
C 333.00 131.90 371.47 169.66 404.47 210.04
|
||||||
|
C 414.20 221.94 424.55 235.52 430.38 249.82
|
||||||
|
Q 433.67 257.88 430.32 265.06
|
||||||
|
Z
|
||||||
|
M 264.50 201.90
|
||||||
|
A 0.33 0.33 0.0 0 1 264.82 201.56
|
||||||
|
L 286.81 201.11
|
||||||
|
A 0.33 0.33 0.0 0 0 287.11 200.65
|
||||||
|
L 253.17 120.76
|
||||||
|
A 0.33 0.33 0.0 0 0 252.55 120.79
|
||||||
|
L 226.07 200.75
|
||||||
|
A 0.33 0.33 0.0 0 0 226.38 201.18
|
||||||
|
L 243.55 201.56
|
||||||
|
A 0.33 0.33 0.0 0 1 243.87 201.90
|
||||||
|
L 241.41 278.19
|
||||||
|
A 0.33 0.33 0.0 0 0 241.74 278.53
|
||||||
|
L 266.41 278.52
|
||||||
|
A 0.33 0.33 0.0 0 0 266.74 278.18
|
||||||
|
L 264.50 201.90
|
||||||
|
Z
|
||||||
|
M 335.66 234.61
|
||||||
|
L 342.25 232.56
|
||||||
|
A 0.33 0.33 0.0 0 0 342.24 231.92
|
||||||
|
L 293.75 218.36
|
||||||
|
A 0.51 0.51 0.0 0 0 293.13 219.01
|
||||||
|
L 298.95 237.00
|
||||||
|
Q 299.15 237.62 299.81 237.62
|
||||||
|
Q 307.00 237.53 314.17 237.02
|
||||||
|
Q 316.35 236.86 318.14 237.74
|
||||||
|
C 325.16 241.15 337.76 249.72 336.39 258.66
|
||||||
|
C 334.58 270.50 315.64 276.25 305.74 278.68
|
||||||
|
C 278.19 285.44 248.07 287.92 221.00 282.26
|
||||||
|
C 211.26 280.23 198.59 275.61 190.12 269.27
|
||||||
|
C 166.10 251.30 208.87 236.30 219.81 232.25
|
||||||
|
Q 220.46 232.01 219.86 231.66
|
||||||
|
L 193.08 215.93
|
||||||
|
Q 192.68 215.69 192.24 215.84
|
||||||
|
C 178.12 220.45 137.57 235.18 141.49 255.53
|
||||||
|
C 144.61 271.72 175.28 282.91 188.62 287.22
|
||||||
|
Q 196.97 289.92 208.06 291.80
|
||||||
|
Q 240.31 297.29 275.74 295.98
|
||||||
|
Q 304.18 294.92 328.06 283.12
|
||||||
|
C 337.31 278.55 352.56 270.32 353.99 259.40
|
||||||
|
C 355.64 246.85 343.72 241.63 335.50 235.59
|
||||||
|
Q 334.61 234.93 335.66 234.61
|
||||||
|
Z
|
||||||
|
M 241.62 302.46
|
||||||
|
A 0.34 0.34 0.0 0 0 241.29 302.77
|
||||||
|
L 235.64 381.08
|
||||||
|
A 0.34 0.34 0.0 0 0 235.98 381.44
|
||||||
|
L 270.64 381.44
|
||||||
|
A 0.34 0.34 0.0 0 0 270.98 381.09
|
||||||
|
L 268.08 302.56
|
||||||
|
A 0.34 0.34 0.0 0 0 267.74 302.23
|
||||||
|
L 241.62 302.46
|
||||||
|
Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 3.8 KiB |
7
public/icons/logo_with_full_text.svg
Normal file
7
public/icons/logo_with_full_text.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 16 KiB |
5
public/icons/logo_with_text.svg
Normal file
5
public/icons/logo_with_text.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 12 KiB |
61
src/components/Card.astro
Normal file
61
src/components/Card.astro
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
---
|
||||||
|
interface Props {
|
||||||
|
title: string;
|
||||||
|
body: string;
|
||||||
|
href: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { href, title, body } = Astro.props;
|
||||||
|
---
|
||||||
|
|
||||||
|
<li class="link-card">
|
||||||
|
<a href={href}>
|
||||||
|
<h2>
|
||||||
|
{title}
|
||||||
|
<span>→</span>
|
||||||
|
</h2>
|
||||||
|
<p>
|
||||||
|
{body}
|
||||||
|
</p>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<style>
|
||||||
|
.link-card {
|
||||||
|
list-style: none;
|
||||||
|
display: flex;
|
||||||
|
padding: 1px;
|
||||||
|
background-color: #23262d;
|
||||||
|
background-image: none;
|
||||||
|
background-size: 400%;
|
||||||
|
border-radius: 7px;
|
||||||
|
background-position: 100%;
|
||||||
|
transition: background-position 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||||
|
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
|
||||||
|
}
|
||||||
|
.link-card > a {
|
||||||
|
width: 100%;
|
||||||
|
text-decoration: none;
|
||||||
|
line-height: 1.4;
|
||||||
|
padding: calc(1.5rem - 1px);
|
||||||
|
border-radius: 8px;
|
||||||
|
color: white;
|
||||||
|
background-color: #23262d;
|
||||||
|
opacity: 0.8;
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 1.25rem;
|
||||||
|
transition: color 0.6s cubic-bezier(0.22, 1, 0.36, 1);
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
margin-top: 0.5rem;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.link-card:is(:hover, :focus-within) {
|
||||||
|
background-position: 0;
|
||||||
|
background-image: var(--accent-gradient);
|
||||||
|
}
|
||||||
|
.link-card:is(:hover, :focus-within) h2 {
|
||||||
|
color: rgb(var(--accent-light));
|
||||||
|
}
|
||||||
|
</style>
|
41
src/components/global/Navbar.astro
Normal file
41
src/components/global/Navbar.astro
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
import logo_with_text from '';
|
||||||
|
---
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.grid-cols-custom {
|
||||||
|
grid-template-columns: 1fr auto 1fr; /* This makes the side columns take up equal space, regardless of content, while the center column takes the width of the content */
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<nav class="mt-2">
|
||||||
|
<div class="hidden xl:grid grid-flow-col auto-cols-max justify-center items-center gap-4 h-32 grid-cols-custom">
|
||||||
|
<div class="flex justify-center space-x-12 sm:space-x-14 md:space-x-16 lg:space-x-18">
|
||||||
|
<!-- Left content here -->
|
||||||
|
<a href="/" class="text-2xl hover:scale-110 transition text-ieee-blue font-bold">Home</a>
|
||||||
|
<a href="/" class="text-2xl text-ieee-blue font-bold">About Us</a>
|
||||||
|
<a href="/" class="text-2xl text-ieee-blue font-bold">Project Space</a>
|
||||||
|
<!-- You can add more items here, and they will be centered -->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Centered image -->
|
||||||
|
<div class="flex justify-center">
|
||||||
|
<img src="/icons/logo_with_text.svg" alt="description of image" class="h-24" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="flex justify-center space-x-4 sm:space-x-6 md:space-x-8 lg:space-x-12">
|
||||||
|
<!-- Right content here -->
|
||||||
|
<a href="/" class="text-2xl text-ieee-blue font-bold">Events</a>
|
||||||
|
<a href="/" class="text-2xl text-ieee-blue font-bold">Projects</a>
|
||||||
|
<a href="/" class="text-2xl text-ieee-blue font-bold">Contact Us</a>
|
||||||
|
<!-- You can add more items here, and they will be centered -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grid xl:hidden items-center h-32" >
|
||||||
|
<div class="flex justify-left">
|
||||||
|
<img src="/icons/logo_with_full_text.svg" alt="description of image" class="h-24 scale-50" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
|
2
src/env.d.ts
vendored
Normal file
2
src/env.d.ts
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/// <reference path="../.astro/types.d.ts" />
|
||||||
|
/// <reference types="astro/client" />
|
26
src/layouts/Layout.astro
Normal file
26
src/layouts/Layout.astro
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
---
|
||||||
|
interface Props {
|
||||||
|
title: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const { title } = Astro.props;
|
||||||
|
|
||||||
|
import "../styles/global.scss";
|
||||||
|
import Navbar from "../components/global/Navbar.astro";
|
||||||
|
---
|
||||||
|
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="description" content="Astro description" />
|
||||||
|
<meta name="viewport" content="width=device-width" />
|
||||||
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
||||||
|
<meta name="generator" content={Astro.generator} />
|
||||||
|
<title>{title}</title>
|
||||||
|
</head>
|
||||||
|
<Navbar />
|
||||||
|
<body>
|
||||||
|
<slot />
|
||||||
|
</body>
|
||||||
|
</html>
|
6
src/lib/utils.ts
Normal file
6
src/lib/utils.ts
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
import { type ClassValue, clsx } from "clsx"
|
||||||
|
import { twMerge } from "tailwind-merge"
|
||||||
|
|
||||||
|
export function cn(...inputs: ClassValue[]) {
|
||||||
|
return twMerge(clsx(inputs))
|
||||||
|
}
|
6
src/pages/index.astro
Normal file
6
src/pages/index.astro
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
import Layout from "../layouts/Layout.astro";
|
||||||
|
import Card from "../components/Card.astro";
|
||||||
|
---
|
||||||
|
|
||||||
|
<Layout title="Home" />
|
27
src/styles/global.scss
Normal file
27
src/styles/global.scss
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
:root {
|
||||||
|
--accent: 136, 58, 234;
|
||||||
|
--accent-light: 224, 204, 250;
|
||||||
|
--accent-dark: 49, 10, 101;
|
||||||
|
--accent-gradient: linear-gradient(
|
||||||
|
45deg,
|
||||||
|
rgb(var(--accent)),
|
||||||
|
rgb(var(--accent-light)) 30%,
|
||||||
|
white 60%
|
||||||
|
);
|
||||||
|
}
|
||||||
|
html {
|
||||||
|
font-family: "Open Sans Variable", sans-serif;
|
||||||
|
background: #ffffff;
|
||||||
|
background-size: 224px;
|
||||||
|
}
|
||||||
|
code {
|
||||||
|
font-family:
|
||||||
|
Menlo,
|
||||||
|
Monaco,
|
||||||
|
Lucida Console,
|
||||||
|
Liberation Mono,
|
||||||
|
DejaVu Sans Mono,
|
||||||
|
Bitstream Vera Sans Mono,
|
||||||
|
Courier New,
|
||||||
|
monospace;
|
||||||
|
}
|
76
tailwind.config.js
Normal file
76
tailwind.config.js
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
/** @type {import('tailwindcss').Config} */
|
||||||
|
module.exports = {
|
||||||
|
darkMode: ["class"],
|
||||||
|
content: [
|
||||||
|
'./pages/**/*.{ts,tsx}',
|
||||||
|
'./components/**/*.{ts,tsx}',
|
||||||
|
'./app/**/*.{ts,tsx}',
|
||||||
|
'./src/**/*.{ts,tsx}',
|
||||||
|
],
|
||||||
|
theme: {
|
||||||
|
container: {
|
||||||
|
center: true,
|
||||||
|
padding: "2rem",
|
||||||
|
screens: {
|
||||||
|
"2xl": "1400px",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
extend: {
|
||||||
|
colors: {
|
||||||
|
border: "hsl(var(--border))",
|
||||||
|
input: "hsl(var(--input))",
|
||||||
|
ring: "hsl(var(--ring))",
|
||||||
|
background: "hsl(var(--background))",
|
||||||
|
foreground: "hsl(var(--foreground))",
|
||||||
|
primary: {
|
||||||
|
DEFAULT: "hsl(var(--primary))",
|
||||||
|
foreground: "hsl(var(--primary-foreground))",
|
||||||
|
},
|
||||||
|
secondary: {
|
||||||
|
DEFAULT: "hsl(var(--secondary))",
|
||||||
|
foreground: "hsl(var(--secondary-foreground))",
|
||||||
|
},
|
||||||
|
destructive: {
|
||||||
|
DEFAULT: "hsl(var(--destructive))",
|
||||||
|
foreground: "hsl(var(--destructive-foreground))",
|
||||||
|
},
|
||||||
|
muted: {
|
||||||
|
DEFAULT: "hsl(var(--muted))",
|
||||||
|
foreground: "hsl(var(--muted-foreground))",
|
||||||
|
},
|
||||||
|
accent: {
|
||||||
|
DEFAULT: "hsl(var(--accent))",
|
||||||
|
foreground: "hsl(var(--accent-foreground))",
|
||||||
|
},
|
||||||
|
popover: {
|
||||||
|
DEFAULT: "hsl(var(--popover))",
|
||||||
|
foreground: "hsl(var(--popover-foreground))",
|
||||||
|
},
|
||||||
|
card: {
|
||||||
|
DEFAULT: "hsl(var(--card))",
|
||||||
|
foreground: "hsl(var(--card-foreground))",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
borderRadius: {
|
||||||
|
lg: "var(--radius)",
|
||||||
|
md: "calc(var(--radius) - 2px)",
|
||||||
|
sm: "calc(var(--radius) - 4px)",
|
||||||
|
},
|
||||||
|
keyframes: {
|
||||||
|
"accordion-down": {
|
||||||
|
from: { height: 0 },
|
||||||
|
to: { height: "var(--radix-accordion-content-height)" },
|
||||||
|
},
|
||||||
|
"accordion-up": {
|
||||||
|
from: { height: "var(--radix-accordion-content-height)" },
|
||||||
|
to: { height: 0 },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
animation: {
|
||||||
|
"accordion-down": "accordion-down 0.2s ease-out",
|
||||||
|
"accordion-up": "accordion-up 0.2s ease-out",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
plugins: [require("tailwindcss-animate")],
|
||||||
|
}
|
31
tailwind.config.mjs
Normal file
31
tailwind.config.mjs
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
/** @type {import('tailwindcss').Config} */
|
||||||
|
|
||||||
|
export default {
|
||||||
|
content: [
|
||||||
|
"./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}",
|
||||||
|
"./node_modules/@nextui-org/theme/dist/**/*.{js,ts,jsx,tsx}",
|
||||||
|
],
|
||||||
|
theme: {
|
||||||
|
extend: {
|
||||||
|
colors: {
|
||||||
|
ieee: {
|
||||||
|
blue: "#00629B",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
darkMode: "class",
|
||||||
|
|
||||||
|
plugins: [require("daisyui"), nextui()],
|
||||||
|
|
||||||
|
daisyui: {
|
||||||
|
themes: false, // true: all themes | false: only light + dark | array: specific themes like this ["light", "dark", "cupcake"]
|
||||||
|
darkTheme: "light", // name of one of the included themes for dark mode
|
||||||
|
base: true, // applies background color and foreground color for root element by default
|
||||||
|
styled: true, // include daisyUI colors and design decisions for all components
|
||||||
|
utils: true, // adds responsive and modifier utility classes
|
||||||
|
rtl: false, // rotate style direction from left-to-right to right-to-left. You also need to add dir="rtl" to your html tag and install `tailwindcss-flip` plugin for Tailwind CSS.
|
||||||
|
prefix: "", // prefix for daisyUI classnames (components, modifiers and responsive class names. Not colors)
|
||||||
|
logs: true, // Shows info about daisyUI version and used config in the console when building your CSS
|
||||||
|
},
|
||||||
|
};
|
11
tsconfig.json
Normal file
11
tsconfig.json
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"extends": "astro/tsconfigs/strict",
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["src/*"]
|
||||||
|
},
|
||||||
|
"jsx": "react-jsx",
|
||||||
|
"jsxImportSource": "react"
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue