Skip to content

Latest commit

Β 

History

213 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Nuvaa Focus License: CC BY-NC-ND 4.0

Nuvaa Focus is a focus timer app designed to help users stay focused and manage their time effectively. It offers a clean, distraction-free interface and a range of features to optimize productivity, including customizable timers, task management, account management and ADHD-friendly themes. This repository demonstrates selected features, design decisions, and overall architecture for portfolio purposes and an attempt to practice Next.js.

πŸ“š Table of Contents

πŸ”— Live preview

✨ Features

User Authentication

  • User Accounts - Secure access to personal data
  • Registration - Create a new user account
  • Login - Authenticate users with email and password
  • JWT Sessions - Maintain logged-in state using JSON Web Tokens
  • Password Security - Passwords are securely hashed with bcrypt

Profile Management

  • View Profile - Access user profile information
  • Edit Profile - Update personal details
  • Account Deletion - Permanently delete user account and related data

Focus Timer

  • Focus Time - Track focused work sessions
  • Short Break - Set a short break after each focus session
  • Long Break - Take a longer break after a set number of focus sessions
  • Custom Time - Customize focus and break durations to fit your preferences
  • Auto-Continue - Automatically transition between focus, short break, and long break

Task Management

  • Add Tasks - Create new tasks
  • Edit Tasks - Update existing task details
  • Delete Tasks - Remove tasks from your list
  • Mark as Complete - Track completed tasks
  • Current Task Highlighting - See your active task while focusing

Stopwatch & Time Display

  • Stopwatch Mode - Track time outside of focus mode
  • Regular Clock - Display current time in the interface

Themes

  • Choose between soft, ADHD-friendly color themes to personalize your experience

Persistent Storage

  • Local Storage - All settings, tasks, and preferences are saved in your browser
  • State Management - Powered by Redux Toolkit for consistent performance

πŸ›  Tech Stack

Additional resources

πŸ“ Branch Naming Rules

Naming conventions for branches:

  • feature/<short-description> - For new features
    Example: feature/login-form, feature/add-theme-switcher

  • bugfix/<short-description> - For fixing bugs
    Example: bugfix/fix-login-crash, bugfix/missing-icon

  • hotfix/<short-description> - For quick critical fixes
    Example: hotfix/fix-deploy-error

  • refactor/<short-description> - For improving code without changing behavior
    Example: refactor/cleanup-utils, refactor/rewrite-auth

  • chore/<short-description> - For non-feature tasks like updating dependencies
    Example: chore/update-eslint, chore/rename-files

🀝 Contribution

This project serves as a personal portfolio website to show off my personal skills. However, I do accept various small, clearly scoped improvements that do not alter the core architecture, UI design system, or technology stack.

How to contribute?

There are two ways to contribute:

  • Fixing a bug (identify a new one or fix the existing one)
  • Introducing a new minor feature

No matter the contribution, it's required that there is an opened issue.

Existing issues:

  • You can work on existing issues only if it has a label "open for contribution" and it's assigned to you. If an issue is assigned to someone else (other than me), you can't work on it.
  • To work on an existing issue, you need to:
    • add comment in this issue by showing interest.
    • wait until I respond and assign this issue to you.
  • Start working on the issue and read Contribution Rules to get your work approved.

New issues:

  • You can open new issues yourself.
  • When creating a new issue you will be prompted to choose either "Bug Report" or "Feature Request".
  • Fill all the fields in the given description.
  • Wait until I respond and assign this issue to you or approve your suggested feature.

Important: Suggested features must be as detailed as possible to save each other's time. A small visual examples would help a lot to get the work started. Proposed features should be clearly described and aligned with the project’s scope and design direction.

❌ The following types of changes are not open for public contribution:

  • Modifications requiring access to private tokens, secrets, or credentials
  • Changes involving production authentication secrets
  • Changes requiring access to private APIs or deployment configurations
  • Any updates that depend on non-public environment variables
  • Such changes are maintained exclusively by the repository owner.

🚫 License & Usage Notice

This project is protected under the CC BY-NC-ND 4.0 License.

About

πŸ‘‰ Nuvaa Focus is a focus app designed to help users stay focused and manage their time effectively. It offers a clean, distraction-free interface and a range of features to optimize productivity, including customizable timers, task management, and ADHD-friendly themes.

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages