Appearance
Nextcloud admins — quick start
This section is for the Nextcloud administrator installing and configuring TeamHub for an organisation.
Before you tell anyone it's installed
Team creation is unrestricted by default
Out of the box, every user on your instance can create teams. Team creation is only restricted once you set a team-creator group — leaving that setting empty means "no restriction", not "admins only".
Creating a team provisions real resources: a Talk room, a Deck board, a calendar, and a folder. Decide this before you announce the app.
Rollout checklist
Work through this in order. Steps 1–3 take about five minutes; step 4 is the one worth thinking about.
Install from the App Store. Settings → Apps → Organisation, find TeamHub, click Download and enable. This is the recommended route — it handles updates for you and needs no shell access.
If your instance has no App Store access, extract the release zip into your
apps/directory and enable it manually instead:bashsudo -u www-data php occ app:enable teamhubEither way, migrations run on first enable. TeamHub creates its own
teamhub_*tables and does not modify any existing Nextcloud table. Full walkthrough: Installation →.Check the prerequisites. Two apps must be enabled:
- Teams (Circles) — a TeamHub team is a Nextcloud circle. Without Circles there is nothing to attach to.
- Team Folders — TeamHub needs it to give each team a shared file space.
Open the settings. Settings → Administration → TeamHub. You'll land on the Team creation tab.
Decide who can create teams. On the Team creation tab, set the team-creator group. Leave it empty only if you genuinely want every user to be able to create teams. See the warning above.
Set the wizard description (optional). Free text shown at the top of the Create new team dialog — useful for a naming convention or a "talk to us first" note. Empty means no description is shown.
Enable the optional modules you want (optional). Integrations tab. Presence and Decisions are both off by default. Enabling Presence adds a Presence module tab here for status types, locations, and holidays.
Install a license (optional). License tab. TeamHub's base app is AGPL and works without one; a license unlocks Advanced projects and the What's new feed. See Licensing →.
Tell your users. Point them at the user quick start — particularly if most of them will be joining teams rather than creating them.
The admin settings tabs
In the order they appear:
| Tab | What it's for |
|---|---|
| Team creation | Who can create teams, team expiration defaults, which invitation types team admins may use, the wizard description, and a read-only Team Folders readiness check |
| Policy | Team templates and policy profiles — what a new team is made of, and what its settings are set to. See Policy profiles and templates → |
| Import/Export | Bulk team import from CSV, and bulk team export. See Import and export → |
| Integrations | Modules (Presence, Decisions, File reviews), IntraVox and RoomVox integration, third-party integration registry |
| My Work | Which sources feed the personal work queue, lead times and caching. See My Work → |
| Reporting | Usage statistics across the instance, and exactly what telemetry contains |
| Maintenance | Configuration repair tools, orphaned-team cleanup, an all-teams grid, and applying a policy profile to an existing team |
| Compliance | Compliance checks, the audit log, and profile-compliance reporting |
| Presence module | Status types, locations, holidays — only visible when Presence is enabled |
| Archive | Archiving and restoring teams |
| License | License status, seat usage, expiry |
There is no Invitations tab
It was folded into Team creation in v4.4.13 — who may create a team and whom they may then invite are one decision. Look for the Allowed invite types section there.
What TeamHub adds to Nextcloud
| Surface | What it is |
|---|---|
/apps/teamhub/ | The team home page — one per team. Defaults to the team's message stream. |
| Settings → Administration → TeamHub | Organisation-wide configuration. |
| Manage team | Member management, resource configuration, settings, integrations, audit log. Opened from the ⋯ menu next to a team in the TeamHub sidebar. Team admins only. |
Database tables teamhub_* | TeamHub's own data: messages, widgets, integrations, audit log. Nextcloud's tables are untouched. |
| TeamHub Integration API | A registry other Nextcloud apps can register against to put their own widgets on a team's home, add menu items to its tab bar, or embed a sandboxed iframe view. Registration is in-process through Nextcloud's DI container — no HTTP round trip. Admin-gated, and visible under Integrations → Registered integrations. |
REST API (/apps/teamhub/api/v1/…) | The same endpoints the TeamHub frontend uses, available to your own tooling. Membership- and role-checked server-side on every call. |
If your organisation builds Nextcloud apps, both surfaces are documented in the Developer guide → — start with the Integration registry.
What TeamHub does not do
- It does not replace Nextcloud Teams (Circles). A TeamHub team is a Nextcloud team — the same circle, the same members, the same membership API.
- It does not store copies of your calendars, files, or Deck boards. Those stay in the apps they belong to. TeamHub presents them.
- It does not add a parallel permission system. If a user can't see a calendar in Nextcloud, they won't see it in TeamHub either.
- It does not transmit anything once licensed. Licensed and trial instances never send telemetry — see Configuration → Telemetry.
Next steps
- Installation → — full installation walkthrough, database requirements, upgrade notes.
- Configuration → — admin settings in detail, Team Folders integration.
- Policy profiles and templates → — what a new team is made of and what its settings are set to; Enforced vs Reported; classification tags; rolling a change out.
- Import and export → — bulk team creation, CSV import and export.
- My Work → — the personal work queue: sources, time windows, caching, category mapping.
- Advanced projects → — what unlocks with a paid licence, background jobs, new tables.
- Licensing → — AGPL base app, licence tiers, seat enforcement.
- Architecture → — design choices, data model, security boundaries.
- Troubleshooting → — common issues, logs, migration errors.