Skip to content

Conversation

@kirill-dev-pro
Copy link

@kirill-dev-pro kirill-dev-pro commented Apr 6, 2025

Description

This PR adds a feature to share album with whole server at once without need to create share link or manually add people to access list. Albums marked as isPublicInInstance will be visible as shared to everyone in the server

How Has This Been Tested?

Manually tested

  • Create album on account A, make it public, view it on account B
  • Create album on account B, make it public, view it on account A, make sure its read only

Screenshots (if appropriate)

image image image

Checklist:

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation if applicable
  • I have no unrelated changes in the PR.
  • I have confirmed that any new dependencies are strictly necessary.
  • I have written tests for new code (if applicable)
  • I have followed naming conventions/patterns in the surrounding code
  • All code in src/services/ uses repositories implementations for database calls, filesystem operations, etc.
  • All code in src/repositories/ is pretty basic/simple and does not have any immich specific logic (that belongs in src/services/)

… components

- Introduced `isPublicInInstance` boolean field in the album schema and database.
- Updated API specifications, TypeScript types, and DTOs to include the new field.
- Enhanced album sharing functionality in the UI with a new modal for managing shared users and public visibility.
- Modified access control logic to consider the public visibility of albums.
- Added migration script to alter the albums table for the new field.
@jrasm91
Copy link
Member

jrasm91 commented Jul 30, 2025

We talked about this internally, and we decided the way we want to implement something like this is with user groups. We can have an "everyone" user group" and sharing an album with that group would be equivalent to what this PR is trying to enable.

@jrasm91 jrasm91 closed this Jul 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants