DEV Community

Discussion on: Who's looking for open source contributors? (October 1st edition)

Collapse
 
ben profile image
Ben Halpern • Edited

We have two repos at dev.to that are currently getting focus from us.

Main app:

thepracticaldev / dev.to

Where programmers share ideas and help each other grow


DEV

DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

The Human Layer of the Stack

ruby version rails version Travis Status for thepracticaldev/dev.to

Welcome to the dev.to codebase. We are so excited to have you. With your help, we can build out DEV to be more stable and better serve our community.

What is dev.to?

dev.to (or just DEV) is a platform where software developers write articles, take part in discussions, and build their professional profiles. We value supportive and constructive dialogue in the pursuit of great code and career growth for all members. The ecosystem spans from beginner to advanced developers, and all are welcome to find their place within our community. ❀️

Table of Contents



This is a Rails app. If you're unsure where to contribute, check out the CodeClimate issues for code that needs cleaning. Refactoring is always welcome.

Another area that is always ripe for contribution are Liquid Tags, which are the commands that allow rich embeds in DEV posts. We are always looking for new embeds or improvements on existing ones. We have several frontend features that need work, like the search results page, search autocomplete, and other things. If you want to contribute to a feature like this, reply to this comment and we'll give you some guidance.

The app generalization effort is also a good longterm project for folks. We want people to be able to freely use this platform for different types of communities, but there is work to be done.

The iOS app:

thepracticaldev / DEV-ios

DEV Community iOS App

Build Status GitHub License Language

DEV iOS πŸ’–

This is the repo for the dev.to iOS app. It is still a work in progress, but getting there!

Design ethose

We will grow to include more native code over time, but for now we are taking the approach of native shell/web views. This approach lost favor early in iOS days, but I believe it is a very valid approach these days. It is inspired by how Basecamp does things. Our tech stack is a bit different, but the ideas are the same.

m.signalvnoise.com/basecamp-3-for-...

signalvnoise.com/posts/3743-hybrid...

signalvnoise.com/posts/3766-hybrid...

youtube.com/watch?v=SWEts0rlezA

By leveraging wkwebviews as much as possible, I think we can make this all pretty awesome and sync up with our web dev work pretty smoothly. And where it makes sense, we can re-implement certain things fully native, or build entirely native features. Life's a journey, not a destination.

Contributing

  1. Fork and clone the project.
  2. Install Carthage. If…

We are almost ready to release our iOS app, written in Swift, for beta. But there are still some bugs and code cleanups to be dealt with. It needs more eyes and work.

Happy coding!

Collapse
 
sduduzog profile image
Sdu

Any plans for native android? or there's no apparent demand for it yet...

Collapse
 
vikasnautiyal profile image
vikas nautiyal

Hi Ben, Its a great opportunity. I would love to contribute. I am full-stack developer with 2+ years experience (rails-javascript).

Collapse
 
tiagodenoronha profile image
Tiago de Noronha

Hey, why not adopt a Cross-Platform approach like Xamarin for example? That way you would get the native apps aswell as a common code base! :)

Collapse
 
ben profile image
Ben Halpern

The app is mostly going to be a shell around the web app interfaces.

So the web app will be the common codebase for the most part. πŸ™‚

Thread Thread
 
tiagodenoronha profile image
Tiago de Noronha

So then my question is why not build a PWA instead of mobile apps? :b

Thread Thread
 
ben profile image
Ben Halpern

We have PWA for Android and it works pretty well. The problem right now with Apple is that some fundamental features are lacking. It's really frustrating.

Our iOS PWA will be available when if/when Apple supports it properly.