D-Chat is a decentralized chat application built on NKN network, available as a web application, browser extension, and desktop application.
- Decentralized messaging using NKN network
- Multi-platform support:
- Web Application
- Browser Extension (Chrome & Firefox)
- Desktop Application (Windows, macOS, Linux)
- End-to-end encryption
- Cross-platform synchronization
- Modern UI with Vue 3 and TypeScript
- Node.js >= 23.0.0
- pnpm >= 10.10.0
# Install dependencies
$ pnpm install
# Start development server
$ pnpm dev:web
# Build for production
$ pnpm build:web
# Preview production build
$ pnpm preview
# Development mode (Chrome & Firefox)
$ pnpm dev:webext
# Build extension for Chrome
$ pnpm build:chrome
# Build extension for Firefox
$ pnpm build:firefox
# Build for both browsers
$ pnpm build:webext
# Start development mode
$ pnpm dev
# Build for Windows
$ pnpm build:win
# Build for macOS
$ pnpm build:mac
# Build for Linux
$ pnpm build:linux
d-chat/
├── src/ # Source code
│ ├── background/ # Browser extension background scripts
│ ├── ui/ # UI components and pages
│ └── ...
├── web-extension/ # Browser extension specific code
└── ...
- Vue 3
- TypeScript
- Vite
- Electron (for desktop app)
- NKN SDK
- Vuetify
- Pinia (State Management)
- Vue Router
- Vue I18n (Internationalization)
pnpm dev
- Start electron developmentpnpm dev:web
- Start web developmentpnpm dev:webext
- Start browser extension developmentpnpm dev:chrome
- Start chrome extension developmentpnpm build
- Build electron apppnpm build:web
- Build web apppnpm build:webext
- Build browser extensionpnpm build:chrome
- Build chrome extensionpnpm typecheck
- Run type checkingpnpm lint
- Run lintingpnpm format
- Format code with Prettier
MIT