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

https://github.com/macx/davideiken


https://github.com/macx/davideiken

Last synced: 5 months ago
JSON representation

Awesome Lists containing this project

README

          

# davideiken

Personal website built with Astro, TypeScript, MDX, and Tailwind CSS.

## ๐Ÿš€ Getting Started

This project uses **pnpm** as the package manager, enabled via corepack.

### Prerequisites

- Node.js 20 or higher
- Corepack enabled: `corepack enable`

### Installation

```bash
# Install dependencies
pnpm install

# Install Playwright browsers (required for tests)
pnpx playwright install chromium
```

### Development

```bash
# Start development server
pnpm dev

# Open http://localhost:4321
```

### Building

The build script runs three steps:
1. TypeScript type checking via `astro check`
2. End-to-end tests via Playwright
3. Production build

```bash
# Build the site (includes TypeScript check and tests)
pnpm build

# Preview the production build
pnpm preview
```

**Note:** CodeQL security analysis runs automatically via GitHub Actions on every push and pull request. See `.github/workflows/codeql.yml` for configuration.

### Testing

```bash
# Run Playwright tests
pnpm test
```

**Note:** Tests require the site to be built first. The test runner automatically starts a preview server from the `dist` folder.

## ๐Ÿงž Project Structure

```
/
โ”œโ”€โ”€ public/ # Static assets
โ”œโ”€โ”€ src/
โ”‚ โ”œโ”€โ”€ layouts/ # Layout components
โ”‚ โ”œโ”€โ”€ pages/ # Page components (.astro, .mdx)
โ”‚ โ””โ”€โ”€ components/ # Reusable components
โ”œโ”€โ”€ tests/ # Playwright end-to-end tests
โ””โ”€โ”€ dist/ # Build output (generated)
```

## โœจ Features

- ๐ŸŒ“ **Dark/Light Mode** - Toggle with theme persistence
- โ™ฟ **Accessible** - ARIA labels, keyboard navigation
- โšก **Fast** - Built with Astro for optimal performance
- ๐Ÿ“ **MDX Support** - Rich content with Markdown and JSX
- ๐ŸŽจ **Tailwind CSS** - Utility-first styling
- ๐Ÿ”’ **Type-safe** - Strict TypeScript configuration
- ๐Ÿงช **Tested** - Playwright end-to-end tests
- ๐Ÿ” **Secure** - CodeQL security scanning via GitHub Actions

## ๐Ÿ”’ Security

This project uses GitHub CodeQL for automated security analysis. CodeQL scans run:
- On every push to main and feature branches
- On every pull request
- Weekly on a schedule

Security findings are reported in the GitHub Security tab.

## ๐Ÿ“„ License

See [LICENSE](LICENSE) file for details.