I really want to scratch an itch that I've had for about a decade, and build a nice, simple, modern-looking web client that's usable as a mobile app to desktop, packaged however it takes.

My primary use case here is an app that my mum can use to send me photos of her cat.

I have Strong Opinions about how it'd work but I lack experience in modern web dev. I need a mentor or small group who can help me get the basic framework in place to build from. Anyone want to chat about this?

@mike

As someone who's been working for years on pretty much exactly what you're talking about, I think you might be severely, underestimating how much work this really is.

Especially if you don't have much experience with modern web dev.

Why not get involved with an existing project?

If you don't like the Converse.js UI/UX and want something different, you can still use it in "headless" mode and build your own UI on top of it.

npmjs.com/package/@converse/he

@jcbrand believe me, I'm thinking very hard about the amount of work involved.

Whether to use an existing base like Converse or another project as a base is something I'd love to get into a long discussion about, with the particular UX goals I have in mind and how to get there.

This would be a massive learning project for me, and my biggest initial hurdle is figuring out what exactly I need to learn - what could meet the goals I have?

@mike

> my biggest initial hurdle is figuring out what exactly I need to learn - what could meet the goals I have?

Difficult question to answer, but if a simply, easy to use UI/UX is most important to you, then I would start with designing that.

Start by creating a static HTML/CSS mockup of the UI that you want. Potentially using something like Bootstrap or Semantic UI.

Here's an example of a static mockup for Converse: conversejs.org/mockup/chatroom

@mike

Then learn Vue.js or React and figure out how to break the UI down into components.

Then, include converse/headless via NPM and call its API to log in, start a chat session, send/receive messages etc.

Follow

@jcbrand it's exactly this "learn Vue or React" part I'm looking to chat about. I'd like to get some experienced input into pros and cons of various platforms for tasks like this and help me with dumb questions and full in some gaps.

It's not like I'm coming from having never done any programming at all. I'm looking to discuss the goals and narrow down the truly staggering amount of possible tools.

@mike

I can't say much about Vue.js versus React. I'm not using either for Converse.js :)

That's mostly because I'd rather add new features than spend my time rewriting on top of a newer framework.

From my own research, I'm a bit more partial to React and I think there's a decent chance that Converse.js's views will eventually be rewritten in React.

@jcbrand I'm leaning towards learning React as it's so common, but I think the Facebook connection is irrationally putting me off.

@jcbrand heh, I was fishing around for existing XMPP/React projects and look whose name popped up:

github.com/Gargron/xmpp-web

Sign in to participate in the conversation
Chinwag Social

Consider this a friendly, local pub. Make yourself at home, bring your friends, have a good time! Meet new people, have a laugh, enjoy the ambience, and the Oxford commas.