尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Find your circle. Company discovery, tokenized stocks on Base, and a more personal watchlist.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Find your circle.
Discover companies, follow your interests, and give your watchlist a little personality.
Proposed economic design: DAYC, service credits, creator incentives and treasury policy. This is a design proposal, not implemented token commitments.
Your interests are bigger than a ticker symbol. Gaming, AI, the brands you use every day: they connect companies, culture, and people.查看完整 README ↗Discover companies, follow your interests, and give your watchlist a little personality.
Tokenized stocks on X Layer, Base and Solana · Next.js · TypeScript · Privy · Postgres
Get started · Product · X Layer · Architecture · Roadmap
Proposed economic design: DAYC, service credits, creator incentives and treasury policy. This is a design proposal, not implemented token commitments.
Your interests are bigger than a ticker symbol. Gaming, AI, the brands you use every day: they connect companies, culture, and people.
Daybreak is building a discovery layer around those connections. Explore companies and their tokenized stocks across X Layer, Base and Solana, read the stories behind them, back your conviction with real stock, save what catches your eye, and make the experience yours. The longer-term home for all of this is your circle: people with shared interests exchanging watchlists, memes, and discoveries.
Electric blue, liquid glass, and plush stock-pin characters give Daybreak its identity. The interface is playful; the financial data stays explicit about its source, coverage, and limitations.
Status: active development. Anonymous discovery works without account credentials. The account data layer has local database validation; a complete hosted Privy-to-Postgres sign-in flow still needs deployment verification. Shared feeds and public watchlists are upcoming, and example community profiles are labeled.
Use Node.js 22 LTS and npm.
git clone https://github.com/ronkenx9/daybreak.git
cd daybreak
npm ci
cp .env.example .env.local
npm run dev
Open localhost:3000. The app is at /app; your profile is at /app/profile.
You can start with an empty .env.local. Discovery uses public Base, Solana and X Layer RPCs, news needs no API key, and personal saves stay on the device until the account backend is configured.
DaybreakConvictionVault is live on X Layer mainnet (chain 196) at 0x55318F36f5B482e9F2b1429f2Ca7fD7c5BBf97fc and supports 20 xStocks.
backWithPermit replaces the separate approval.The app uses the deployed vault by default; NEXT_PUBLIC_XLAYER_VAULT_ADDRESS only overrides it. Contracts, fork tests and the deploy script are in contracts/. The verified token table and integration notes are in docs/xlayer/README.md.
The live Conviction thesis page offers Buy the stock for the exact canonical Solana xStock paired with that thesis. Enter a USDC amount and a maximum USDC price per stock token. Flash returns a limit-order quote; the user's Privy-linked Solana wallet signs any first-time token-account/delegation setup and then signs the order message. Daybreak submits the order through Flash and reads its later status from Flash. A limit order may remain open, fill later, or expire after 24 hours. It is distinct from buying the thesis token through the Meteora DBC pool.
The integration uses the Flash quote API, Solana signing flow, order API, and order status API. Its human implementation is in lib/flash/stock-order.ts, app/api/theses/[id]/flash/quote/route.ts, setup/route.ts, order/route.ts, orders/route.ts, and FlashStockOrder.tsx. The server binds the quote to the authenticated wallet, thesis, canonical stock mint, USDC mint, amount, and limit price; the wallet signs an exact reviewed setup transaction and Ed25519 order message.
An owner can separately enable agent-driven Flash limit orders in You → Your market agents. The owner binds a dedicated standard Solana wallet, sets per-order and UTC daily USDC limits, and issues a new key with live:flash; existing paper keys never gain live access automatically. /api/v1/agents/flash/quotes, setup, and orders support the same exact-stock order with wallet signatures, policy rechecks, atomic daily reservations, and idempotent submission. Daybreak never stores or signs with the agent wallet key. Apply migration 0023_agent_flash_orders before deploying the new API. The agent quickstart and OpenAPI describe the flow. Agents cannot trade the thesis token through Meteora.
Create a Daybreak integrator key in Definitive's Flash dashboard and set DEFINITIVE_FLASH_API_KEY in the server environment for local development and production. Until that key is configured, Daybreak hides the order controls and its Flash routes reject quote, order, and order-list requests; it does not use Definitive's shared key as a fallback. NEXT_PUBLIC_PRIVY_APP_ID, PRIVY_APP_SECRET, DATABASE_URL, and SOLANA_RPC_URL are needed for authenticated wallet signing, account verification, and Solana setup confirmation. A real order spends funds; local verification does not sign, broadcast, or submit one.
.env.local and your hosting environment:| Variable | Purpose | Visibility |
|---|---|---|
NEXT_PUBLIC_PRIVY_APP_ID | Enables the Privy client | Public app identifier |
PRIVY_APP_SECRET | Verifies access tokens on the server | Server only |
DATABASE_URL | Account database connection | Server only |
BASE_RPC_URL | Optional dedicated Base RPC | Server only |
XLAYER_RPC_URL | Optional dedicated X Layer RPC | Server only |
npm run db:preflight
npm run db:migrate
npm run db:verify
Private API requests use verified Privy bearer tokens. The server derives the acting user from that token. Profile writes use version checks; bookmark and membership updates operate on individual records. Cross-device refresh happens on focus and at intervals, rather than through live push.
See account milestone notes for validation details and remaining acceptance checks. For the deployment sequence and authorization model, see Supabase database setup.
Next.js / React interface
├─ Company discovery, circles, holdings, profile
├─ Privy identity + wallet connection
└─ React Query
└─ Next.js API routes
├─ X Layer RPC → xStocks holdings, supply and the conviction vault
├─ Solana RPC → xStocks holdings; Definitive Flash → stock limit orders
├─ Base RPC → balances and oracle references
├─ GDELT → company headline links
├─ Dexscreener → related token discovery
├─ Aerodrome + GeckoTerminal → stock LP positions and pool activity
├─ OKX AI tool endpoint → agent discovery and scoped actions
└─ Verified Privy identity → Drizzle → Postgres
| Location | Responsibility |
|---|---|
app/ | Pages, styles, and API routes |
components/daybreak/ | Product interface, identity, account state, and artwork sections |
lib/xlayer/ | X Layer xStocks registry, holdings, supply and vault reads |
lib/solana/ | Solana xStocks and PreStocks registries and holdings |
lib/base/ | Base token registry, chain reads, valuation, and market integrations |
lib/okx/ | OKX AI tool catalog |
contracts/ | DaybreakConvictionVault, X Layer mainnet-fork tests and deploy script |
lib/account/ | Authentication verification and API client |
lib/db/ | Schema, database connection, and account operations |
drizzle/ | Versioned database migrations |
public/assets/ | Characters, posters, marks, and company icons |
scripts/ | Registry tooling and core regression checks |
docs/ | Product plans, implementation notes, and audits |
Every stock token is identified by its exact contract or mint, per chain. On X Layer, rebasing xStock balances are converted to underlying shares through the on-chain multiplier, and wrapped balances through the ERC-4626 wrapper. Base holdings valuation uses raw ERC-20 quantities and total-return oracle answers with bigint arithmetic. Scaled share quantities are shown separately. Reads validate token/feed metadata and oracle pause state at a consistent block. Missing prices produce a priced subtotal and coverage information, never an invented complete total.
Oracle values are reference values, not executable quotes. External purchase links do not establish available liquidity or eligibility. News providers can rate-limit or time out. Current caches and request limits are process-local; production deployment needs appropriate shared infrastructure.
Wallet connection is separate from Daybreak account identity. Signing in does not create a funded wallet, move assets, or publish holdings. Older room purchase flows are isolated simulations.
npm test # Core regression checks
npm run type-check # TypeScript validation
npm run build # Production build
npm run start # Serve the production build
Run development and production builds from separate checkouts if they must run simultaneously: both use .next in this checkout.
Product roadmap · Account architecture · Character assets · Core audit and fixes
Daybreak's character and poster artwork was generated for this project from the owner's visual direction. Company names and logos identify their respective companies and do not imply endorsement. DynaPuff's font license is included in public/fonts/DynaPuff-OFL.txt.
This repository is public for review and collaboration. No general open-source license has been granted yet.