diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 103 |
1 files changed, 28 insertions, 75 deletions
diff --git a/README.md b/README.md index f955bdb10f3..5813da701f7 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,32 @@ +<!-- + - SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors + - SPDX-FileCopyrightText: 2013-2016 ownCloud, Inc. + - SPDX-License-Identifier: AGPL-3.0-or-later +--> # Nextcloud Server β -[](https://scrutinizer-ci.com/g/nextcloud/server/?branch=master) +[](https://api.reuse.software/info/github.com/nextcloud/server) [](https://codecov.io/gh/nextcloud/server) [](https://bestpractices.coreinfrastructure.org/projects/209) +[](https://contribute.design/nextcloud/server) **A safe home for all your data.** - + ## Why is this so awesome? π€© -* π **Access your Data** You can store your files, contacts, calendars and more on a server of your choosing. -* π **Sync your Data** You keep your files, contacts, calendars and more synchronized amongst your devices. +* π **Access your Data** You can store your files, contacts, calendars, and more on a server of your choosing. +* π **Sync your Data** You keep your files, contacts, calendars, and more synchronized amongst your devices. * π **Share your Data** β¦by giving others access to the stuff you want them to see or to collaborate with. * π **Expandable with hundreds of Apps** ...like [Calendar](https://github.com/nextcloud/calendar), [Contacts](https://github.com/nextcloud/contacts), [Mail](https://github.com/nextcloud/mail), [Video Chat](https://github.com/nextcloud/spreed) and all those you can discover in our [App Store](https://apps.nextcloud.com) * π **Security** with our encryption mechanisms, [HackerOne bounty program](https://hackerone.com/nextcloud) and two-factor authentication. -You want to learn more about how you can use Nextcloud to access, share and protect your files, calendars, contacts, communication & more at home and at your organization? [**Learn about all our Features**](https://nextcloud.com/athome/). +Do you want to learn more about how you can use Nextcloud to access, share, and protect your files, calendars, contacts, communication & more at home and in your organization? [**Learn about all our Features**](https://nextcloud.com/athome/). ## Get your Nextcloud π - βοΈ [**Simply sign up**](https://nextcloud.com/signup/) at one of our providers either through our website or through the apps directly. -- π₯ [**Install** a server by yourself](https://nextcloud.com/install/#instructions-server) on your own hardware or by using one of our ready to use **appliances** +- π₯ [**Install** a server by yourself](https://nextcloud.com/install/#instructions-server) on your hardware or by using one of our ready-to-use **appliances** - π¦ Buy one of the [awesome **devices** coming with a preinstalled Nextcloud](https://nextcloud.com/devices/) - π’ Find a [service **provider**](https://nextcloud.com/providers/) who hosts Nextcloud for you or your company @@ -38,7 +44,7 @@ You can also [get support for Nextcloud](https://nextcloud.com/support)! ## Join the team πͺ -There are many ways to contribute, of which development is only one! Find out [how to get involved](https://nextcloud.com/contribute/), including as translator, designer, tester, helping others and much more! π +There are many ways to contribute, of which development is only one! Find out [how to get involved](https://nextcloud.com/contribute/), including as a translator, designer, tester, helping others, and much more! π ### Development setup π©βπ» @@ -47,7 +53,7 @@ There are many ways to contribute, of which development is only one! Find out [h 2. π [Pick a good first issue](https://github.com/nextcloud/server/labels/good%20first%20issue) 3. π©βπ§ Create a branch and make your changes. Remember to sign off your commits using `git commit -sm "Your commit message"` 4. β¬ Create a [pull request](https://opensource.guide/how-to-contribute/#opening-a-pull-request) and `@mention` the people from the issue to review -5. π Fix things that come up during review +5. π Fix things that come up during a review 6. π Wait for it to get merged! Third-party components are handled as git submodules which have to be initialized first. So aside from the regular git checkout invoking `git submodule update --init` or a similar command is needed, for details see Git documentation. @@ -56,89 +62,36 @@ Several apps that are included by default in regular releases such as [First run Otherwise, git checkouts can be handled the same as release archives, by using the `stable*` branches. Note they should never be used on production systems. -### Working with front-end code π - -#### Building - -We are moving more and more towards using Vue.js in the frontend, starting with Settings. For building the code on changes, use these terminal commands in the root folder: - -```bash -# install dependencies -make dev-setup - -# build for development -make build-js - -# build for development and watch edits -make watch-js - -# build for production with minification -make build-js-production -``` - -#### Committing changes - -**When making changes, also commit the compiled files!** - -We still use Handlebars templates some places in Files and Settings. We will replace these step-by-step with Vue.js, but in the meantime you need to compile them separately. - -If you donβt have Handlebars installed yet, you can do it with this terminal command: -```bash -sudo npm install -g handlebars -``` - -Then inside the root folder of your local Nextcloud development installation, run this command in the terminal every time you changed a `.handlebars` file to compile it: -```bash -./build/compile-handlebars-templates.sh -``` - -Before checking in JS changes, make sure to also build for production: -```bash -make build-js-production -``` -Then add the compiled files for committing. - -To save some time, to only rebuild for a specific app, use the following and replace the module with the app name: -```bash -MODULE=user_status make build-js-production -``` - -Please note that if you used `make build-js` or `make watch-js` before, you'll notice that a lot of files were marked as changed, so might need to clear the workspace first. - -### Working with back-end code π - -When changing back-end PHP code, in general no additional steps are needed before checking in. - -However, if new files were created, you will need to run the following command to update the autoloader files: -```bash -build/autoloaderchecker.sh -``` - -After that, please also include the autoloader file changes in your commits. ### Tools we use π - [π BrowserStack](https://browserstack.com) for cross-browser testing - [π WAVE](https://wave.webaim.org/extension/) for accessibility testing -- [π¨ Lighthouse](https://developers.google.com/web/tools/lighthouse/) for testing of performance, accessibility and more +- [π¨ Lighthouse](https://developers.google.com/web/tools/lighthouse/) for testing performance, accessibility, and more + +#### Helpful bots at GitHub :robot: + +- Comment on a pull request with `/update-3rdparty` to update the 3rd party submodule. It will update to the last commit of the 3rd party branch named like the PR target. + +#### Ignore code style updates in git blame +`git config blame.ignoreRevsFile .git-blame-ignore-revs` ## Contribution guidelines π -All contributions to this repository from June, 16 2016 on are considered to be +All contributions to this repository from June 16, 2016, and onward are considered to be licensed under the AGPLv3 or any later version. Nextcloud doesn't require a CLA (Contributor License Agreement). -The copyright belongs to all the individual contributors. Therefore we recommend -that every contributor adds following line to the header of a file, if they -changed it substantially: +The copyright belongs to all the individual contributors. +Therefore we recommend that every contributor adds the following line to the [AUTHORS](AUTHORS) file if they made substantial changes to the code: ``` -@copyright Copyright (c) <year>, <your name> (<your email address>) +- <your name> <your email address> ``` -Please read the [Code of Conduct](https://nextcloud.com/community/code-of-conduct/). This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere, and to explain how together we can strengthen and support each other. +Please read the [Code of Conduct](https://nextcloud.com/community/code-of-conduct/). This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere and to explain how together we can strengthen and support each other. Please review the [guidelines for contributing](.github/CONTRIBUTING.md) to this repository. -More information how to contribute: [https://nextcloud.com/contribute/](https://nextcloud.com/contribute/) +More information on how to contribute: [https://nextcloud.com/contribute/](https://nextcloud.com/contribute/) |