- Backend (FastAPI, SQLAlchemy 2, Alembic): single-admin cookie auth, news/crawler/market APIs with SSE and WebSocket streaming - Crawler (Scrapy + Scrapy-Redis): wscn_news, wscn_live, cls_depth, cls_telegraph spiders, idempotent upserts with revisions, raw response archiving, per-source subprocess supervision, restart and backoff - Market worker: full-history Binance spot/USD-M kline backfill, realtime WS stream, hourly and on-reconnect catch-up - Frontend (Vue 3, Element Plus, UnoCSS, KLineChart): news feed, crawler console with live logs, Binance-style chart page - Deploy: docker compose, nginx site, migrate and daily backup scripts
35 lines
825 B
JSON
35 lines
825 B
JSON
{
|
|
"name": "alphapulse-web",
|
|
"type": "module",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vue-tsc && vite build",
|
|
"lint": "eslint . --fix"
|
|
},
|
|
"dependencies": {
|
|
"@element-plus/icons-vue": "^2.3.2",
|
|
"axios": "^1.20.0",
|
|
"dayjs": "^1.11.23",
|
|
"element-plus": "^2.14.7",
|
|
"klinecharts": "^10.0.3",
|
|
"pinia": "^4.0.3",
|
|
"vue": "^3.5.43",
|
|
"vue-router": "^5.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@antfu/eslint-config": "^9.5.1",
|
|
"@types/node": "^26.6.5",
|
|
"@vitejs/plugin-vue": "^6.0.10",
|
|
"eslint": "^10.12.0",
|
|
"eslint-plugin-format": "^2.0.1",
|
|
"typescript": "^6.0.3",
|
|
"unocss": "^66.10.5",
|
|
"unplugin-auto-import": "^21.1.0",
|
|
"unplugin-vue-components": "^32.1.0",
|
|
"vite": "^8.3.4",
|
|
"vue-tsc": "^3.3.13"
|
|
}
|
|
}
|