Fullstack Web Chat project for the LVA "Introduction to Fullstack Web Development"
This project is the implementation of a simple web-based chat application. The application uses a client-server architecture and is implemented using the following technologies:
- Frontend: Vue.js, HTML, CSS, TypeScript, Websockets
- Backend: Node.js, Express.js, Websockets
- Database: SQLite
- User Authentication: Users can register and login to the chat application. The user's password is salted and hashed before being stored in the database.
- Chat: Users can send messages to other users in real-time. The chat supports text messages and file attachments (up to 10MB)
- User Profile: Users can view their profile and update their profile picture, visible and password.
- Clone the repository
- Install the dependencies for the front- and backend.
(We recommend usingpnpm
butnpm
likely works as well)
cd frontend
pnpm install
cd ../backend
pnpm install
- Start the backend server
cd backend
pnpm start
- Start the frontend server
cd frontend
pnpm dev
or
cd frontend
pnpm build
pnpm preview
- Open your browser and navigate to
http://localhost:3000
(forpnpm dev
) orhttp://localhost:4173
(forpnpm preview
) - You can now register a new user and start chatting!
The documentation can be found in the Design_Docs.md file.
This project is licensed under the MIT License - see the LICENSE file for details.