Conversation
There was a problem hiding this comment.
Pull request overview
This PR expands project creation/configuration to support additional project metadata (description, cover image, emoji/icon, lead, and network visibility) and updates the UI create modal/settings page to use consistent controls.
Changes:
- Extend project create API (frontend types + backend handler) to accept additional optional fields and apply them during creation.
- Redesign
CreateProjectModalto support cover image, icon selection, project lead selection, and network visibility. - Add a unique index on
user_favoritesto prevent duplicate favorites per user/entity.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| ui/src/pages/SettingsPage.tsx | Uses reusable ProjectNetworkSelect and derives network state from persisted guest_view_all_features. |
| ui/src/components/ProjectNetworkSelect.tsx | New reusable “Network” select component. |
| ui/src/components/ProjectLeadSelect.tsx | New reusable “Project Lead” select component for workspace members. |
| ui/src/components/CreateProjectModal.tsx | Redesigned create modal to include cover/icon modals, network + lead fields, and expanded payload. |
| ui/src/api/types.ts | Extends CreateProjectRequest with new optional project metadata fields. |
| api/migrations/000001_init_schema.up.sql | Adds unique index on (user_id, entity_type, entity_identifier) for favorites. |
| api/internal/handler/project.go | Accepts new create fields and applies them via the same update logic after creation. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Member
|
well done @martian56 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces significant enhancements to project creation and configuration, both in the backend and frontend. The main updates expand the project creation API and UI to support additional metadata and settings, such as description, cover image, emoji, icon, project lead, and network visibility. The UI now provides a more flexible and feature-rich modal for creating projects, and the backend ensures these new fields are handled consistently. Additionally, a unique database index is added to prevent duplicate user favorites.
Backend enhancements to project creation and metadata:
The
CreateProjectRequestAPI and theProjectHandler.Createhandler now accept and process new optional fields:description,timezone,cover_image,emoji,icon_prop,project_lead_id,default_assignee_id, and several feature toggles (such as guest access and module/cycle/page views). These fields are immediately applied during project creation using the same logic as the update flow, ensuring consistency. [1] [2] [3]A unique index (
idx_user_fav_entity) is added to theuser_favoritestable to prevent users from favoriting the same entity multiple times.Frontend improvements to project creation UI:
The
CreateProjectModalnow supports selecting a cover image, project icon (emoji or custom icon), project lead, and network visibility (public/private). The modal has been redesigned for better usability, including new components for selecting project lead and network. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]Two new reusable components,
ProjectLeadSelectandProjectNetworkSelect, are introduced for selecting the project lead from workspace members and toggling project visibility, respectively. [1] [2]Settings page updates:
Closes #25