Skip to content

Priyank-Lal/Learnly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Learnly - AI-Powered Goal Tracking App

Learnly is a smart goal-tracking application designed to help you achieve your dreams by breaking them down into manageable steps. Powered by Google's Gemini 2.0 Flash AI, Learnly automatically generates actionable micro-goals from your main objectives and provides intelligent categorization to keep you organized.

✨ Key Features

  • 🤖 AI-Powered Goal Breakdown: Simply enter your main goal, and our AI (Gemini 2.0) will generate a structured list of micro-goals (subtasks) to guide you step-by-step.
  • 📂 Smart Categorization: Goals are automatically classified into categories like Learning, Career, Health, Personal, and Other for better organization.
  • 📊 Visual Analytics: Track your progress with interactive charts and insights powered by Recharts.
  • 🔐 Secure Authentication: Robust user management with JWT-based authentication (Login, Register, Password Management).
  • 🎨 Modern UI/UX: A sleek, responsive interface built with React, TailwindCSS, and Radix UI, featuring smooth animations with Framer Motion.
  • ✅ Task Management: Create, update, and delete goals and subtasks with ease.

🛠️ Tech Stack

Frontend

Backend


🚀 Getting Started

Follow these instructions to set up the project locally.

Prerequisites

  • Node.js (v18+ recommended)
  • MongoDB (Local or Atlas connection string)
  • Google Gemini API Key (Get one here)

1. Clone the Repository

git clone https://github.com/yourusername/learnly.git
cd learnly

2. Backend Setup

Navigate to the backend directory and install dependencies:

cd backend
npm install

Create a .env file in the backend directory with the following variables:

PORT=3000
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET_KEY=your_jwt_secret_key
GEMINI_API_KEY=your_google_gemini_api_key

Start the backend server:

npm start
# or for development
npm run dev

The server should be running on http://localhost:3000

3. Frontend Setup

Open a new terminal, navigate to the frontend directory, and install dependencies:

cd frontend
npm install

Create a .env file in the frontend directory:

VITE_API_URL=http://localhost:3000

Start the frontend development server:

npm run dev

The application should now be accessible at http://localhost:5173 (or the port shown in your terminal).


📂 Project Structure

Learnly/
├── backend/                # Node.js/Express Backend
│   ├── src/
│   │   ├── controllers/    # Request handlers
│   │   ├── models/         # Mongoose schemas
│   │   ├── routes/         # API routes
│   │   ├── services/       # AI service logic
│   │   └── db/             # Database connection
│   └── server.js           # Entry point
│
├── frontend/               # React Frontend
│   ├── src/
│   │   ├── api/            # Axios setup & endpoints
│   │   ├── components/     # Reusable UI components
│   │   ├── pages/          # Main application pages (Dashboard, Goals, etc.)
│   │   └── context/        # React Context (Auth, etc.)
│   └── index.css           # Tailwind imports
│
└── README.md               # Project Documentation

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors