A full-stack Todo app featuring a modern Vue 3 frontend and a nodejs-powered backend with real-time chat.
This project consists of two main parts:
-
Frontend:
Built with Vue 3, Vite, and npm.
Features todo management and a real-time chat interface. -
Backend:
Powered by SocketIO and Express (CommonJS).
Provides a WebSocket server for real-time chat messages.
vue-todo/
├── todo-frontend/ # Vue 3 + Vite frontend
├── todo-backend/ # Nodejs backend (Express, WebSocket chat)
└── README.md # Project documentation
- Add, edit, delete, and complete todos
- Real-time chat with username and avatar support
- Pagination and filtering for todos
- Modal for adding todos
- Error handling and not-found page
- Responsive, modern UI
- npm (comes with Node.js)
- Node.js (optional, for backend compatibility)
- MongoDB (if you expand backend to use a database)
git clone <repo-url>
cd vue-todocd todo-frontend
npm install
cd ../todo-backend
npm installcd todo-backend
npm run start
# or, if using server.cjs:
node server.cjscd todo-frontend
npm run dev-
Todos:
Add, edit, delete, and mark todos as complete/incomplete.
Filter and paginate your todo list. -
Chat:
Enter your username and avatar URL to join the chat.
Send and receive messages in real time.
-
todo-frontend/
Vue components, composables, pages, router, and utility functions. -
chat-backend/
Express server (server.cjs), npm entry (index.ts), and chat logic.
MIT