Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

✨ AI Notes App | NotedAI

A modern, full-stack Notes Application built with Next.js (App Router + TypeScript), TailwindCSS, Shadcn UI, and Supabase.
Includes features like user authentication, CRUD for notes, AI-powered summarization and explanations, and smooth state management using React Query.


🚀 Features

🔐 User Authentication

  • Google & Email/Password login via Supabase Auth
  • Protected routes for authenticated users
  • User metadata management (name, email, avatar)

📝 Notes Management

  • Create, Read, Update, and Delete (CRUD) personal notes
  • Notes stored in Supabase Postgres DB
  • Auto-generated titles from note content
  • Responsive, animated note input UI

🤖 AI Features (via Groq API)

  • Summarize: Get a brief TL;DR
  • Explain: Detailed explanations of any note
  • Insight: Smart suggestions based on content

⚙️ State Management

  • React Query handles:
    • Data fetching
    • Mutations
    • Cache invalidation
    • Optimistic UI updates

💅 UI & Styling

  • Built with TailwindCSS & Shadcn UI
  • Fully responsive & supports dark mode
  • Smooth animations with Framer Motion

📦 Tech Stack

Layer Tech
Frontend Next.js (App Router), TypeScript
Backend Supabase (Auth + DB)
Styling TailwindCSS, Shadcn UI
AI Groq LLM API
State React Query
Hosting Vercel

🧑‍💻 Getting Started

1. Clone the repository

 git clone https://github.com/vineesha35/NotedAI.git
 cd notedai

2. Install dependencies

pnpm install

3. Set up your environment variable

Create a .env.local file and add the following:

NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
GROQ_API_KEY=your_groq_api_key
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

4. Run the dev server

pnpm dev

Open http://localhost:3000 in your browser.


🧪 API Routes

/api/groq — Groq LLM Integration

Request Body:

{
  "prompt": "Your note content",
  "type": "summarize" | "explain" | "insight",
  "maxTokens": 500
}

🗃️ Supabase Table Structure

notes

Column Type Description
id UUID Primary Key
user_id UUID Linked to Supabase auth user
title Text Title of the note
content Text Full note content
created_at Timestamp Auto-generated by Supabase
updated_at Timestamp Auto-updated on each change

🌐 Deployment

Deployed on Vercel.

Make sure to update:

  • Auth Redirect URLs in your Supabase project
  • Environment Variables in your Vercel project settings

📄 License

This project is open source and available under the MIT License.


🙌 Acknowledgements

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages