Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
Ohaasa and Gogo zodiac rankings over time, as a cute little stock market.
Translation pending
LifestyleTypeScript · CSSGitHub @oohasa-graphOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
주식 보다 더 기다려지는 오하아사 순위
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗Owner-approved public-viewing prototype for daily zodiac ranking history from Ohaasa and Gogo. The app stores each source independently and presents ranks as a Japanese-first, kawaii "stock market" (original mochi characters, no combined ranks, odds, betting, probabilities, broadcaster images, or logos).
Internal ingestion remains protected by a bearer secret. Re-check content rights before broader promotion or commercial launch.
/ is publicnpm ci
cp .env.example .env.local
Fill .env.local with database and ingestion values. Auth variables are optional unless you re-enable private routes/tests.
Run locally:
npm run dev
The public app is served at / (main market view). /board is the market board opened from the rank chart, and /language switches the interface between Japanese (default on first visit), English, and Korean. The choice is stored in the rm-lang cookie; fortune text from the shows is never translated. Views share ?sign=&source=&range= query parameters; unknown or repeated values fall back to libra, Ohaasa, and one month.
npm run lint
npm run typecheck
npm test
npm run build
npm run test:e2e
Playwright uses DATA_FIXTURE_MODE=1 through playwright.config.ts and never fetches live source content. tests/market.spec.ts runs on desktop and a 390 px phone project; it also checks that the language page's return target can only lead back to this site.
Generate and apply migrations:
npm run db:generate
npm run db:migrate
Use Neon for production DATABASE_URL; PGlite is used only for tests.
GitHub Actions calls the protected Vercel endpoint:
POST /api/internal/ingest
Authorization: Bearer $INGEST_SECRET
Content-Type: application/json
{ "attempt": "primary", "source": "all", "force": false }
Scheduled attempts are 05:15, 06:15, 07:45, and 08:50 JST via UTC crons in .github/workflows/ingest.yml. Ohaasa is skipped on weekends and Japanese public holidays; Gogo is expected daily.
See docs/operations.md for provisioning, scheduler secrets, manual recovery, and stale/invalid diagnosis.