Eine Wetter-App als mittwald Extension, die aktuelle Wetterdaten und eine 7-Tage-Vorschau anzeigt. Die App nutzt mittwald Flow Remote React Components für eine konsistente UI-Erfahrung im mStudio.
- 🌤️ Aktuelle Wetterdaten für ausgewählte Städte (Berlin, Hamburg, München, Köln)
- 📍 Adresssuche - Wetter für beliebige Adressen abrufen
- 📊 7-Tage-Vorschau mit interaktivem Chart (CartesianChart)
- 🎨 mittwald Flow Components - Native UI-Komponenten für konsistentes Design
- 🌡️ Temperatur-Badges - Farbcodierte Anzeige je nach Temperatur
- 📈 Min/Max-Übersicht - Höchste und niedrigste Temperaturen der Woche
Die App nutzt die Open-Meteo API für kostenlose Wetterdaten ohne API-Key.
- Node.js v20.11.1 or higher
- pnpm v10.4.1 or higher
- PostgreSQL database (non-pooling connection)
-
Install dependencies:
pnpm install
-
Set up your environment variables:
cp .env.example .env # Edit .env with your actual values -
Generate Prisma client and run migrations:
pnpm db:generate pnpm db:migrate:deploy
-
Start the development server:
pnpm dev
Your extension will be available at http://localhost:5173
src/
├── components/ # React components
├── hooks/ # Custom React hooks
├── middlewares/ # TanStack middleware
├── routes/ # TanStack Router routes
│ ├── api/ # API endpoints
│ └── __root.tsx # Root layout
├── server/ # Server functions
│ └── functions/ # Server-side functions
├── client.tsx # Client entry point
├── db.ts # Prisma client configuration
├── env.ts # Environment validation
├── global-middleware.ts # Global middleware
└── router.tsx # Router configuration
pnpm dev- Start development serverpnpm build- Build for productionpnpm start- Start production serverpnpm check- Run Biome checkspnpm lint- Lint codepnpm format- Format codepnpm test- Run testspnpm db:generate- Generate Prisma clientpnpm db:migrate:dev- Run migrations in developmentpnpm db:migrate:deploy- Deploy migrationspnpm db:studio- Open Prisma Studio
- Configure Webhooks: Set your webhook URL in mStudio Contributor UI
- Set Scopes: Configure required scopes and extension context
- Configure Anchors: Point anchors to
http://localhost:5173 - Install Extension: Perform first installation via API
- Start Development: Run
pnpm devand open your extension
- Framework: TanStack Start (React-based full-stack framework)
- Database: PostgreSQL with Prisma ORM
- UI Components: mittwald Flow Remote React Components
- Authentication: mittwald Extension Bridge
- Webhooks: mitthooks library
- Code Quality: Biome (linting & formatting)
- Testing: Vitest
-
Repository verbinden:
- Auf app.netlify.com → "Add new site" → "Import an existing project"
- GitHub-Repo
maikbehring/weatherappauswählen
-
Build Settings:
- Build command:
pnpm build - Publish directory:
dist - Node version:
20.11.1(optional, in Environment Variables setzen)
- Build command:
-
Environment Variables (in Netlify Settings):
DATABASE_URL=postgresql://... PRISMA_FIELD_ENCRYPTION_KEY=... EXTENSION_ID=... EXTENSION_SECRET=... NODE_ENV=production -
Deploy: Netlify baut und deployed automatisch bei jedem Push zu
main -
mStudio konfigurieren:
- Webhook URL:
https://deine-app.netlify.app/api/webhooks/mittwald - Anchor URLs:
https://deine-app.netlify.app
- Webhook URL:
This project was generated with mittvibes CLI by mittwald.
For issues with the CLI tool itself, please report them at the mittvibes repository.