INNER CODE UNIT · TypeScript

saveState

vibeeval/vibecosystem · hooks/src/achievement-tracker.ts:107

function saveState(state: AchievementState): void {
  const dir = join(homedir(), '.claude');
  if (!existsSync(dir)) mkdirSync(dir, { recursive: true });
  writeFileSync(ACHIEVEMENTS_PATH, JSON.stringify(state, null, 2));
}

function updateStreak(state: AchievementState): void {
  if (!state.lastActive) {
    state.streak = 1;
    state.lastActive = TODAY;
    return;
  }
  if (state.lastActive === TODAY) return; // already counted today

  const last = new Date(state.lastActive);
  const now = new Date(TODAY);
  const diffDays = Math.round((now.getTime() - last.getTime()) / 86400000);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…