Initial Setup

This commit is contained in:
Juno 2026-03-04 11:58:02 -05:00
commit 94f25a09be
59 changed files with 6672 additions and 0 deletions

28
.gitignore vendored Normal file
View file

@ -0,0 +1,28 @@
dist
.wrangler
.output
.vercel
.netlify
.vinxi
app.config.timestamp_*.js
# Environment
.env
.env*.local
# dependencies
/node_modules
# IDEs and editors
/.idea
.project
.classpath
*.launch
.settings/
# Temp
gitignore
# System Files
.DS_Store
Thumbs.db

36
README.md Normal file
View file

@ -0,0 +1,36 @@
## Usage
Those templates dependencies are maintained via [pnpm](https://pnpm.io) via `pnpm up -Lri`.
This is the reason you see a `pnpm-lock.yaml`. That being said, any package manager will work. This file can be safely be removed once you clone a template.
```bash
$ npm install # or pnpm install or yarn install
```
### Learn more on the [Solid Website](https://solidjs.com) and come chat with us on our [Discord](https://discord.com/invite/solidjs)
## Available Scripts
In the project directory, you can run:
### `npm run dev` or `npm start`
Runs the app in the development mode.<br>
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
The page will reload if you make edits.<br>
### `npm run build`
Builds the app for production to the `dist` folder.<br>
It correctly bundles Solid in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.<br>
Your app is ready to be deployed!
## Deployment
You can deploy the `dist` folder to any static host provider (netlify, surge, now, etc.)
## This project was created with the [Solid CLI](https://github.com/solidjs-community/solid-cli)

18
eslint.config.js Normal file
View file

@ -0,0 +1,18 @@
// @ts-check
import recommendedConfig from "eslint-plugin-solid/configs/recommended";
import globals from "globals";
import tseslint from "typescript-eslint";
export default tseslint.config({
files: ["{valid,invalid}/**/*.{js,jsx,ts,tsx}"],
...recommendedConfig,
rules: {
...recommendedConfig.rules,
"max-len": ["error", { code: 80, tabWidth: 2 }],
},
languageOptions: {
globals: globals.browser,
parser: tseslint.parser,
},
});

15
index.html Normal file
View file

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<title>Solid App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<script src="/src/index.tsx" type="module"></script>
</body>
</html>

4098
package-lock.json generated Normal file

File diff suppressed because it is too large Load diff

27
package.json Normal file
View file

@ -0,0 +1,27 @@
{
"name": "vite-template-solid",
"version": "0.0.0",
"description": "",
"type": "module",
"scripts": {
"start": "vite",
"dev": "vite",
"build": "vite build",
"serve": "vite preview"
},
"license": "MIT",
"devDependencies": {
"@tailwindcss/vite": "^4.1.13",
"eslint": "^9.39.3",
"eslint-plugin-solid": "^0.14.5",
"solid-devtools": "^0.34.3",
"tailwindcss": "^4.1.13",
"typescript": "^5.9.2",
"vite": "^7.1.4",
"vite-plugin-solid": "^2.11.8"
},
"dependencies": {
"solid-js": "^1.9.9",
"typescript-eslint": "^8.56.1"
}
}

1739
pnpm-lock.yaml Normal file

File diff suppressed because it is too large Load diff

8
src/App.tsx Normal file
View file

@ -0,0 +1,8 @@
import type { Component } from "solid-js";
import Main from "./pages/Main";
const App: Component = () => {
return <Main />;
};
export default App;

BIN
src/assets/types/Alien.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

BIN
src/assets/types/Angel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
src/assets/types/Bird.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
src/assets/types/Brat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/types/Bug.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6 KiB

BIN
src/assets/types/Bunny.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

BIN
src/assets/types/Clown.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

BIN
src/assets/types/Cow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

BIN
src/assets/types/Deer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

BIN
src/assets/types/Demon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

BIN
src/assets/types/Doll.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/types/Dragon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/types/Elf.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
src/assets/types/Fairy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
src/assets/types/Fish.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

BIN
src/assets/types/Fox.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5 KiB

BIN
src/assets/types/Gamer.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

BIN
src/assets/types/Goth.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

BIN
src/assets/types/Horror.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/types/Horse.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

BIN
src/assets/types/Kitty.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/types/Knight.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

BIN
src/assets/types/Little.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/types/Lizard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

BIN
src/assets/types/Maid.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
src/assets/types/Mommy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

BIN
src/assets/types/Nerd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/types/Pirate.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

BIN
src/assets/types/Plant.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/types/Plushy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

BIN
src/assets/types/Puppy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
src/assets/types/Rat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
src/assets/types/Robot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

BIN
src/assets/types/Sister.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

BIN
src/assets/types/Slime.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

BIN
src/assets/types/Slut.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
src/assets/types/Snake.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6 KiB

BIN
src/assets/types/Spider.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
src/assets/types/Were-.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
src/assets/types/Witch.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

1
src/index.css Normal file
View file

@ -0,0 +1 @@
@import 'tailwindcss';

16
src/index.tsx Normal file
View file

@ -0,0 +1,16 @@
/* @refresh reload */
import './index.css';
import { render } from 'solid-js/web';
import 'solid-devtools';
import App from './App';
const root = document.getElementById('root');
if (import.meta.env.DEV && !(root instanceof HTMLElement)) {
throw new Error(
'Root element not found. Did you forget to add it to your index.html? Or maybe the id attribute got misspelled?',
);
}
render(() => <App />, root!);

51
src/pages/Main.tsx Normal file
View file

@ -0,0 +1,51 @@
import { createSignal, type Component } from "solid-js";
import { allTypes, girlTypes } from "../typing/girlTypes";
const Main: Component = () => {
const [selectedTypes, setSelectedTypes] = createSignal<girlTypes[]>([]);
const handleClick = (girl: girlTypes) => {
setSelectedTypes((prev) =>
prev.find((value) => value === girl)
? prev.filter((value) => value !== girl)
: [...prev, girl],
);
console.log(selectedTypes());
};
return (
<div class="flex bg-emerald-950 text-white">
<div class="flex-1">
<h2>Choose defending Pokémon types</h2>
<div class="flex flex-wrap">
{allTypes.map((t) => (
<button
class="cursor-pointer"
onClick={() => handleClick(t.type)}
id={t.type + ""}
>
{selectedTypes().find((value) => value === t.type) ? (
<img
src={t.displayImage}
alt={t.displayName}
class="brightness-100 contrast-200 border-4 border-indigo-500 "
></img>
) : (
<img
src={t.displayImage}
alt={t.displayName}
class="border-4 border-emerald-950"
></img>
)}
</button>
))}
</div>
</div>
<div class="flex-1">
<h2>Takes 1× from</h2>
</div>
</div>
);
};
export default Main;

601
src/typing/girlTypes.ts Normal file
View file

@ -0,0 +1,601 @@
import ImgAlien from "../assets/types/Alien.png"
import ImgAngel from "../assets/types/Angel.png"
import ImgBird from "../assets/types/Bird.png"
import ImgBrat from "../assets/types/Brat.png"
import ImgBug from "../assets/types/Bug.png"
import ImgBunny from "../assets/types/Bunny.png"
import ImgClown from "../assets/types/Clown.png"
import ImgCow from "../assets/types/Cow.png"
import ImgDeer from "../assets/types/Deer.png"
import ImgDemon from "../assets/types/Demon.png"
import ImgDoll from "../assets/types/Doll.png"
import ImgDragon from "../assets/types/Dragon.png"
import ImgElf from "../assets/types/Elf.png"
import ImgFairy from "../assets/types/Fairy.png"
import ImgFish from "../assets/types/Fish.png"
import ImgFox from "../assets/types/Fox.png"
import ImgGamer from "../assets/types/Gamer.png"
import ImgGoddess from "../assets/types/Goddess.png"
import ImgGoth from "../assets/types/Goth.png"
import ImgHandler from "../assets/types/Handler.png"
import ImgHorror from "../assets/types/Horror.png"
import ImgHorse from "../assets/types/Horse.png"
import ImgKitty from "../assets/types/Kitty.png"
import ImgKnight from "../assets/types/Knight.png"
import ImgLittle from "../assets/types/Little.png"
import ImgLizard from "../assets/types/Lizard.png"
import ImgMaid from "../assets/types/Maid.png"
import ImgMommy from "../assets/types/Mommy.png"
import ImgNerd from "../assets/types/Nerd.png"
import ImgPirate from "../assets/types/Pirate.png"
import ImgPlant from "../assets/types/Plant.png"
import ImgPlushy from "../assets/types/Plushy.png"
import ImgPoolToy from "../assets/types/Pool Toy.png"
import ImgPrincess from "../assets/types/Princess.png"
import ImgPuppy from "../assets/types/Puppy.png"
import ImgRat from "../assets/types/Rat.png"
import ImgRobot from "../assets/types/Robot.png"
import ImgSister from "../assets/types/Sister.png"
import ImgSlime from "../assets/types/Slime.png"
import ImgSlut from "../assets/types/Slut.png"
import ImgSnake from "../assets/types/Snake.png"
import ImgSpider from "../assets/types/Spider.png"
import ImgVampire from "../assets/types/Vampire.png"
import ImgWere from "../assets/types/Were-.png"
import ImgWitch from "../assets/types/Witch.png"
export enum girlTypes {
None,
Knight
, Puppy
, Kitty
, Robot
, Maid
, Vampire
, Brat
, Little
, Sister
, Princess
, Fairy
, Dragon
, Doll
, Gamer
, Bird
, Were
, Plushy
, Bug
, Deer
, Rat
, Goddess
, Demon
, Angel
, Nerd
, Goth
, Witch
, Slime
, Snake
, Horror
, Mommy
, Bunny
, Fox
, PoolToy
, Plant
, Clown
, Horse
, Cow
, Slut
, Elf
, Spider
, Pirate
, Fish
, Handler
, Lizard
, Alien
}
export interface girlType {
displayName: string,
displayImage: string,
type: girlTypes,
strengths: girlTypes[],
weaknesses: girlTypes[],
immunities: girlTypes[]
}
// Knight
export const Knight: girlType = {
displayName: "KNIGHT",
displayImage: ImgKnight,
type: girlTypes.Knight,
strengths: [girlTypes.Puppy, girlTypes.Kitty, girlTypes.Vampire, girlTypes.Dragon, girlTypes.Bird, girlTypes.Were, girlTypes.Bug, girlTypes.Deer, girlTypes.Rat, girlTypes.Demon, girlTypes.Slime, girlTypes.Horror, girlTypes.Bunny, girlTypes.Horse, girlTypes.Spider, girlTypes.Pirate],
weaknesses: [girlTypes.Knight, girlTypes.Little, girlTypes.Princess, girlTypes.Fairy, girlTypes.Goddess, girlTypes.Angel, girlTypes.Mommy, girlTypes.Fox, girlTypes.Clown, girlTypes.Handler],
immunities: []
}
//Puppy
export const Puppy: girlType = {
displayName: "PUPPY",
displayImage: ImgPuppy,
type: girlTypes.Puppy,
strengths: [],
weaknesses: [],
immunities: []
}
//Kitty
export const Kitty: girlType = {
displayName: "KITTY",
displayImage: ImgKitty,
type: girlTypes.Kitty,
strengths: [],
weaknesses: [],
immunities: []
}
//Robot
export const Robot: girlType = {
displayName: "ROBOT",
displayImage: ImgRobot,
type: girlTypes.Robot,
strengths: [],
weaknesses: [],
immunities: []
}
//Maid
export const Maid: girlType = {
displayName: "MAID",
displayImage: ImgMaid,
type: girlTypes.Maid,
strengths: [],
weaknesses: [],
immunities: []
}
//Vampire
export const Vampire: girlType = {
displayName: "VAMPIR",
displayImage: ImgVampire,
type: girlTypes.Vampire,
strengths: [],
weaknesses: [],
immunities: []
}
//Brat
export const Brat: girlType = {
displayName: "BRAT",
displayImage: ImgBrat,
type: girlTypes.Brat,
strengths: [],
weaknesses: [],
immunities: []
}
//Little
export const Little: girlType = {
displayName: "LITTLE",
displayImage: ImgLittle,
type: girlTypes.Little,
strengths: [],
weaknesses: [],
immunities: []
}
//Sister
export const Sister: girlType = {
displayName: "SISTER",
displayImage: ImgSister,
type: girlTypes.Sister,
strengths: [],
weaknesses: [],
immunities: []
}
//Princess
export const Princess: girlType = {
displayName: "PRNCSS",
displayImage: ImgPrincess,
type: girlTypes.Princess,
strengths: [],
weaknesses: [],
immunities: []
}
//Fairy
export const Fairy: girlType = {
displayName: "FAIRY",
displayImage: ImgFairy,
type: girlTypes.Fairy,
strengths: [],
weaknesses: [],
immunities: []
}
//Dragon
export const Dragon: girlType = {
displayName: "DRAGON",
displayImage: ImgDragon,
type: girlTypes.Dragon,
strengths: [],
weaknesses: [],
immunities: []
}
//Doll
export const Doll: girlType = {
displayName: "DOLL",
displayImage: ImgDoll,
type: girlTypes.Doll,
strengths: [],
weaknesses: [],
immunities: []
}
//Gamer
export const Gamer: girlType = {
displayName: "GAMER",
displayImage: ImgGamer,
type: girlTypes.Gamer,
strengths: [],
weaknesses: [],
immunities: []
}
//Bird
export const Bird: girlType = {
displayName: "BIRD",
displayImage: ImgBird,
type: girlTypes.Bird,
strengths: [],
weaknesses: [],
immunities: []
}
//Were
export const Were: girlType = {
displayName: "WERE-",
displayImage: ImgWere,
type: girlTypes.Were,
strengths: [],
weaknesses: [],
immunities: []
}
//Plushy
export const Plushy: girlType = {
displayName: "PLUSHY",
displayImage: ImgPlushy,
type: girlTypes.Plushy,
strengths: [],
weaknesses: [],
immunities: []
}
//Bug
export const Bug: girlType = {
displayName: "BUG",
displayImage: ImgBug,
type: girlTypes.Bug,
strengths: [],
weaknesses: [],
immunities: []
}
//Deer
export const Deer: girlType = {
displayName: "DEER",
displayImage: ImgDeer,
type: girlTypes.Deer,
strengths: [],
weaknesses: [],
immunities: []
}
//Rat
export const Rat: girlType = {
displayName: "RAT",
displayImage: ImgRat,
type: girlTypes.Rat,
strengths: [],
weaknesses: [],
immunities: []
}
//Goddess
export const Goddess: girlType = {
displayName: "GODESS",
displayImage: ImgGoddess,
type: girlTypes.Goddess,
strengths: [],
weaknesses: [],
immunities: []
}
//Demon
export const Demon: girlType = {
displayName: "DEMON",
displayImage: ImgDemon,
type: girlTypes.Demon,
strengths: [],
weaknesses: [],
immunities: []
}
//Angel
export const Angel: girlType = {
displayName: "ANGEL",
displayImage: ImgAngel,
type: girlTypes.Angel,
strengths: [],
weaknesses: [],
immunities: []
}
//Nerd
export const Nerd: girlType = {
displayName: "NERD",
displayImage: ImgNerd,
type: girlTypes.Nerd,
strengths: [],
weaknesses: [],
immunities: []
}
//Goth
export const Goth: girlType = {
displayName: "GOTH",
displayImage: ImgGoth,
type: girlTypes.Goth,
strengths: [],
weaknesses: [],
immunities: []
}
//Witch
export const Witch: girlType = {
displayName: "WITCH",
displayImage: ImgWitch,
type: girlTypes.Witch,
strengths: [],
weaknesses: [],
immunities: []
}
//Slime
export const Slime: girlType = {
displayName: "SLIME",
displayImage: ImgSlime,
type: girlTypes.Slime,
strengths: [],
weaknesses: [],
immunities: []
}
//Snake
export const Snake: girlType = {
displayName: "SNAKE",
displayImage: ImgSnake,
type: girlTypes.Snake,
strengths: [],
weaknesses: [],
immunities: []
}
//Horror
export const Horror: girlType = {
displayName: "HORROR",
displayImage: ImgHorror,
type: girlTypes.Horror,
strengths: [],
weaknesses: [],
immunities: []
}
//Mommy
export const Mommy: girlType = {
displayName: "MOMMY",
displayImage: ImgMommy,
type: girlTypes.Mommy,
strengths: [],
weaknesses: [],
immunities: []
}
//Bunny
export const Bunny: girlType = {
displayName: "BUNNY",
displayImage: ImgBunny,
type: girlTypes.Bunny,
strengths: [],
weaknesses: [],
immunities: []
}
//Fox
export const Fox: girlType = {
displayName: "FOX",
displayImage: ImgFox,
type: girlTypes.Fox,
strengths: [],
weaknesses: [],
immunities: []
}
//PoolToy
export const PoolToy: girlType = {
displayName: "POOLTY",
displayImage: ImgPoolToy,
type: girlTypes.PoolToy,
strengths: [],
weaknesses: [],
immunities: []
}
//Plant
export const Plant: girlType = {
displayName: "PLANT",
displayImage: ImgPlant,
type: girlTypes.Plant,
strengths: [],
weaknesses: [],
immunities: []
}
//Clown
export const Clown: girlType = {
displayName: "CLOWN",
displayImage: ImgClown,
type: girlTypes.Clown,
strengths: [],
weaknesses: [],
immunities: []
}
//Horse
export const Horse: girlType = {
displayName: "HORSE",
displayImage: ImgHorse,
type: girlTypes.Horse,
strengths: [],
weaknesses: [],
immunities: []
}
//Cow
export const Cow: girlType = {
displayName: "COW",
displayImage: ImgCow,
type: girlTypes.Cow,
strengths: [],
weaknesses: [],
immunities: []
}
//Slut
export const Slut: girlType = {
displayName: "SLUT",
displayImage: ImgSlut,
type: girlTypes.Slut,
strengths: [],
weaknesses: [],
immunities: []
}
//Elf
export const Elf: girlType = {
displayName: "ELF",
displayImage: ImgElf,
type: girlTypes.Elf,
strengths: [],
weaknesses: [],
immunities: []
}
//Spider
export const Spider: girlType = {
displayName: "SPIDER",
displayImage: ImgSpider,
type: girlTypes.Spider,
strengths: [],
weaknesses: [],
immunities: []
}
//Pirate
export const Pirate: girlType = {
displayName: "PIRATE",
displayImage: ImgPirate,
type: girlTypes.Pirate,
strengths: [],
weaknesses: [],
immunities: []
}
//Fish
export const Fish: girlType = {
displayName: "FISH",
displayImage: ImgFish,
type: girlTypes.Fish,
strengths: [],
weaknesses: [],
immunities: []
}
//Handler
export const Handler: girlType = {
displayName: "HANDLR",
displayImage: ImgHandler,
type: girlTypes.Handler,
strengths: [],
weaknesses: [],
immunities: []
}
//Lizard
export const Lizard: girlType = {
displayName: "LIZARD",
displayImage: ImgLizard,
type: girlTypes.Lizard,
strengths: [],
weaknesses: [],
immunities: []
}
//Alien
export const Alien: girlType = {
displayName: "ALIEN",
displayImage: ImgAlien,
type: girlTypes.Alien,
strengths: [],
weaknesses: [],
immunities: []
}
export const allTypes = [
Knight
, Puppy
, Kitty
, Robot
, Maid
, Vampire
, Brat
, Little
, Sister
, Princess
, Fairy
, Dragon
, Doll
, Gamer
, Bird
, Were
, Plushy
, Bug
, Deer
, Rat
, Goddess
, Demon
, Angel
, Nerd
, Goth
, Witch
, Slime
, Snake
, Horror
, Mommy
, Bunny
, Fox
, PoolToy
, Plant
, Clown
, Horse
, Cow
, Slut
, Elf
, Spider
, Pirate
, Fish
, Handler
, Lizard
, Alien
]

20
tsconfig.json Normal file
View file

@ -0,0 +1,20 @@
{
"compilerOptions": {
// General
"jsx": "preserve",
"jsxImportSource": "solid-js",
"target": "ESNext",
// Modules
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"isolatedModules": true,
"module": "ESNext",
"moduleResolution": "bundler",
"noEmit": true,
// Type Checking & Safety
"strict": true,
"types": ["vite/client"]
}
}

14
vite.config.ts Normal file
View file

@ -0,0 +1,14 @@
import tailwindcss from '@tailwindcss/vite';
import { defineConfig } from 'vite';
import solidPlugin from 'vite-plugin-solid';
import devtools from 'solid-devtools/vite';
export default defineConfig({
plugins: [devtools(), solidPlugin(), tailwindcss()],
server: {
port: 3000,
},
build: {
target: 'esnext',
},
});