{"id":19361039,"url":"https://github.com/skp3214/inotebook","last_synced_at":"2026-04-10T06:32:49.914Z","repository":{"id":249546139,"uuid":"831805161","full_name":"skp3214/iNoteBook","owner":"skp3214","description":null,"archived":false,"fork":false,"pushed_at":"2024-09-20T16:52:15.000Z","size":248,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-24T12:25:30.509Z","etag":null,"topics":["bootstrap","expressjs","mern-stack","mongodb","nodejs","note-taking-app","reactjs"],"latest_commit_sha":null,"homepage":"https://inotebook-live.vercel.app/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skp3214.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-21T17:06:00.000Z","updated_at":"2024-09-20T16:52:19.000Z","dependencies_parsed_at":"2024-07-21T19:08:43.658Z","dependency_job_id":"6eab8403-b0c0-469c-b3a3-218791b7df1b","html_url":"https://github.com/skp3214/iNoteBook","commit_stats":null,"previous_names":["skp3214/inotebook"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/skp3214/iNoteBook","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skp3214%2FiNoteBook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skp3214%2FiNoteBook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skp3214%2FiNoteBook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skp3214%2FiNoteBook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skp3214","download_url":"https://codeload.github.com/skp3214/iNoteBook/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skp3214%2FiNoteBook/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262594063,"owners_count":23334121,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap","expressjs","mern-stack","mongodb","nodejs","note-taking-app","reactjs"],"created_at":"2024-11-10T07:20:19.005Z","updated_at":"2026-04-10T06:32:49.884Z","avatar_url":"https://github.com/skp3214.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📝 iNotebook - Modern AI-Powered Note Management Application\n\n\u003cdiv align=\"center\"\u003e\n\n[![Live Demo](https://img.shields.io/badge/Live%20Demo-Visit%20Website-blue?style=for-the-badge\u0026logo=vercel)](https://inotebook-live.vercel.app/)\n[![API](https://img.shields.io/badge/API-View%20Docs-green?style=for-the-badge\u0026logo=swagger)](https://inotebook-api.vercel.app)\n[![GitHub Stars](https://img.shields.io/github/stars/skp3214/inotebook?style=for-the-badge\u0026logo=github)](https://github.com/skp3214/inotebook)\n[![License](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge)](LICENSE)\n\n*A full-stack intelligent note management application built with the MERN stack, featuring AI-powered assistance, advanced tag management, dark mode, offline support, and modern glassmorphism UI.*\n\n\u003c/div\u003e\n\n\u003cimg width=\"3087\" height=\"1743\" alt=\"image\" src=\"https://github.com/user-attachments/assets/867d93e6-107d-4c20-94b3-973007f558ae\" /\u003e\n\n\n## 🚀 Overview\n\niNotebook is a next-generation note management application that combines traditional note-taking with cutting-edge AI technology. Built with a completely decoupled architecture, it showcases modern web development practices while providing an intuitive, feature-rich experience for users to manage their digital notes efficiently.\n\n\n\nhttps://github.com/user-attachments/assets/e08d49a7-bc7f-43e6-87a3-3f56f9650d5e\n\n\n\n## 🌟 Latest Features \u0026 Updates\n\n### 🎤 Speech Recognition Feature\n- **Voice-to-Text Conversion** - Convert spoken words directly into note content\n- **Real-time Speech Processing** - Live transcription with instant feedback\n- **Multi-language Support** - Support for multiple languages and accents\n- **Voice Commands** - Control note operations using voice commands\n- **Hands-free Note Taking** - Create and edit notes without typing\n\n### 🤖 AI-Powered Note Assistant\n- **Natural Language Processing** - Interact with your notes using conversational AI\n- **Smart CRUD Operations** - Create, read, update, and delete notes through AI chat\n- **Intelligent Search** - AI-powered note discovery and content analysis\n- **Google Gemini Integration** - Powered by Google's advanced AI technology\n\n### 🏷️ Advanced Tag Management System\n- **Dynamic Tag Assignment** - Organize notes with customizable tags (Work, Urgent, Personal, Important, Completed)\n- **Color-Coded Categories** - Visual tag system with predefined gradient colors\n- **Smart Filtering** - Filter notes by tags with advanced search capabilities\n- **Tag-Based Organization** - Hierarchical note organization with visual indicators\n\n### 🌙 Dark Mode Support\n- **Theme Toggle** - Seamless switching between light and dark modes\n- **System Preference Detection** - Automatically adapts to OS theme settings\n- **Persistent Theme** - Remembers user preference across sessions\n- **Modern UI Consistency** - Cohesive design in both themes\n\n### 📱 Offline Support\n- **Offline Note Creation** - Create and edit notes without internet connection\n- **Data Synchronization** - Automatic sync when connection is restored\n- **Local Storage Management** - Efficient offline data persistence\n- **Network Status Detection** - Smart handling of connectivity changes\n- **Pending Actions Queue** - Manages offline operations for later sync\n\n### ⚡ Enhanced User Experience\n- **Loading Spinners** - Beautiful loading indicators for login/signup processes\n- **Responsive Animations** - Smooth transitions and micro-interactions\n- **Advanced Search \u0026 Filter** - Powerful search functionality with real-time filtering\n\n### ✨ Core Highlights\n\n- **🔐 Secure Authentication** - JWT-based user authentication with bcrypt password hashing\n- **📱 Responsive Design** - Mobile-first approach with Bootstrap integration  \n- **🌐 RESTful APIs** - Well-structured API endpoints with proper error handling\n- **⚡ Real-time Updates** - Dynamic note management with instant UI updates\n- **🛡️ Security First** - Environment-based configuration and security best practices\n- **📊 Clean Architecture** - Separation of concerns with DAO, Service, and Controller layers\n\n## 🛠️ Tech Stack\n\n### Frontend\n- **React.js** - Modern UI library with hooks and context API\n- **Bootstrap** - Responsive CSS framework\n- **React Router** - Client-side routing\n- **Context API** - State management\n- **FontAwesome** - Icon library for modern UI\n- **Service Workers** - For offline functionality\n- **Web Speech API** - For speech recognition capabilities\n\n### Backend  \n- **Node.js** - JavaScript runtime environment\n- **Express.js** - Web application framework\n- **MongoDB** - NoSQL database with Mongoose ODM\n- **JWT** - JSON Web Tokens for authentication\n- **bcrypt.js** - Password hashing library\n- **Google Gemini AI** - AI-powered note assistance\n\n### DevOps \u0026 Deployment\n- **Vercel** - Frontend and backend deployment\n- **Environment Variables** - Secure configuration management\n- **Git** - Version control with proper .gitignore setup\n\n## 📸 Screenshots\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg width=\"2848\" height=\"2927\" alt=\"image\" src=\"https://github.com/user-attachments/assets/198ec6a5-5ca5-47f8-9b70-c8d33f75ae72\" /\u003e\n\n\u003cimg width=\"2848\" height=\"1603\" alt=\"image\" src=\"https://github.com/user-attachments/assets/2b4ef307-e439-4507-9565-df1a259f13ce\" /\u003e\n\n\n*Clean and intuitive user interface with modern glassmorphism design*\n\n\u003c/div\u003e\n\n## ⚡ Quick Start\n\n### Prerequisites\n- **Node.js** (v14 or higher)\n- **MongoDB** (local installation or MongoDB Atlas)\n- **Google AI API Key** (for AI features)\n- **Git** for version control\n\n### 🔧 Backend Setup\n\n1. **Clone the repository**\n   ```bash\n   git clone https://github.com/skp3214/inotebook.git\n   cd inotebook/backend\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Configure environment variables**\n   ```bash\n   # Create .env file with the following configuration\n   MONGODB_URI=mongodb://localhost:27017/inotebook\n   PORT=5000\n   NODE_ENV=development\n   ALLOWED_ORIGINS=http://localhost:3000\n   FRONTEND_URL=http://localhost:3000\n   ACCESS_TOKEN_SECRET=replace_with_strong_access_secret\n   REFRESH_TOKEN_SECRET=replace_with_strong_refresh_secret\n   JWT_SECRET=replace_with_legacy_jwt_secret\n   GOOGLE_AI_API_KEY=replace_with_google_ai_api_key\n   EMAIL_USER=your_gmail_address@gmail.com\n   EMAIL_PASS=your_gmail_app_password\n   ```\n\n4. **Start the development server**\n   ```bash\n   npm start\n   ```\n   \n   🎉 Backend server running on `http://localhost:5000`\n\n### 🎨 Frontend Setup\n\n1. **Navigate to frontend directory**\n   ```bash\n   cd ../frontend\n   ```\n\n2. **Install dependencies**\n   ```bash\n   npm install\n   ```\n\n3. **Configure environment variables**\n   ```bash\n   # Create .env file\n   REACT_APP_API_BASE_URL=http://localhost:5000\n   NODE_ENV=development\n   ```\n\n4. **Start the development server**\n   ```bash\n   npm start\n   ```\n   \n   🎉 Frontend application running on `http://localhost:3000`\n\n\n## 📋 API Endpoints\n\n### 🔐 Authentication Routes\n- `POST /api/auth/createuser` - User registration with spinner loading\n- `POST /api/auth/login` - User login with spinner loading\n- `POST /api/auth/getuser` - Get user profile (Protected)\n\n### 📝 Notes Routes  \n- `GET /api/notes/fetchallnotes` - Get all user notes with tags (Protected)\n- `POST /api/notes/addnotes` - Create new note with tag assignment (Protected)\n- `PUT /api/notes/updatenotes/:id` - Update existing note and tags (Protected)\n- `DELETE /api/notes/deletenotes/:id` - Delete note (Protected)\n\n### 🤖 AI Assistant Routes\n- `POST /api/ai-agent/chat` - Chat with AI for note operations (Protected)\n\n## 🤝 Contributing\n\nWe welcome contributions! Please follow these steps:\n\n1. **Fork the repository**\n2. **Create a feature branch**\n   ```bash\n   git checkout -b feature/amazing-feature\n   ```\n3. **Commit your changes**\n   ```bash\n   git commit -m 'Add amazing feature'\n   ```\n4. **Push to the branch**\n   ```bash\n   git push origin feature/amazing-feature\n   ```\n5. **Open a Pull Request**\n\n## 📞 Contact \u0026 Support\n\n\u003cdiv align=\"center\"\u003e\n\n[![GitHub](https://img.shields.io/badge/GitHub-skp3214-black?style=for-the-badge\u0026logo=github)](https://github.com/skp3214)\n[![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-blue?style=for-the-badge\u0026logo=linkedin)](https://linkedin.com/in/yourprofile)\n\n**Found this project helpful? Give it a ⭐ on GitHub!**\n\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cp\u003eMade with ❤️ by \u003ca href=\"https://github.com/skp3214\"\u003eskp3214\u003c/a\u003e\u003c/p\u003e\n  \u003cp\u003e© 2025 iNotebook. All rights reserved.\u003c/p\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskp3214%2Finotebook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskp3214%2Finotebook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskp3214%2Finotebook/lists"}