Survival LLM
A free AI assistant and survival library (1.5 million offline articles) that runs on your own computer, with no internet. Shows the source of every answer. Mac and Windows.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A one-screen dashboard for a crypto trading bot: performance, four strategy slots, trades, scanner and risk. It runs on demo data until a live bot or exchange integration is connected.
/: the bot dashboard (React + TypeScript)./markets.html: the earlier markets page, with TradingView charts and the indicator signals table.See ROADMAP.md for where this is heading.
Node 20+.
npm install
npm run dev # http://localhost:5173, also serves /api/* like Vercel does
npm test # API and indicator tests (node:test) + dashboard calculation tests (Vitest)
npm run build # typecheck, then production build into dist/
On Vercel, vercel.json sets the build. Push to main and it deploys, and api/ runs as
serverless functions.
| Desktop (≥1100px) | Tablet (700–1099px) | Phone (<700px) |
|---|---|---|
| 12-column grid. Performance spans 7 columns and Strategy 1 spans 5 (top row, 59% of the height). Six equal cards below (41%). Fits one screen down to about 1440 × 900. | Top cards side by side or stacked, with lower cards in 3 or 2 columns. The page scrolls. | Swipeable carousel with snap, pagination dots, a card counter, and previous/next buttons. |
Bottom row order: Strategy 2, Strategy 3, Strategy 4, Trades, Scanner, Risk.
| What | Where |
|---|---|
| Name, currency, time zone, exchange label | src/config/dashboard.ts |
| Default strategy slot details | defaultStrategies in src/config/dashboard.ts |
| The data model every card reads | src/types.ts (DashboardData) |
| All calculations (P&L, trading return, win rate, R, risk usage, freshness) | src/lib/derive.ts |
| Demo fixtures and scenarios | src/data/demo.ts |
| Data source selection | src/data/adapter.ts |
| Cards | src/cards/ |
Click the pencil on any strategy card to set its name, description, timeframe, symbols and notes.
These edits are saved in the browser. To set defaults for everyone, edit defaultStrategies.
This is display configuration only. Saving it doesn't start, stop or change a strategy, and the card's status (Flat, Watching, In position…) always comes from the bot's data. A slot you've named but the bot doesn't report stays "Not configured".
Open Diagnostics (the pulse icon) to switch the demo between Normal, Empty, Loading, Error, Stale data and Bot disconnected. The header always shows a Demo badge in demo mode.
asOf) and threshold
(STALE_AFTER_SEC in derive.ts). A stale card keeps its last values and shows an amber badge.api/dashboard.js, a serverless function that reads from your bot or exchange and returns
JSON matching DashboardData in src/types.ts.api/. Never put a key in
src/, in a VITE_* variable (those are bundled into the browser), or in local storage.VITE_DATA_SOURCE=api in Vercel's environment variables and redeploy.The cards don't change, because the adapter is the only part that knows where data comes from.
/markets.html keeps the TradingView widgets and the signals table. That table scores each coin
on EMA 20/50 trend, MACD and RSI 14 using Coinbase public candles from api/candles.js, with no
key needed. The indicator code is in lib/indicators.js. To change its coin list, copy
public/config.example.js to public/config.js. The signals are a technical-analysis aid, not
financial advice.