Code Monkey home page Code Monkey logo

hermesdesktop's Introduction

Hermes Desktop

Desktop applications of Hermes Messenger created using Electron.

Installation

You can either compile the code yourself, or you can also download pre-compiled binaries of the app from the releases page. We have binaries for Windows, Mac OS and Linux.

Windows & Mac OS

Download the corresponding installer and run it, just like if you were installing any other program.

Note: The installers are not signed (we don't have a certificate for it), so you may get some security warnings when running it. However, the code is perfectly safe (you can look at the code yourself, it's all saved in this repo).

Linux

The file in the releases page is an executable, so you just have to download it, mark it as executable and run it.
No installation is necessary, and all dependencies are packed into the file.


Testing

To run the app locally, use:

npm install && npm start

This will open a new window with the program.

Build

We have Travis CI set up to automatically compile the app after each commit, but if you want you can do this yourself.

To create binaries for your operating system, use:

npm run build

To create binaries for a specific operating system, use:

npm run build-win
npm run build-osx
npm run build-linux  

To create binaries for all operating systems, use:

npm run build-all

The newly created binaries will be inside the dist/ folder.

NOTE: Mac OS binaries can only be built on that operating system, and npm run build-all will error out if running on a different OS. You can use npm run build-winlinux to skip the Mac OS builds and only create them for Windows and Linux.

hermesdesktop's People

Contributors

dependabot[bot] avatar spaceface777 avatar theperkinrex avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

hermesdesktop's Issues

Improve the way links open

Right now, a link opens in a separate window (as shown in the image below).
We should open them in the user's default browser instead.

image

Add update checks

We should check if a new update exists and if the user is using an older version of the app show a warning telling them to update the app.

Error checking for updates when app launches

When the user opens the compiled version of the app, the app throws an error when checking for updates.
I think this is because the method we use to get the current version (process.env.npm_package_version) doesn't work when the app is compiled.

This is the error:

image

Unable to Create Account

This issue is probably due to not being able to connect to the server as this app is decentralized, but I'm unable to create an account through the desktop app. After choosing a username and entering a password, the app simply does nothing. After I while, I either run into a 504 gateway timeout or a 503. What's your take on this, is it the application itself or just a side effect of this app's decentralized nature?

(In case you're wondering, I'm running the most recent version of Hermes on Mac OS Mojave on an early 2015 13-inch MacBook Air)

Settings don't save properly

When saving the user's settings on desktop, the settings menu stays on the screen and is unclosable unless you completely relaunch the app. However, the settings save properly.

Add support for dark mode of MacOS Mojave

In electron, there's a place where you can enable dark mode, but we would need to add a dark mode to the web page first, adding something like /chat for normal & /chat/dark for dark mode.
This could be done for every page.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.