No description
Find a file
renovate[bot] 7bd63653b2
Merge pull request #4947 from nextcloud/renovate/vimeo-psalm-6.x
chore(deps): update dependency vimeo/psalm to ^6.14.2
2025-12-23 14:58:06 +00:00
.github Merge pull request #4943 from nextcloud/renovate/peter-evans-create-pull-request-8.x 2025-12-23 08:47:33 -05:00
.tx chore: post release cleanup 2025-12-02 16:35:29 +01:00
__mocks__/@nextcloud feat: migrate app to Vue 3 2025-08-22 09:39:40 +02:00
appinfo chore: post release cleanup 2025-12-02 16:35:29 +01:00
build fix: convert pre-commit to common js 2024-12-19 19:17:34 +07:00
composer
img
l10n fix(l10n): Update translations from Transifex 2025-12-23 00:27:52 +00:00
lib refactor(psalm): Improve static analysis 2025-12-17 20:41:21 +01:00
LICENSES
src Merge pull request #4928 from nextcloud/fix/use-outline-icon-teams-groups 2025-12-23 07:12:05 -05:00
templates
tests chore(stubs): Add stub for SabrePluginAddEvent 2025-12-17 19:20:20 +01:00
vendor-bin/psalm chore(deps): update dependency vimeo/psalm to ^6.14.2 2025-12-23 14:55:09 +00:00
.git-blame-ignore-revs chore: ignore coding-standard 1.4.0 in git blame 2025-06-20 10:21:28 -04:00
.gitattributes feat: import contacts from files via ocs 2025-09-15 17:21:11 +02:00
.gitignore chore: add psalm 2025-09-16 16:00:27 +02:00
.nextcloudignore
.npmignore
.php-cs-fixer.dist.php
AUTHORS.md
babel.config.cjs
CHANGELOG.md chore: add changelog title 2025-03-13 17:32:00 +01:00
CHANGELOG.md.license chore(reuse): move changelog license header to separate file 2025-03-05 14:35:06 +01:00
composer.json chore(deps): update dependency christophwurst/nextcloud_testing to ^1.1.0 2025-12-23 01:03:35 +00:00
composer.lock chore(deps): update dependency christophwurst/nextcloud_testing to ^1.1.0 2025-12-23 01:03:35 +00:00
COPYING
eslint.config.mjs chore(eslint): bump @nextcloud/eslint-config to v9.0.0-rc.5 (and fix errors) 2025-10-06 09:12:36 +02:00
jest.config.cjs feat: migrate app to Vue 3 2025-08-22 09:39:40 +02:00
krankerl.toml
Makefile
package-lock.json fix(deps): update dependency @nextcloud/dialogs to ^7.2.0 2025-12-23 14:24:37 +00:00
package.json fix(deps): update dependency @nextcloud/dialogs to ^7.2.0 2025-12-23 14:24:37 +00:00
phpunit.xml chore(phpunit): exclude vendor and vendor-bin 2025-09-16 22:49:52 +02:00
playwright.config.js test: add a basic playwright e2e test 2025-07-25 10:31:10 +02:00
psalm.xml refactor(psalm): Improve static analysis 2025-12-17 20:41:21 +01:00
README.md
renovate.json chore(renovate): remove custom commit message templates 2025-10-14 10:40:18 -04:00
REUSE.toml
stylelint.config.cjs chore(styleint): make rtl checks error level 2025-08-05 14:11:24 +02:00
tsconfig.json chore(eslint): bump @nextcloud/eslint-config to v9.0.0-rc.5 (and fix errors) 2025-10-06 09:12:36 +02:00
vite.config.js fix: restore breaking changes of OCA.Contacts.mountContactDetails 2025-09-25 12:51:26 +02:00

Nextcloud Contacts

REUSE status Downloads Code coverage Dependabot status

A contacts app for Nextcloud. Easily sync contacts from various devices with your Nextcloud and edit them online.

This app only support vCard 3.0 and 4.0. This app is compatible with the same browsers as server except IE!

💙 🎉 Why is this so awesome?

  • 🚀 Integration with other Nextcloud apps! Currently Mail and Calendar more to come.
  • 🎉 Never forget a birthday! You can sync birthdays and other recurring events with your Nextcloud Calendar.
  • 👥 Sharing of address books! You want to share your contacts with your friends or coworkers? No problem!
  • 🙈 Were not reinventing the wheel! Based on the great and open SabreDAV library.

Maintainers

🛠️ Installation

The app is distributed through the app store and you can install it right from your Nextcloud installation.

Release tarballs are hosted at https://github.com/nextcloud-releases/contacts/releases.

📡 Support

If you need assistance or want to ask a question about Contacts, you are welcome to ask for support in our forums. If you have found a bug, feel free to open a new Issue on GitHub. Keep in mind, that this repository only manages the frontend. If you find bugs or have problems with the CardDAV-Backend, you should ask the team at Nextcloud server for help!

Could you add XXX property?

This is a complicated answer. We did not invent the way contacts works. We are following the official vCard format. This format include a predefined set of properties that other applications/devices supports too (Android, iOS, Windows, Gnome...). Adding a custom property would just make it compatible with Nextcloud and will not be understood by any other clients and make it complicated for us to ensure its sustainability over time. Long story short, we suggest you use the Notes field to add your custom data :)

If you'd like to join, just go through the issue list and fix some. :)

Build the app

# set up and build for production
composer install
npm ci
npm run build

# install dependencies
composer install
npm ci

# build for dev and watch changes
npm run watch

# build for dev
npm run dev

# build for production with minification
npm run build

Running tests

You can run all front-end tests by using:

# run tests once
npm run test

# run tests continuously after every change
npm run test:watch

✌️ Code of conduct

The Nextcloud community has core values that are shared between all members during conferences, hackweeks and on all interactions in online platforms including Github and Forums. If you contribute, participate or interact with this community, please respect our shared values. 😌

❤️ How to create a pull request

This guide will help you get started:

Commits in this repository follow the Conventional Commits specification.