diff --git a/index.html b/index.html index 5a56154..bf00df3 100644 --- a/index.html +++ b/index.html @@ -48,6 +48,6 @@
- + diff --git a/package-lock.json b/package-lock.json index 9deb73c..4e879ae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,9 +12,12 @@ }, "devDependencies": { "@preact/preset-vite": "^2.8.2", + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", "autoprefixer": "^10.4.19", "postcss": "^8.4.38", "tailwindcss": "^3.4.4", + "typescript": "^5.6.3", "vite": "^5.3.1" } }, @@ -1173,6 +1176,34 @@ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, + "node_modules/@types/prop-types": { + "version": "15.7.13", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", + "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.12", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", + "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, "node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -1508,6 +1539,13 @@ "node": ">=4" } }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true, + "license": "MIT" + }, "node_modules/debug": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", @@ -2846,6 +2884,20 @@ "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", "dev": true }, + "node_modules/typescript": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, "node_modules/update-browserslist-db": { "version": "1.0.16", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", diff --git a/package.json b/package.json index 70f6f33..59478cb 100644 --- a/package.json +++ b/package.json @@ -13,9 +13,12 @@ }, "devDependencies": { "@preact/preset-vite": "^2.8.2", + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", "autoprefixer": "^10.4.19", "postcss": "^8.4.38", "tailwindcss": "^3.4.4", + "typescript": "^5.6.3", "vite": "^5.3.1" } } diff --git a/public/icons/Github.svg b/public/icons/Github.svg deleted file mode 100644 index c3d616a..0000000 --- a/public/icons/Github.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/public/icons/Rectangle.svg b/public/icons/Rectangle.svg deleted file mode 100644 index b888f3d..0000000 --- a/public/icons/Rectangle.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/public/icons/Telegram.svg b/public/icons/Telegram.svg deleted file mode 100644 index a1bc8fa..0000000 --- a/public/icons/Telegram.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/public/icons/X.svg b/public/icons/X.svg deleted file mode 100644 index 995be0e..0000000 --- a/public/icons/X.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/public/icons/XAPI.svg b/public/icons/XAPI.svg deleted file mode 100644 index bc4b29c..0000000 --- a/public/icons/XAPI.svg +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/public/icons/arrow.svg b/public/icons/arrow.svg deleted file mode 100644 index 7456589..0000000 --- a/public/icons/arrow.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/public/icons/discord-icon.svg b/public/icons/discord-icon.svg new file mode 100644 index 0000000..47430b7 --- /dev/null +++ b/public/icons/discord-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/icons/github-icon.svg b/public/icons/github-icon.svg new file mode 100644 index 0000000..25a934a --- /dev/null +++ b/public/icons/github-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/icons/hamburger.svg b/public/icons/hamburger.svg deleted file mode 100644 index 628b8eb..0000000 --- a/public/icons/hamburger.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/public/icons/telegram-icon.svg b/public/icons/telegram-icon.svg new file mode 100644 index 0000000..e7e6ed0 --- /dev/null +++ b/public/icons/telegram-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/icons/x-icon.svg b/public/icons/x-icon.svg new file mode 100644 index 0000000..6287f50 --- /dev/null +++ b/public/icons/x-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/images/1000bg1.png b/public/images/1000bg1.png deleted file mode 100644 index ce09c7b..0000000 Binary files a/public/images/1000bg1.png and /dev/null differ diff --git a/public/images/1000bg2.png b/public/images/1000bg2.png deleted file mode 100644 index e153139..0000000 Binary files a/public/images/1000bg2.png and /dev/null differ diff --git a/public/images/1440bg1.png b/public/images/1440bg1.png deleted file mode 100644 index 795a084..0000000 Binary files a/public/images/1440bg1.png and /dev/null differ diff --git a/public/images/1440bg2.png b/public/images/1440bg2.png deleted file mode 100644 index 656f1b0..0000000 Binary files a/public/images/1440bg2.png and /dev/null differ diff --git a/public/images/1920bg1.png b/public/images/1920bg1.png deleted file mode 100644 index 7a3330c..0000000 Binary files a/public/images/1920bg1.png and /dev/null differ diff --git a/public/images/1920bg2.png b/public/images/1920bg2.png deleted file mode 100644 index 7a926c1..0000000 Binary files a/public/images/1920bg2.png and /dev/null differ diff --git a/public/images/1920bg3.png b/public/images/1920bg3.png deleted file mode 100644 index 1020e22..0000000 Binary files a/public/images/1920bg3.png and /dev/null differ diff --git a/public/images/2560bg1.png b/public/images/2560bg1.png deleted file mode 100644 index 795a084..0000000 Binary files a/public/images/2560bg1.png and /dev/null differ diff --git a/public/images/2560bg2.png b/public/images/2560bg2.png deleted file mode 100644 index 46d0833..0000000 Binary files a/public/images/2560bg2.png and /dev/null differ diff --git a/public/images/XAPI.png b/public/images/XAPI.png deleted file mode 100644 index f9b4d33..0000000 Binary files a/public/images/XAPI.png and /dev/null differ diff --git a/public/images/darwinia.png b/public/images/darwinia.png deleted file mode 100644 index dacda2f..0000000 Binary files a/public/images/darwinia.png and /dev/null differ diff --git a/public/images/darwinia.svg b/public/images/darwinia.svg new file mode 100644 index 0000000..8756d31 --- /dev/null +++ b/public/images/darwinia.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/public/images/logo.png b/public/images/logo.png deleted file mode 100644 index 5e4d07f..0000000 Binary files a/public/images/logo.png and /dev/null differ diff --git a/public/images/logo.svg b/public/images/logo.svg index 791f0cd..82f794a 100644 --- a/public/images/logo.svg +++ b/public/images/logo.svg @@ -1,16 +1,16 @@ - - - - - - - - - + + + + + + + + + - + diff --git a/public/images/msgport.png b/public/images/msgport.png deleted file mode 100644 index f43d875..0000000 Binary files a/public/images/msgport.png and /dev/null differ diff --git a/public/images/msgport.svg b/public/images/msgport.svg new file mode 100644 index 0000000..315b75b --- /dev/null +++ b/public/images/msgport.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/public/images/paralink.svg b/public/images/paralink.svg new file mode 100644 index 0000000..7d995a3 --- /dev/null +++ b/public/images/paralink.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/public/images/poster.png b/public/images/poster.png deleted file mode 100644 index 91cd208..0000000 Binary files a/public/images/poster.png and /dev/null differ diff --git a/public/images/xapi.svg b/public/images/xapi.svg new file mode 100644 index 0000000..cdf5235 --- /dev/null +++ b/public/images/xapi.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/public/videos/hero.mp4 b/public/videos/hero.mp4 new file mode 100644 index 0000000..af0cd0c Binary files /dev/null and b/public/videos/hero.mp4 differ diff --git a/public/videos/program1.mp4 b/public/videos/program1.mp4 new file mode 100644 index 0000000..c28bcc7 Binary files /dev/null and b/public/videos/program1.mp4 differ diff --git a/public/videos/program2.mp4 b/public/videos/program2.mp4 new file mode 100644 index 0000000..78dcfa9 Binary files /dev/null and b/public/videos/program2.mp4 differ diff --git a/public/videos/program3.mp4 b/public/videos/program3.mp4 new file mode 100644 index 0000000..6f2121d Binary files /dev/null and b/public/videos/program3.mp4 differ diff --git a/src/app.jsx b/src/app.jsx deleted file mode 100644 index d79a5b8..0000000 --- a/src/app.jsx +++ /dev/null @@ -1,82 +0,0 @@ -import Header from "./components/Header"; -import Hero from "./components/Hero"; -import EmpoweringChains from "./components/EmpoweringChains"; -import websitesData from "./data/websites.json"; -import WebSites from "./components/WebSites"; -import Footer from "./components/Footer"; -import useWidth from "./hooks/useWidth"; - -export function App() { - const width = useWidth(); - return ( -
- {width >= 1000 && width < 1440 && ( - <> - - - - )} - {width >= 1440 && width < 1920 && ( - <> - - - - )} - {width >= 1920 && width < 2560 && ( - <> - - - - )} - {width >= 2560 && ( - <> - - - - )} - - -
-
- - - {websitesData.sites.map((item) => { - return ( - - ); - })} -
-
- ); -} diff --git a/src/app.tsx b/src/app.tsx new file mode 100644 index 0000000..e7b242c --- /dev/null +++ b/src/app.tsx @@ -0,0 +1,23 @@ +import About from "./components/about"; +import Footer from "./components/footer"; +import Header from "./components/header"; +import Hero from "./components/hero"; +import Program from "./components/program"; +import Project from "./components/project"; +import useWidth from "./hooks/useWidth"; + +export function App() { + const width = useWidth(); + return ( +
+
+
+ + + + +
+
+ ); +} diff --git a/src/components/EmpoweringChains.jsx b/src/components/EmpoweringChains.jsx deleted file mode 100644 index 6ca650f..0000000 --- a/src/components/EmpoweringChains.jsx +++ /dev/null @@ -1,25 +0,0 @@ -import React from "react"; -import useWidth from "../hooks/useWidth"; - -const EmpoweringChains = () => { - return ( -
-
-

- EMPOWERING CHAINS TO COMMUNICATE - - POWERING ABSTRACTION TO INNOVATE - -

-
-
-
-

- Governed by all the RING token holders, this decentralized entity - directs the Darwinia chain, Msgport protocol, and XAPI's oracle service -

-
- ); -}; - -export default EmpoweringChains; diff --git a/src/components/Footer.jsx b/src/components/Footer.jsx deleted file mode 100644 index 22f78fa..0000000 --- a/src/components/Footer.jsx +++ /dev/null @@ -1,41 +0,0 @@ -import React from "react"; - -const Footer = () => { - return ( - - ); -}; - -export default Footer; diff --git a/src/components/Header.jsx b/src/components/Header.jsx deleted file mode 100644 index f5390ef..0000000 --- a/src/components/Header.jsx +++ /dev/null @@ -1,185 +0,0 @@ -import { useEffect, useState } from "preact/hooks"; -import React from "react"; -import menuData from "../data/menu.json"; - -const Header = () => { - const [menu, setMenu] = useState(false); - const [openMenu, setOpenMenu] = useState(null); - - const handleMenuClick = (index) => { - if (openMenu === index) { - setOpenMenu(null); // Close the menu if it's already open - } else { - setOpenMenu(index); - } - }; - - useEffect(() => { - document.addEventListener("click", handleMenuClick); - }, []); - - return ( -
- Ring Logo - - - - -
- ); -}; - -export default Header; diff --git a/src/components/Hero.jsx b/src/components/Hero.jsx deleted file mode 100644 index 620313b..0000000 --- a/src/components/Hero.jsx +++ /dev/null @@ -1,29 +0,0 @@ -import React from "react"; - -const Hero = ({ className }) => { - return ( -
-
- -
- ); -}; - -export default Hero; diff --git a/src/components/WebSites.jsx b/src/components/WebSites.jsx deleted file mode 100644 index 48e200e..0000000 --- a/src/components/WebSites.jsx +++ /dev/null @@ -1,39 +0,0 @@ -import React from "react"; - -const WebSites = ({ logo, desc, isxapi, alt, link }) => { - return ( -
-
- {alt} - {isxapi &&
} -

- {desc} -

- - - View Detail - - arrow - -
- ); -}; - -export default WebSites; diff --git a/src/components/about.tsx b/src/components/about.tsx new file mode 100644 index 0000000..dbc3294 --- /dev/null +++ b/src/components/about.tsx @@ -0,0 +1,20 @@ +export default function About() { + return ( +
+
+

+ About RING +

+

+ RING is the governance token of RingDAO. It's widely used in RingDAO + projects, such as staking for XAPI, gas for the Darwinia Network, and + payments for Msgport. We use RING to capture value in our decentralized + system, build decentralized governance, and unite all RING holders to + collectively advance the entire ecosystem. +

+
+ ); +} diff --git a/src/components/footer.tsx b/src/components/footer.tsx new file mode 100644 index 0000000..4f4a1c9 --- /dev/null +++ b/src/components/footer.tsx @@ -0,0 +1,56 @@ +export default function Footer() { + return ( +
+
+

+ Looking forward to +
collaborating with you +

+
+
+ + ringdao x + + + ringdao telegram + + + ringdao github + + + ringdao discord + +
+

2024 powered by RingDAO

+
+
+ ); +} diff --git a/src/components/header.tsx b/src/components/header.tsx new file mode 100644 index 0000000..75743f2 --- /dev/null +++ b/src/components/header.tsx @@ -0,0 +1,81 @@ +import { useState } from "react"; +import data from "../data/header.json"; + +export default function Header() { + const [showMenu, setShowMenu] = useState(false); + return ( +
+ Ring DAO +
+ {data.menu.map((item: any, index: number) => ( + +

{item.name}

+
+ ))} + +
+
{ + setShowMenu(!showMenu); + }} + className="flex sm:hidden flex-col gap-[3px]" + > +
+
+
+
+
+
+ {data.menu.map((item: any, index: number) => ( + +

+ {item.name} +

+
+ ))} + +
+ +
+
+ ); +} diff --git a/src/components/hero.tsx b/src/components/hero.tsx new file mode 100644 index 0000000..cc7dc51 --- /dev/null +++ b/src/components/hero.tsx @@ -0,0 +1,28 @@ +export default function Hero() { + return ( +
+
+
+ ); +} diff --git a/src/components/program.tsx b/src/components/program.tsx new file mode 100644 index 0000000..2a79fc2 --- /dev/null +++ b/src/components/program.tsx @@ -0,0 +1,101 @@ +export default function Program() { + return ( + <> +
+
+

Programs

+
+
+
+

+ Decentralized Governance +

+

+ We believe that transparency and decentralization are key to the + success of RingDAO. Therefore, all decisions and actions will be + made by the community. We have integrated with Tally to manage all + proposals and the voting process. Anyone can submit a proposal and + vote on it. +

+
+ Proposal or Vote + + {">"} + + +
+
+
+
+

Bug Bounty

+

+ Cross-chain space is complex and vulnerable to hacking. We take + security very seriously. In addition to regular security audits, we + have integrated with Immunefi and rely on external security + researchers to find vulnerabilities in our system and keep it and + our assets safe. +

+ + View Immunefi + + {">"} + + +
+
+
+
+ + ); +} diff --git a/src/components/project.tsx b/src/components/project.tsx new file mode 100644 index 0000000..1dd9fcd --- /dev/null +++ b/src/components/project.tsx @@ -0,0 +1,135 @@ +export default function Project() { + return ( + <> +
+
+

Project

+
+
+
+
+ darwinia +
+

+ Darwinia Chain +

+

+ One of the earliest parachains in the Polkadot ecosystem, offering + out-of-the-box cross-chain capabilities to exchange messages with + other parachains and external Ethereum-compatible chains. +

+ +
+
+
+ paralink +
+

+ ParaLink +

+

+ A cross-chain asset exchange hub built on the Polkadot XCM + (Cross-Consensus Messaging) technology stack. It serves users of + parachains in the Polkadot ecosystem, automatically supporting all + parachains and assets within the ecosystem. It also provides a + user-friendly interface to optimize user workflow. +

+ +
+
+
+
+
+ msgport +
+

+ Msgport +

+

+ A message sending and receiving protocol designed by RingDAO to + enable arbitrary message exchange between applications running on + different EVM-compatible chains. +

+ +
+
+
+ xapi +
+

+ XAPI +

+

+ It is a decentralized, permissionless, and programmable oracle + platform that communicates with target chains via secure chain + signatures, ensuring reliable and verifiable data transmission. +

+ +
+
+ + ); +} diff --git a/src/data/header.json b/src/data/header.json new file mode 100644 index 0000000..12dec68 --- /dev/null +++ b/src/data/header.json @@ -0,0 +1,20 @@ +{ + "menu": [ + { + "name": "About RING", + "url": "#about" + }, + { + "name": "Project", + "url": "#project" + }, + { + "name": "Program", + "url": "#program" + }, + { + "name": "Roadmap", + "url": "https://ringdao.notion.site/10daad1d671e80a48e04edd0917f4be6?v=fffaad1d671e81cd9321000c79aeec2c&pvs=74" + } + ] +} diff --git a/src/data/menu.json b/src/data/menu.json deleted file mode 100644 index 95d0b83..0000000 --- a/src/data/menu.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "menu": [ - { - "name": "Developers", - "lists": [ - { - "name": "Developers" - }, - { - "name": "Darwinia Guide", - "link": "https://docs.darwinia.network/build/getting-started/networks/overview/" - }, - { - "name": "Msgport Guide", - "link": "https://msgport.ringdao.com/docs/build/networks.html" - }, - { - "name": "Bug Bounty", - "link": "https://immunefi.com/bug-bounty/ringdao/" - } - ] - }, - { - "name": "Community", - "lists": [ - { - "name": "Community" - }, - { - "name": "Discussion", - "link": "https://github.com/orgs/ringecosystem/discussions" - }, - { - "name": "RFP", - "link": "https://github.com/ringecosystem/collaboration/issues" - } - ] - }, - { - "name": "Vote", - "lists": [] - } - ] -} diff --git a/src/data/websites.json b/src/data/websites.json deleted file mode 100644 index 5a7ea58..0000000 --- a/src/data/websites.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "sites": [ - { - "logo": "/images/msgport.png", - "desc": "Standard smart contract interfaces that streamline cross-chain messaging, enabling applications to interact effortlessly without concern for the underlying blockchain technology.", - "isxapi": false, - "alt": "msgport logo", - "link": "https://msgport.ringdao.com/" - }, - { - "logo": "/images/darwinia.png", - "desc": "A Polkadot parachain with built-in cross-chain functionality, fully compatible with the Ethereum Virtual Machine (EVM).", - "isxapi": false, - "alt": "darwinia logo", - "link": "https://darwinia.network/" - }, - { - "logo": "/icons/XAPI.svg", - "desc": "The innovative Oracle service that supports real-world data on the blockchain.", - "isxapi": true, - "alt": "XAPI logo", - "link": "https://github.com/ringecosystem/xapi" - } - ] -} diff --git a/src/hooks/useWidth.jsx b/src/hooks/useWidth.tsx similarity index 100% rename from src/hooks/useWidth.jsx rename to src/hooks/useWidth.tsx diff --git a/src/index.css b/src/index.css index 86f7d32..5532004 100644 --- a/src/index.css +++ b/src/index.css @@ -30,8 +30,9 @@ html { font-family: EuclidCircularA; overflow-x: hidden; - background-color: #000; + background-color: #fff; width: 100vw; + box-sizing: border-box; } body { overflow: hidden; @@ -57,3 +58,17 @@ body { display: none !important; -webkit-appearance: none; } + +.cs-buttonHover:hover { + background-color: black; + color: white; +} + +.cs-buttonHover:hover > span { + border-color: white; +} + +.cs-buttonHover, +.cs-buttonHover > span { + transition-duration: 200ms; +} diff --git a/src/main.jsx b/src/main.jsx deleted file mode 100644 index b088b63..0000000 --- a/src/main.jsx +++ /dev/null @@ -1,5 +0,0 @@ -import { render } from 'preact' -import { App } from './app.jsx' -import './index.css' - -render(, document.getElementById('app')) diff --git a/src/main.tsx b/src/main.tsx new file mode 100644 index 0000000..b2c3c36 --- /dev/null +++ b/src/main.tsx @@ -0,0 +1,5 @@ +import { render } from "preact"; +import { App } from "./app"; +import "./index.css"; + +render(, document.getElementById("app") as HTMLElement); diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..f9d6933 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,18 @@ +{ + "compilerOptions": { + "target": "ESNext", + "lib": ["DOM", "DOM.Iterable", "ESNext"], + "allowJs": true, + "skipLibCheck": true, + "esModuleInterop": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "module": "ESNext", + "moduleResolution": "Node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx" + }, + "include": ["src"], + "exclude": ["node_modules"] +} diff --git a/vite.config.js b/vite.config.ts similarity index 50% rename from vite.config.js rename to vite.config.ts index 29b326f..c5fc99c 100644 --- a/vite.config.js +++ b/vite.config.ts @@ -1,7 +1,7 @@ -import { defineConfig } from 'vite' -import preact from '@preact/preset-vite' +import { defineConfig } from "vite"; +import preact from "@preact/preset-vite"; // https://vitejs.dev/config/ export default defineConfig({ plugins: [preact()], -}) +});