https://github.com/cosimochellini/purranormal-activity
A whimsical Next.js 15 + TypeScript app to log and track supernatural events caused by your enchanted kitten and its frightened chick companion. Powered by AI image generation, magical transitions, and a dash of mischief.
https://github.com/cosimochellini/purranormal-activity
cloudflare nextjs openai typescript
Last synced: 27 days ago
JSON representation
A whimsical Next.js 15 + TypeScript app to log and track supernatural events caused by your enchanted kitten and its frightened chick companion. Powered by AI image generation, magical transitions, and a dash of mischief.
- Host: GitHub
- URL: https://github.com/cosimochellini/purranormal-activity
- Owner: cosimochellini
- License: mit
- Created: 2024-12-19T22:01:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-11T14:49:04.000Z (over 1 year ago)
- Last Synced: 2025-04-14T00:16:21.835Z (about 1 year ago)
- Topics: cloudflare, nextjs, openai, typescript
- Language: TypeScript
- Homepage: https://purranormal-activity.pages.dev/
- Size: 10.2 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Purranormal Activity
Track magical mishaps and spooky shenanigans of an enchanted kitten. This project is now powered by TanStack Start and deployed on Cloudflare Workers.

## Live
- Production: [https://purranormal-activity.workers.dev](https://purranormal-activity.workers.dev)
## Stack
- Framework: [TanStack Start](https://tanstack.com/start) + [TanStack Router](https://tanstack.com/router)
- Runtime/Deploy: [Cloudflare Workers](https://developers.cloudflare.com/workers/)
- Build tool: [Vite](https://vite.dev/)
- Language: [TypeScript](https://www.typescriptlang.org/)
- DB: [Turso](https://turso.tech/) + [Drizzle ORM](https://orm.drizzle.team/)
- Styling: [Tailwind CSS](https://tailwindcss.com/)
- Lint/format: [Biome](https://biomejs.dev/)
## Requirements
- Node.js `22.x`
- `pnpm`
## Setup
1. Install dependencies:
```bash
pnpm install
```
2. Create local env file:
```bash
cp .env.example .env
```
3. Fill `.env` with required values.
## Development
Run dev server (keeps current project behavior with patch version bump):
```bash
pnpm dev
```
If you need to skip the automatic version bump, run Vite directly:
```bash
vite dev
```
Default local URL is shown in terminal (typically `http://localhost:3000`).
## Scripts
- `pnpm lint` - run Biome checks
- `pnpm format` - format code
- `pnpm lint:fix` - apply Biome fixes
- `pnpm build` - production build (TanStack Start / Vite)
- `pnpm preview` - preview built app locally
- `pnpm cf-typegen` - generate Worker env types from Wrangler config
- `pnpm deploy` - build and deploy to Cloudflare Workers (no manual pre-build required)
## Cloudflare Workers
- Project config: [`wrangler.jsonc`](./wrangler.jsonc)
- Deploy script uses generated build config: `dist/server/wrangler.json`
- Worker name: `purranormal-activity`
Manual deploy alternative:
```bash
pnpm run build:start
wrangler deploy --config dist/server/wrangler.json
```
Dry-run deploy:
```bash
wrangler deploy --dry-run --config dist/server/wrangler.json
```
## Core Routes
- `/`
- `/explore`
- `/new`
- `/:id`
- `/:id/edit`
- `/api/*` internal routes
## Manual QA
See: [`wiki/manual-test.md`](./wiki/manual-test.md)
## License
MIT. See [LICENSE](./LICENSE).