/iris-messenger

Decentralized messenger

Primary LanguageJavaScriptMIT LicenseMIT

git_banner_1200x200

nostr | twitter | instagram | youtube | linkedin | tiktok

Iris – The app for better social networks

Iris is a Nostr Android, iOS and web client that has also standalone desktop (Windows, MacOS, Linux) and Docker versions.

  • Sign up in seconds: Just type a name and hit "Go"
  • Secure: It's open source. Users can validate that big brother doesn't read your private messages.
  • Available: It works offline-first and is not dependent on any single centrally managed server.

Sign up, get started, FAQ and support

Visit Iris FAQ for features, explanations and troubleshooting.

sign-up-iris.1.mp4

Develop

git clone https://github.com/irislib/iris-messenger.git
Yarn
# install dependencies
yarn

# serve with hot reload at localhost:8080
yarn dev

# build for production with minification
yarn build

# test the production build locally
yarn serve

# run tests with jest and enzyme
yarn test
npm
# install dependencies
npm i

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

# test the production build locally
npm run serve

# run tests with jest and enzyme
npm run test

iris.to production version is in the stable branch.

Docker

Alternatively, you can run the dev environment on Docker: docker-compose up. The dev build with autoreload will be available at http://localhost:8080.

With Docker Desktop and GitHub Desktop this is an easy way to get started with development. Just clone this repository and run docker-compose up in a terminal in its directory.

Tauri (desktop app)

Tauri docs

Yarn
# install dependencies
yarn

# develop
yarn tauri dev

# build
yarn tauri build
npm
# install dependencies
npm i

# develop
npm run tauri dev

# build
npm run tauri build

iris.to production version is in the production branch.

Master branch is deployed to beta.iris.to.

Tauri desktop releases are built from the release branch by GitHub CI.

NIPS implemented

Privacy

The application is an unaudited proof-of-concept implementation, so don't use it for security critical purposes.