Welcome to the Goals Tracker App! This beautiful and intuitive application helps users track their goals efficiently by setting deadlines, grouping goals under specific categories, and providing a seamless user experience.
- User Accounts: Each user can create an account and manage their goals.
- Goal Management: Set long-term goals with specific end date.
- Grouping: Organize goals into different groups for better tracking.
- Responsive Design: A beautiful, mobile-friendly interface.
- Animations: Smooth animations for a delightful user experience.
- Frontend:
- Backend:
To run the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/waelnassaf/nextjs-goal-tracker cd goals-tracker-app
-
Install dependencies:
npm install
-
Set up environment variables: Find
.env
file in the root of your project and add the following variables:DATABASE_URL=your_atlas_mongodb_uri AUTH_SECRET=secret_key_for_your_application NEXT_PUBLIC_RECAPTCHA_SITE_KEY=public_google_recapatcha_site_key RECAPTCHA_SECRET_KEY=secret_google_recapatcha_key
Obtain AUTH_SECRET By running the following command in your terminal
openssl rand -base64 32
-
Run the development server:
npm run dev
-
Open your browser: Go to http://localhost:3000 to see the app in action.
-
Sign Up / Log In: Create a new account or log in with existing credentials.
-
Set an end date: Set an end date to achieve your goals
-
Create a Goal Group: Organize your goals by creating different groups.
-
Add Goals: Set your goals under groups.
-
Do it!: Start working on your goals NOW! You're going to do it!
We welcome contributions from the community! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature
). - Open a Pull Request.
This project is licensed under the MIT License. See the LICENSE file for details.
Thank you for using the Goals Tracker App! We hope it helps you achieve your goals efficiently and effectively.