Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jimmy-guzman/solid-starter

🍱 Another Solid Starter using Bun, Vite, TypeScript, tailwindcss and daisyUI.
https://github.com/jimmy-guzman/solid-starter

bun daisyui eslint msw playwright solidjs tailwind tailwindcss typescript vitejs vitest

Last synced: about 2 months ago
JSON representation

🍱 Another Solid Starter using Bun, Vite, TypeScript, tailwindcss and daisyUI.

Awesome Lists containing this project

README

        

# Solid Starter

> 🍱 Another Solid Starter using Bun, Vite, TypeScript, tailwindcss and daisyUI.

## Features

- 🍞 [bun][bun] for a fast runtime and package manager.
- ⚑️ [vite][vite] for instant server start and lighting fast HMR.
- 🏷️ [TypeScript][TypeScript] for a less frustrating & consistent experience.
- πŸ—ΊοΈ [Solid Router](https://github.com/solidjs/solid-router) for a universal router for SolidJS.
- 🏝️ [TanStack Query][TanStack Query] for asynchronous state management.
- πŸ’„ [tailwindcss][tailwindcss] for utility-first CSS.
- πŸ’„ [daisyUI](https://daisyui.com) for tailwindcss components.
- πŸ§ͺ [vitest][vitest] for fast testing.
- πŸ§ͺ [Playwright][Playwright] for fast and reliable e2e testing.
- πŸ§ͺ [msw](https://mswjs.io) for client-agnostic API mocks.
- 🩺 [eslint][eslint] for static analysis.
- 🎨 [prettier][prettier] for formatting.
- 🩺 [lefthook][lefthook] for fast Git hooks management.
- πŸ‘· [GitHub Actions][GitHub Actions] for easy workflow automation.

## 🏁 Getting Started

_πŸ’‘ To avoid having to remember which package manager to use, I recommended using [ni](https://github.com/antfu/ni)_

First install [bun](https://bun.sh/docs/installation), by running the following command:

```
curl -fsSL https://bun.sh/install | bash
```

Now you can install dependencies, by running the following command:

```
bun install
```

And to download new browsers for Playwright, run the following command:

```
bunx playwright install
```

Then to run the development server, run the following command:

```
bun dev
```

Your application will be available at http://localhost:5173/ ❀️

## 🧞 Available Tasks

| Command | Action |
| :------------------- | :------------------------------------------------ |
| `bun install` | Installs dependencies |
| `bun run dev` | Starts local dev server at http://localhost:5173/ |
| `bun run build` | Build your production site to `./dist/` |
| `bun run preview` | Preview your build locally, before deploying |
| `bun run test` | Unit tests your code with vitest |
| `bun run e2e` | E2E tests your code with playwright |
| `bun run lint` | Lints everything with eslint |
| `bun run lint:fix` | Fixes lint errors with eslint |
| `bun run format` | Checks formatting with prettier |
| `bun run format:fix` | Fixes formatting errors with prettier |
| `bun run typecheck` | Checks types with TypeScript |

## Recommendations

If you need to do more, I recommend the following libraries:

- [TanStack Table](https://tanstack.com/table/v8/docs/adapters/solid-table) for when you need to build complex **tables** or **data grids**
- [fathom](https://usefathom.com/) for **analytics** which is easy to use

[vite]: https://vitejs.dev
[solid]: https://docs.solidjs.com
[TypeScript]: https://www.typescriptlang.org
[tailwindcss]: https://tailwindcss.com
[eslint]: https://eslint.org
[vitest]: https://vitest.dev/guide/why.html
[Testing Library]: https://testing-library.com/docs/guiding-principles
[Playwright]: https://playwright.dev
[prettier]: https://prettier.io
[bun]: https://bun.sh
[GitHub Actions]: https://github.com/features/actions
[lefthook]: https://github.com/evilmartians/lefthook
[TanStack Query]: https://tanstack.com/query/v5