Nextcloud

MentorJan-Christoph Borchardt (jancborchardt)
Project Websitehttps://nextcloud.com
Project Repositoryhttps://github.com/nextcloud
Suitable for Beginners?yes
TagsPHP Javascript jQuery HTML CSS SCSS UX design Front-end SQL MySQL SQLite security decentralization WebDAV Android
Stateaccepted
Applications (1st Choice)0 (0 submitted | 0 in-progress)
Applications (2nd Choice)0 (0 submitted | 0 in-progress)
Code of Conducthttps://nextcloud.com/code-of-conduct/
LicenseGNU Affero General Public License v3 (AGPL-3.0)

Project Description

Nextcloud is an open source system for file sync & sharing, calendar, contacts etc. Very similar to what Dropbox or Google Suite are used for. It consists of a server component with apps for Files, Contacts, Calendar, Mail etc., a desktop client, and mobile apps for Android and iOS.

Contact

If you are interested in this project and have any project-specific questions, you can use our #nextcloud-dev IRC channel

Additional Coaches

We also can offer additional coaches with specific expertise:

  • Camila Ayres (Github & IRC camilasan): desktop client and co-mentor
  • John Molakvoae (Github & IRC skjnldsv): Contacts app, frontend, Vue.js
  • Morris Jobke (Github & IRC MorrisJobke): Javascript & frontend, PHP
  • Julius Härtl (Github & IRC juliushaertl): Javascript & frontend, PHP, Vue.js
  • Roeland Jago Douma (Github & IRC rullzer): desktop client, PHP
  • Maxence Lange (Github @daita, IRC Cult): PHP
  • Tobias Kaminsky (Github @tobiasKaminsky, IRC TobiasK): Android app
  • Ivan Sein (Github & IRC Ivansss): Talk app server & Talk app on iOS
  • Mario Danic (Github @mario, IRC pygi): Talk app on Android
  • Joas Schilling (Github & IRC nickvergessen): Talk app server

Project's Requirements

The server part is mainly programmed in PHP, Javascript, HTML and CSS. The Android app is Java and the iOS app in Objective-C. There are a lot of different aspects to work on in Nextcloud so there’s something fitting for everyone. In general, basic experience with the technologies is already enough to get involved. The more the better, but the community will be happy to help. :) We use Git for all version control, discussions and work is done on Github, and English is the main language.

Server apps are already easy to contribute to with basic HTML+CSS skills. We use SCSS but it’s very easy to get into if you know CSS.
For tests we use PHPUnit for PHP and Karma+Jasmine for Javascript.
The separate apps/plugins are built with different technologies on the Javascript side. We are currently experimenting with moving to Vue.js but currently there are still various frameworks used. See more information in parentheses for each app:

The mobile apps:

And other parts like:


The best place to start is our IRC channel #nextcloud-dev: https://riot.im/app/#/room/#freenode_#nextcloud-dev:matrix.org – our community of contributors hangs out there and will be able to help you with any questions.

To set up your local development environment, there’s documentation for Linux/Ubuntu, Windows (you need to set up a VM with Ubuntu) and macOS

And then to get started with contributing, go through the »good first issues« linked below. Best decide on one of the apps and focus on that. There’s also specific IRC channels for the apps, like #nextcloud-mail, #nextcloud-contacts, #nextcloud-talk and #nextcloud-mobile. :)

Tasks And Features

We use the "good first issue" tag so you can find small bugs and enhancements to start out with :) https://github.com/nextcloud/server/labels/good%20first%20issue

Here are some examples you could tackle:
- Mail app: Ctrl-S for triggering draft save https://github.com/nextcloud/mail/issues/634
- Mail app: Print stylesheet https://github.com/nextcloud/mail/issues/579
- Mail app: »Retry« button on error views https://github.com/nextcloud/mail/issues/314
- Talk app: Notify user when talking while being muted https://github.com/nextcloud/spreed/issues/285
- Good First Issues for the Android app: https://github.com/nextcloud/android/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22

Of course anything that you are missing or see as an issue and would like to work on! Either pick something from the issue tracker or propose something yourself. :)

Comments

You must be logged in to comment on this project.


Pragya Sethi, Monday, June 3, 15:58 UTC

Hi. My name is Pragya. Me and my RGSoC partner Akshala wish to contribute to NextCloud. We were able to join the freenode IRC channel given on the https://nextcloud.com/.
But when we tried joining NextCloud's IRC channel on Riot linked on this page, we got the following error message - You were kicked from #nextcloud-dev by @appservice-irc:matrix.org Reason: IRC error on #nextcloud-dev: err_needreggednick. Can you please guide us on how we proceed?


Jan-Christoph Borchardt, Friday, May 10, 07:58 UTC

Hi Anumeha and jievince! :) The best way to start out is to take a look at the "good first issues" as described in the "Tasks and features" section: https://github.com/nextcloud/server/labels/good%20first%20issue

Setup and introduction is described in the "Project setup" section. And join us in our chat channel #nextcloud-dev: https://riot.im/app/#/room/#freenode_#nextcloud-dev:matrix.org – our community of contributors hangs out there and will be able to help you with any questions. :)


jievince, Tuesday, May 7, 15:55 UTC

Hi, I am interest in this project? How can I start?
@Anumeha, maybe we can form a team.


Anumeha Lakra, Friday, May 3, 14:08 UTC

Anumeha
I would like to work on this project
anumehalakra1@gmail.com


Laura RGSoC, Thursday, May 2, 09:23 UTC

Hi Jan, so happy to see Nextcloud submitted again this year! I'm happy to accept it as a project again ✨We'll be publishing the full list of projects sometime this week, and I'll be in touch after that.