cmeng-git / atalk-android

xmpp/jabber client for android
Apache License 2.0
159 stars 59 forks source link

Joint effort to modernize the look? #42

Closed poVoq closed 4 years ago

poVoq commented 5 years ago

Edit: I decided to work on my own XMPP client for Ubuntu Touch instead. But I leave this open in case people want to collaborate.

I would like to update the graphical look of aTalk taking interface graphics from other open source messaging apps. Probably Movim and/or the Telegramm client.

Is there any hints what the requirements are? Any other guidance?

I am planning some time for this probably in 4-6 weeks. (edit: hmm, early October most likely :( ) Maybe it can be a joint sprint with multiple contributors?

cmeng-git commented 5 years ago

No sure how extend of the UI changes you have in mind: a. Only replacement of icon and product logo Currently there are around 400~500 icons used by aTalk. If changes are required, any graphic designer needs to fully understand each icon usage and android specifications on icons/screen resolutions, in order to generate a harmonize and family look icons for use in aTalk.

b. Changing theme and background colors At start of aTalk development, resource is to concentrate in getting a working aTalk and add features. No much attention is paid to the app themes. The base theme used by aTalk is android Theme.Holo, but there are some adaptation. It will requires some effort to clean up current aTalk Theme implementation before one can proceed to change.

c. Change the UI layout and application flow. There will be a major effort required in this areas, as this affects the source coding, layout and system testings.

Changes in any of the above, the effort is not small. The changes not only affect aTalk app itself; but also all the online documentation in atalk.sytes.net. This means all the video clips, screenshots etc must be recreated.

If UI changes are to be in the main aTalk project development, this will disrupt aTalk normal project development. I would prefer that UI changes are to be carried out as a branch project, until such point that it is ready for merging into the main aTalk project.

However before this project can kick off, we need to have some insight of the proposed changes, ui design directions, and even with some simple scratches of the new UI's.

Currently all my times are already consumed by aTalk project activities; afraid that I will no have much spare time for aTalk UI improvement. No sure if you have persons in mind whom would like to contribute to aTalk project. Pending on the changes, for a and b changes alone, we are likely to need a 2~3 people project team, and a minimum of 3 months full time effort to get a beta version for testing.

poVoq commented 5 years ago

Ok maybe I am underestimating the amount of work required... I was thinking of mostly a) with a bit of b) mixed in. Mainly because every time I tell people about aTalk they immediately complain about the dated look of it, which really just seems like cosmetics that should not be that hard to change. Of course if you are thinking of custom making all the graphics for aTalk then yes I agree that is a lot of work... but there are some really nice open messenger projects which can be the source of a consistent set of icons in a modern style.

I agree that it is best done in a separate branch and later merged back in. I also was not expecting you to contribute much other than some guidance in cases where it is not immediately obvious what to change. Better focus your limited time on improving actual functionality like you are already doing :)

cmeng-git commented 5 years ago

Do you have any xmpp client that has the attributes for modern look that you are referring to? Would like to take a look at what are the effort required and impact to the aTalk progress.

poVoq commented 5 years ago

Well, obviously there is the Conversations client, but I don't think it would do much good to make atalk look too much like it.

I was rather thinking about looking at non-xmpp messenger projects such as https://delta.chat/ (actually a fork of the open source telegram client) or Movim to reuse graphics and stickers etc. if the license of the art assets allows it.

cmeng-git commented 5 years ago

Sorry for my ignorant, I really cannot see what are the major differences between conversations, delta.chat and aTalk.

I see the major differences are the color scheme and avatar shape. Can it because of avatar is perfect square or round, instead of square with rounded corner as in aTalk? Or the color scheme used in aTalk is too dark? Or the chat background colors used are too bright? aTalk uses different backgrounds to denote plain, OTR and OMEMO chat sessions.

poVoq commented 5 years ago

Heh, yeah I think you need some support with graphics design if you don't even see the huge difference in design consistency :)

aTalk right now is a clear case of "programmer's art".

Totally understandable that you are prioritizing other things, so I hope you don't take this as overly negative criticism :)

cmeng-git commented 5 years ago

Yes agreed, at least from my point, I really need some graphics design expert advice on this area.

licaon-kter commented 5 years ago

@poVoq DeltaChat was based on the Telegram UI, but now it's based on Signal.

cmeng-git commented 4 years ago

Closed with no activity to follow up.

subpub commented 4 years ago

Holo theme is like 10 years outdated. It's like using Windows XP still. Even if atalk has all XMPP features, its UI alone dissuades wider adoption.

Google has made Design Guidelines called Material Design. It has Open Source UI libs, fonts, icons etc

Start from here:

https://github.com/material-components/material-components-android

https://material.io/develop/android/

https://material.io/resources

cmeng-git commented 4 years ago

Would

Holo theme is like 10 years outdated. It's like using Windows XP still. Even if atalk has all XMPP features, its UI alone dissuades wider adoption.

Google has made Design Guidelines called Material Design. It has Open Source UI libs, fonts, icons etc

Start from here:

https://github.com/material-components/material-components-android

https://material.io/develop/android/

https://material.io/resources

Would you like to be contribute to the ID design? I am an engineer by nature and does not have any ID background. So it is not my field to improve in this area.

By the way, I am still using WIndows XP, and I dislike windows 10 UI. Each and individual has his/her preference.

subpub commented 4 years ago

I'm not an android dev, sorry, but if you want you can try posting a (gratis, free) job to https://github.com/opensourcedesign/jobs https://opensourcedesign.net job board

licaon-kter commented 4 years ago

@subpub Read issue title, then re-read your request. :)

subpub commented 4 years ago

@licaon-kter are you hinting that I should submit it? :)

subpub commented 4 years ago

I already had typed a job half. I'll fill it up then

cmeng-git commented 4 years ago

I feel that aTalk is not a social application that is used by general public. aTalk users are likely to have professional background or companies that would like to host their own server for privacy and security. If a company wants to have its own UI, it can always put in their own resources to make changes to aTalk. Also there are many social chat clients available that have modernize interfaces that users can choose from.

Modernizing an app UI is not a simple task; it needs major effort and time. aTalk goal is to develop an app so it has good ergonomic and simple to use. Sometimes it is simple to say than actually doing it. aTalk app is a 5 man-year effort. Modernization aTalk UI and make it stable can easy demand another 1 man-year effort. Unless there are public community willing to contribute and help, changing UI is of lowest priority to aTalk development.

As I have mentioned, an UI may appear attractive to one but not everyone. Although windows 10 has good UI, I would distance myself from using it. Likewise I only use Ubuntu classic gnome GUI, rather the default fancy UI that comes with it.

bleedingcrow commented 4 years ago

Functionality is orders of magnitude more important than cosmetics

ghost commented 4 years ago

Modernizing an app UI is not a simple task; it needs major effort and time.

That's true and even re-using the GUI of a different app is effort, but it is substantially less work than writing a new one from scratch. In hopes that someone wants to help it I made a list:

GPLv3+ licensed (+ means "or any later version"): Signal https://github.com/signalapp/Signal-Android/blob/master/LICENSE (not sure if this also allow "any later version") Kontalk https://github.com/kontalk/androidclient/blob/master/COPYING GNU Jami https://git.jami.net/savoirfairelinux/ring-client-android/blob/master/COPYING Conversations: https://github.com/iNPUTmice/Conversations/blob/master/LICENSE

permissive licenses (wouldn't require using GPLv3 for the combined work (it's MIT right now)): RiotX (Apache v2) https://github.com/vector-im/riotX-android/blob/develop/LICENSE Rocket.Chat (MIT) https://github.com/RocketChat/Rocket.Chat.ReactNative/blob/develop/LICENSE -- Uses React Native so can be used for other platforms as well.

See for example Google Play Store to see how each app's GUI looks.

I'm interested in more alternatives with interfaces you like if you know any. Cheers!