the app stems from my anxiety about what to study. i study one thing and worry about another. local-first study oracle. eliminates decision fatigue on what to study. you input sleep metrics, it calculates biological cognitive capacity. you input syllabus, it assigns exact page counts based on real-time neural alignment. it learns your reading speed. it builds its own graphs. zero external dependencies. zero tracking.
- pure javascript.
- semantic html.
- native inline css variables for theming.
- native svg generation for data visualization.
- localstorage database.
shintaku operates on three math engines: circadian alignment, regression-based speed prediction, and a priority scoring matrix.
humans do not have linear focus. focus is a wave dictated by sleep quality and hours since wake (hsw).
sleep quality (
where
raw biological alertness (
final cognitive potential (
the oracle needs to assign a 45-minute sprint. to do this, it must predict how fast you read specific subjects at specific times of day. brain.js is too bloated. shintaku uses a custom multivariate linear regression model built in 20 lines of vanilla js.
it maps historical data:
-
$X_1$ : hours since wake -
$X_2$ : subject difficulty -
$Y$ : seconds per page
it calculates the means (
slope (
y-intercept (
predicted speed for current session:
if data is scarce (cold start), it uses deterministic fallbacks (e.g., math = 170 secs/page, manga = 35 secs/page).
when consulted, the oracle scores every incomplete book in your library. highest score wins.
urgency (
difficulty alignment (
total priority score (
once a book is selected, the oracle calculates exact page assignment to hit a 45-minute (2700 seconds) target block:
pages are clamped between 1 and 25 to prevent extreme assignments. user clicks start, stopwatch runs, logic repeats.
Inspired by the system-24 theme aesthetics.
Put all your books in the app, follow its revelation without question
Shintaku is being developed under the GPLv3 License.
See my thought process and approach with other's opinions on telegram: https://t.me/karuifoss This app has been primarily made on my phone with Acode editor with alpine linux terminal.
Github Issues are the fastest way to get in touch, for other means there's gitlab, bluesky, and my dev.to account, all linked in my account page on github and homepage.
If you like the app, don't forget to leave a star ⭐ here on github and let me know your suggestions!
