https://github.com/anchaldevbytes/voice-todo-assignment
https://github.com/anchaldevbytes/voice-todo-assignment
mongodb nextjs14 typescript
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/anchaldevbytes/voice-todo-assignment
- Owner: AnchalDevBytes
- Created: 2025-02-05T16:56:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-07T08:31:40.000Z (over 1 year ago)
- Last Synced: 2025-04-08T20:33:19.687Z (about 1 year ago)
- Topics: mongodb, nextjs14, typescript
- Language: TypeScript
- Homepage: https://voice-todo-assignment.vercel.app
- Size: 267 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NoteTaking Application
A full-stack note-taking web application with voice-to-text transcription, image uploads, and real-time updates.

## Features
- **Create/Edit Notes**: Rich text notes with titles and content
- **Voice-to-Text**: Speech recognition for hands-free note creation
- **Image Support**: Upload up to 3 images per note
- **Filtering & Sorting**:
- Search notes by title/content
- Filter by favorites
- Sort by newest/oldest
- **Authentication**: JWT-based user authentication
- **Responsive UI**: Mobile-friendly interface
- **Real-time Updates**: Instant state management
- **Loading States**: Visual feedback for async operations
- **Error Handling**: Toast notifications for errors
## Technologies Used
- **Frontend**:
- Next.js 14 (App Router)
- TypeScript
- Tailwind CSS
- React Hook Form
- Axios
- React Toastify
- Web Speech API
- **Backend**:
- Next.js (Api folder)
- MongoDB/Mongoose
- JWT Authentication
- Cloudinary (Image uploads)
## Installation
1. Clone the repository:
```bash
git clone https://github.com/AnchalDevBytes/voice-todo-assignment.git
cd voice-todo-assignment
```
2. **Install dependencies:**
```bash
npm install
```
3. **Configure Environment Variables**
```bash
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
CLOUDINARY_CLOUD_NAME=your_cloudinary_name
CLOUDINARY_API_KEY=your_cloudinary_key
CLOUDINARY_API_SECRET=your_cloudinary_secret
```
4. **Run the development server:**
```bash
npm run dev
```
The app will be available at http://localhost:3000.
5. **Deployment:**
Deployed on vercel : [live](https://voice-todo-assignment.vercel.app/)