尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證DividendWatch: Dividenden-Tracker für Anleger in der DACH-Region. Next.js + Prisma
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗██████╗ ██╗██╗ ██╗██╗██████╗ ███████╗███╗ ██╗██████╗ ██╗ ██╗ █████╗ ████████╗ ██████╗██╗ ██╗
██╔══██╗██║██║ ██║██║██╔══██╗██╔════╝████╗ ██║██╔══██╗██║ ██║██╔══██╗╚══██╔══╝██╔════╝██║ ██║
██║ ██║██║██║ ██║██║██║ ██║█████╗ ██╔██╗ ██║██║ ██║██║ █╗ ██║███████║ ██║ ██║ ███████║
██║ ██║██║╚██╗ ██╔╝██║██║ ██║██╔══╝ ██║╚██╗██║██║ ██║██║███╗██║██╔══██║ ██║ ██║ ██╔══██║
██████╔╝██║ ╚████╔╝ ██║██████╔╝███████╗██║ ╚████║██████╔╝╚███╔███╔╝██║ ██║ ██║ ╚██████╗██║ ██║
╚═════╝ ╚═╝ ╚═══╝ ╚═╝╚═════╝ ╚══════╝╚═╝ ╚═══╝╚═════╝ ╚══╝╚══╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
Dividend stock intelligence for DACH retail investors.
Track yields, simulate savings plans, and assess sustainability — all in one dark, fast, open-source app.
Live Demo · Report Bug · Request Feature
DividendWatch is a free, open-source financial tool built specifically for retail investors in the DACH region (🇨🇭 Switzerland · 🇩🇪 Germany · 🇦🇹 Austria). It cuts through noise to answer one question:
Which dividend stocks are actually worth holding?
No ads. No paywalls. No data selling. Just clean, fast, honest financial data.
Browse and filter 67 dividend stocks from Swiss (SIX), European (XETRA, AMS, EPA), Austrian (Vienna), UK (LSE), and Scandinavian (Nasdaq Stockholm, Nasdaq Copenhagen) exchanges, plus US (NYSE, NASDAQ) — sorted by yield, filtered by region.
Each stock gets a sustainability badge based on payout ratio and dividend growth history:
Compound your wealth with a full Dividend Reinvestment Plan (DRIP) simulator. Set your monthly budget, stock price, dividend, and growth rate — see exactly where you land after 1–40 years, with an interactive chart.
Enter any CHF amount and instantly see: how many shares you can buy, annual dividend income, monthly income, and leftover cash.
Side-by-side comparison of Dividend vs. Growth strategies with a grid of top growth stocks (NVDA, MSFT, AMZN, AAPL, and more) including P/E, Beta, and Market Cap.
Every stock detail page includes jurisdiction-specific tax notes — Swiss Verrechnungssteuer, US withholding tax under the DBA treaty, EU per-country rates — so you know your real after-tax return.
System-aware dark mode powered by next-themes, with a manual toggle in the header — respects your OS preference by default and remembers your choice.
Track your own holdings at /portfolio — add tickers and share counts to see your live position value and dividend income across currencies. Stored entirely in your browser via zustand + localStorage, no login or database required.
Every stock detail page includes a Recharts line chart of dividend payments over time, built from the same dividend history data that powers the sustainability score.
Export the currently filtered and sorted stock table to CSV or JSON with one click — handy for your own spreadsheets or further analysis.
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) |
| Styling | Tailwind CSS v4 + shadcn/ui |
| Database | PostgreSQL via Prisma ORM |
| Data Source | yahoo-finance2 |
| Charts | Recharts |
| Icons | Lucide React |
| Fonts | Syne · DM Sans · JetBrains Mono |
| Deployment | Vercel |
| Package Manager | pnpm |
git clone https://github.com/Vinyxsoftware/dividendwatch.git
cd dividendwatch
pnpm install
cp .env.example .env
Open .env and set your values:
# PostgreSQL connection string (Supabase, Neon, Railway, etc.)
DATABASE_URL="postgresql://user:password@host:5432/dividendwatch?sslmode=require"
# Secret for the /api/refresh endpoint (any random string)
REFRESH_SECRET="change-me-in-production"
# Push schema and generate Prisma client
pnpm prisma migrate deploy
pnpm prisma generate
# Seed with live market data from Yahoo Finance
pnpm seed
pnpm dev
Open http://localhost:3000 — you should see the full app with live data.
dividendwatch/
├── app/
│ ├── page.tsx # Homepage — rankings + budget calculator
│ ├── portfolio/page.tsx # Portfolio tracker — your own holdings
│ ├── simulator/page.tsx # DRIP savings plan simulator
│ ├── wachstum/page.tsx # Growth stocks comparison
│ ├── stock/[ticker]/ # Stock detail page
│ ├── error.tsx # Route error boundary
│ ├── loading.tsx # Route loading skeleton
│ └── api/
│ ├── stocks/ # REST endpoint — list + detail
│ └── refresh/ # Trigger data refresh from Yahoo Finance
├── components/
│ ├── SiteHeader.tsx # Shared glass nav header
│ ├── StockTable.tsx # Filterable dividend ranking table
│ ├── BudgetCalculator.tsx # Interactive budget → dividend calculator
│ ├── SimulatorChart.tsx # Recharts DRIP area chart
│ ├── DividendHistoryChart.tsx # Recharts dividend history line chart
│ ├── PortfolioClient.tsx # Portfolio tracker UI
│ ├── ThemeProvider.tsx # next-themes dark mode provider
│ └── SustainabilityBadge.tsx
├── lib/
│ ├── prisma.ts # Prisma client singleton
│ ├── yahoo.ts # Yahoo Finance fetcher + ticker list
│ ├── calculations.ts # Sustainability scoring logic
│ ├── export.ts # CSV/JSON export helpers
│ ├── fx.ts # Approximate FX rates for cross-currency totals
│ └── portfolioStore.ts # zustand store for portfolio holdings (localStorage)
├── prisma/
│ └── schema.prisma # Stock, Dividend, PriceSnapshot models
└── scripts/
└── seed.ts # Bulk data seeder
Stock data is fetched from Yahoo Finance. To refresh manually, call the API endpoint with your secret:
curl -X POST https://your-deployment.vercel.app/api/refresh \
-H "Authorization: Bearer YOUR_REFRESH_SECRET"
To automate refreshes, set up a cron job or use Vercel Cron.
The fastest way to self-host your own instance:
You'll need to set DATABASE_URL and REFRESH_SECRET in the Vercel project environment variables after cloning.
Contributions are what make open source great. All contributions are welcome — bug fixes, new features, better data sources, UI improvements, additional ticker lists for other regions.
git checkout -b feat/your-featuregit commit -m 'feat: add your feature'lib/fx.ts)Please open an issue before starting large changes so we can discuss the approach.
Distributed under the MIT License — see LICENSE for details.