Skip to content

v0.3.0

Choose a tag to compare

@BCFCODE BCFCODE released this 29 Apr 20:27
· 258 commits to main since this release

🚀 Release Notes: Version 0.3.0

Welcome to the v0.3.0 release of BCFCODE!
This update brings a polished dashboard experience, enhanced Codewars integration, and a suite of new features to supercharge your coding journey.
Buckle up for a sleek, interactive, and data-driven update! 🎉


🌟 What's New

1. Revamped Dashboard Experience

  • Dynamic Welcome Section: Personalized dashboard with user name and avatar, plus subtle hover effects for a modern UI.
    Files: page.tsx
  • Responsive Design: Optimized typography and layout for seamless mobile and desktop experience.
    Files: page.tsx, layout.tsx

2. Daily Target Selector

  • Interactive Goal Setting: Toggle between daily coding targets using intuitive icon buttons with tooltips.
    File: TargetSelector.tsx
  • Smooth Animations: Includes fade-in/out transitions and loading effects for goal selection.
    Files: Fade.tsx, Loading.tsx
  • Persistent State: Zustand store with partial state persistence ensures goal setting survives refreshes.
    File: useTargetStore.ts

3. Codewars Stats Gauges

  • Visual Progress Tracking: Gauge charts showing challenge completions for 24h, 7d, 30d, and 365d periods.
    Library: @mui/x-charts · File: Gauge/index.tsx
  • Smart Metrics: Color-coded gauges (error, warning, info, success) with dynamic motivational messages.
    File: useChallengeCountsByPeriod.ts
  • Responsive Grid Layout: Stats are laid out in an adaptive grid across screen sizes.
    File: Stats/index.tsx

4. Enhanced Codewars Integration

  • Challenge Filtering: Improved logic for showing claimed, unclaimed, or both types of challenges.
    Files: useFilter.ts, Step3.tsx, useReconnectMutation.ts
  • Pagination Support: Navigate large datasets smoothly via the new pagination system.
    File: Pagination/index.tsx
  • Diamond Collection Simplified: Refactored tooltip logic and cleaned up the collection UI.
    File: CollectDiamonds/index.tsx

5. Versioning and Documentation

  • Version Bump: Updated app version to 0.3.0 in both UI and package.json.
    File: UnderDevelopment.tsx
  • Spell Check Tweak: Added partialize to the spell checker to avoid false linting errors.
    File: .vscode/settings.json

🛠️ Improvements

  • Code Cleanup: Removed outdated code and unused hooks like useUntrackedChallenges.
    Files: useFilter.ts, Body/index.tsx
  • Type Safety: Added @mui/types as a dev dependency to improve TypeScript support.
    File: package.json
  • Responsive Fixes: Fixed alignment issues for AbsoluteCenter and RelativeCenter components.
    File: DailyTarget/index.tsx
  • Error Handling: Better error states in the Codewars challenge table for smoother UX.
    File: CodewarsTable/index.tsx

🐛 Bug Fixes

  • Filter Initialization: Default filter now correctly initializes as Both.
    Files: useCollectionToggle.ts, DatabaseService.ts
  • Layout Consistency: Fixed z-index overlap issues in the DailyTarget component.
    File: DailyTarget/index.tsx
  • Pagination State Reset: Properly resets pagination when the number of rows per page is changed.
    File: Pagination/index.tsx

🔧 Technical Updates

  • Dependencies

    • Added: @mui/x-charts@^8.1.0
    • Added: @mui/types@^7.4.1
    • Updated: pnpm-lock.yaml
      Files: package.json, pnpm-lock.yaml
  • Day.js Utilities: Simplified dayjs.ts to expose only dayAgo and completedAfterThreshold.
    File: utils/dayjs.ts

  • 404 Page Update: Now suggests redirecting to /dashboard instead of a generic homepage.
    File: not-found.txt


🎨 UI/UX Enhancements

  • Typography: Unified typography system using MUI's Typography with responsive sizing and animation.
    Files: page.tsx, Loading.tsx
  • Icons: MUI icons dynamically colored by state (e.g., DiamondIcon, LooksOneIcon).
    Files: Target.tsx, TargetSelector.tsx
  • Hover Effects: Added subtle scale transforms to avatars and toggle buttons for polished interactions.
    Files: page.tsx, TargetSelector.tsx

📚 How to Upgrade

  1. Pull the Latest Changes

    git pull origin main
  2. Install New Dependencies

    pnpm install
  3. Run the App

    pnpm dev
  4. Explore the Dashboard
    Navigate to: http://localhost:3000/dashboard


🙌 Acknowledgments

A huge shoutout to the BCFCODE community for your invaluable feedback and contributions!
Special thanks to the dev team for shipping this powerful release. 💪
Got feedback? Open an issue or join the conversation on our GitHub Discussions.

Happy Coding!
– The BCFCODE Team
📅 Released on April 29, 2025

BCFCODE LOGO