Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/njordulv/habitifier
Habitifier is a habit-tracking app designed to help you build and maintain good habits. (in progress)
https://github.com/njordulv/habitifier
nextjs react shadcn-ui ssr supabase-auth supabase-db tailwindcss typescript zustand
Last synced: 9 days ago
JSON representation
Habitifier is a habit-tracking app designed to help you build and maintain good habits. (in progress)
- Host: GitHub
- URL: https://github.com/njordulv/habitifier
- Owner: njordulv
- Created: 2024-07-02T15:40:49.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-26T19:30:43.000Z (2 months ago)
- Last Synced: 2024-10-26T21:39:27.814Z (2 months ago)
- Topics: nextjs, react, shadcn-ui, ssr, supabase-auth, supabase-db, tailwindcss, typescript, zustand
- Language: TypeScript
- Homepage: https://njordulv-habitifier.vercel.app
- Size: 3.96 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Habitifier
Habitifier is a habit-tracking app designed to help you build and maintain good habits.
Set goals, track progress, and achieve your personal best with ease.## Features
1. User authentication and authorization using Supabase
- GitHub OAuth
- Google OAuth
- Email and password credentials
2. Sign in and sign out pages
3. Protected routes with middleware and redirects
4. Dashboard displaying current habits and their status
5. Ability to add and manage habits
- Edit habit details such as name, description, and days of the week
- Set daily goals, units, reminders, and preferred times
- Select icons and colors for habits
- Configure notification sounds
6. Centralized state management for habit creation and updates
- Integrated Zustand for managing form state and resetting values
7. Seamless integration with Supabase for data persistence## Technologies Used
- Framework: Next.js
- State Management: Zustand
- UI design system: Shadcn-UI, Tailwind CSS
- Languages: TypeScript
- Authentication: Supabase Authentication (OAuth and email credentials)
- Database: Supabase
- Form Management: React Hook Form with Zod validation
- PWA: next-pwa## Recent Updates
1. **User Authentication Enhancements**
- Implemented comprehensive user authentication system using Supabase
- Integrated GitHub and Google OAuth
- Added email and password authentication
- Created sign-in/sign-up pages
- Implemented middleware for route protection and redirects2. **Centralized State Management**
- Utilized Zustand for managing state in the habit creation form
- Integrated Zustand store with React Hook Form for improved form handling
- Added functionality to reset form state using Zustand
- Enhanced error handling and user feedback in the habit creation process3. **Habit Management Improvements**
- Updated habit editing functionality to handle various attributes like name, description, days of the week, times of day, goals, changing habit colors & icons
- Improved notification settings with sound configuration
- Improved reminders settings with timers4. **User Interface and Experience**
- Added new components for better habit tracking and management
- Improved UI with additional form fields and components for a more comprehensive habit management experience5. **Progressive Web App (PWA) Integration**
- Added PWA support using next-pwa
- Improved offline capabilities and user experience with service workers and caching