Skip to content

Feat/profile editor#910

Open
sosweetham wants to merge 2 commits intomainfrom
feat/profile-editor
Open

Feat/profile editor#910
sosweetham wants to merge 2 commits intomainfrom
feat/profile-editor

Conversation

@sosweetham
Copy link
Member

Description of change

adds a professional profile editor

Issue Number

closes #871

Type of change

  • New (a change which implements a new feature)

How the change has been tested

manual

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

@sosweetham sosweetham requested a review from coodos as a code owner March 10, 2026 17:20
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 10, 2026

Important

Review skipped

Too many files!

This PR contains 238 files, which is 88 over the limit of 150.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 11575bba-5e14-4009-883f-012f39976ed8

📥 Commits

Reviewing files that changed from the base of the PR and between 7d302aa and 3fed651.

📒 Files selected for processing (238)
  • packages/auth/package.json
  • packages/auth/src/auth-offer.ts
  • packages/auth/src/guard.ts
  • packages/auth/src/index.ts
  • packages/auth/src/jwt.ts
  • packages/auth/src/middleware.ts
  • packages/auth/src/types.ts
  • packages/auth/src/verify-login.ts
  • packages/auth/tsconfig.json
  • packages/ui/.gitignore
  • packages/ui/.prettierignore
  • packages/ui/.prettierrc
  • packages/ui/components.json
  • packages/ui/eslint.config.js
  • packages/ui/package.json
  • packages/ui/src/app.css
  • packages/ui/src/lib/components/ui/accordion/accordion-content.svelte
  • packages/ui/src/lib/components/ui/accordion/accordion-item.svelte
  • packages/ui/src/lib/components/ui/accordion/accordion-trigger.svelte
  • packages/ui/src/lib/components/ui/accordion/accordion.svelte
  • packages/ui/src/lib/components/ui/accordion/index.ts
  • packages/ui/src/lib/components/ui/avatar/avatar-fallback.svelte
  • packages/ui/src/lib/components/ui/avatar/avatar-image.svelte
  • packages/ui/src/lib/components/ui/avatar/avatar.svelte
  • packages/ui/src/lib/components/ui/avatar/index.ts
  • packages/ui/src/lib/components/ui/badge/badge.svelte
  • packages/ui/src/lib/components/ui/badge/index.ts
  • packages/ui/src/lib/components/ui/button/button.svelte
  • packages/ui/src/lib/components/ui/button/index.ts
  • packages/ui/src/lib/components/ui/card/card-action.svelte
  • packages/ui/src/lib/components/ui/card/card-content.svelte
  • packages/ui/src/lib/components/ui/card/card-description.svelte
  • packages/ui/src/lib/components/ui/card/card-footer.svelte
  • packages/ui/src/lib/components/ui/card/card-header.svelte
  • packages/ui/src/lib/components/ui/card/card-title.svelte
  • packages/ui/src/lib/components/ui/card/card.svelte
  • packages/ui/src/lib/components/ui/card/index.ts
  • packages/ui/src/lib/components/ui/carousel/carousel-content.svelte
  • packages/ui/src/lib/components/ui/carousel/carousel-item.svelte
  • packages/ui/src/lib/components/ui/carousel/carousel-next.svelte
  • packages/ui/src/lib/components/ui/carousel/carousel-previous.svelte
  • packages/ui/src/lib/components/ui/carousel/carousel.svelte
  • packages/ui/src/lib/components/ui/carousel/context.ts
  • packages/ui/src/lib/components/ui/carousel/index.ts
  • packages/ui/src/lib/components/ui/dialog/dialog-close.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-content.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-description.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-footer.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-header.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-overlay.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-portal.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-title.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog-trigger.svelte
  • packages/ui/src/lib/components/ui/dialog/dialog.svelte
  • packages/ui/src/lib/components/ui/dialog/index.ts
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-group.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte
  • packages/ui/src/lib/components/ui/dropdown-menu/index.ts
  • packages/ui/src/lib/components/ui/field/field-content.svelte
  • packages/ui/src/lib/components/ui/field/field-description.svelte
  • packages/ui/src/lib/components/ui/field/field-error.svelte
  • packages/ui/src/lib/components/ui/field/field-group.svelte
  • packages/ui/src/lib/components/ui/field/field-label.svelte
  • packages/ui/src/lib/components/ui/field/field-legend.svelte
  • packages/ui/src/lib/components/ui/field/field-separator.svelte
  • packages/ui/src/lib/components/ui/field/field-set.svelte
  • packages/ui/src/lib/components/ui/field/field-title.svelte
  • packages/ui/src/lib/components/ui/field/field.svelte
  • packages/ui/src/lib/components/ui/field/index.ts
  • packages/ui/src/lib/components/ui/form/form-button.svelte
  • packages/ui/src/lib/components/ui/form/form-description.svelte
  • packages/ui/src/lib/components/ui/form/form-element-field.svelte
  • packages/ui/src/lib/components/ui/form/form-field-errors.svelte
  • packages/ui/src/lib/components/ui/form/form-field.svelte
  • packages/ui/src/lib/components/ui/form/form-fieldset.svelte
  • packages/ui/src/lib/components/ui/form/form-label.svelte
  • packages/ui/src/lib/components/ui/form/form-legend.svelte
  • packages/ui/src/lib/components/ui/form/index.ts
  • packages/ui/src/lib/components/ui/input/index.ts
  • packages/ui/src/lib/components/ui/input/input.svelte
  • packages/ui/src/lib/components/ui/label/index.ts
  • packages/ui/src/lib/components/ui/label/label.svelte
  • packages/ui/src/lib/components/ui/pagination/index.ts
  • packages/ui/src/lib/components/ui/pagination/pagination-content.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination-ellipsis.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination-item.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination-link.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination-next-button.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination-prev-button.svelte
  • packages/ui/src/lib/components/ui/pagination/pagination.svelte
  • packages/ui/src/lib/components/ui/progress/index.ts
  • packages/ui/src/lib/components/ui/progress/progress.svelte
  • packages/ui/src/lib/components/ui/select/index.ts
  • packages/ui/src/lib/components/ui/select/select-content.svelte
  • packages/ui/src/lib/components/ui/select/select-group-heading.svelte
  • packages/ui/src/lib/components/ui/select/select-group.svelte
  • packages/ui/src/lib/components/ui/select/select-item.svelte
  • packages/ui/src/lib/components/ui/select/select-label.svelte
  • packages/ui/src/lib/components/ui/select/select-portal.svelte
  • packages/ui/src/lib/components/ui/select/select-scroll-down-button.svelte
  • packages/ui/src/lib/components/ui/select/select-scroll-up-button.svelte
  • packages/ui/src/lib/components/ui/select/select-separator.svelte
  • packages/ui/src/lib/components/ui/select/select-trigger.svelte
  • packages/ui/src/lib/components/ui/select/select.svelte
  • packages/ui/src/lib/components/ui/separator/index.ts
  • packages/ui/src/lib/components/ui/separator/separator.svelte
  • packages/ui/src/lib/components/ui/sheet/index.ts
  • packages/ui/src/lib/components/ui/sheet/sheet-close.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-content.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-description.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-footer.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-header.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-overlay.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-title.svelte
  • packages/ui/src/lib/components/ui/sheet/sheet-trigger.svelte
  • packages/ui/src/lib/components/ui/sidebar/constants.ts
  • packages/ui/src/lib/components/ui/sidebar/context.svelte.ts
  • packages/ui/src/lib/components/ui/sidebar/index.ts
  • packages/ui/src/lib/components/ui/sidebar/is-mobile.svelte.ts
  • packages/ui/src/lib/components/ui/sidebar/sidebar-content.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-footer.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-group-action.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-group-content.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-group-label.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-group.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-header.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-input.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-inset.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-action.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-badge.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-button.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-item.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-skeleton.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-sub-button.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-sub-item.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu-sub.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-menu.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-provider.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-rail.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-separator.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar-trigger.svelte
  • packages/ui/src/lib/components/ui/sidebar/sidebar.svelte
  • packages/ui/src/lib/components/ui/skeleton/index.ts
  • packages/ui/src/lib/components/ui/skeleton/skeleton.svelte
  • packages/ui/src/lib/components/ui/sonner/index.ts
  • packages/ui/src/lib/components/ui/sonner/sonner.svelte
  • packages/ui/src/lib/components/ui/table/index.ts
  • packages/ui/src/lib/components/ui/table/table-body.svelte
  • packages/ui/src/lib/components/ui/table/table-caption.svelte
  • packages/ui/src/lib/components/ui/table/table-cell.svelte
  • packages/ui/src/lib/components/ui/table/table-footer.svelte
  • packages/ui/src/lib/components/ui/table/table-head.svelte
  • packages/ui/src/lib/components/ui/table/table-header.svelte
  • packages/ui/src/lib/components/ui/table/table-row.svelte
  • packages/ui/src/lib/components/ui/table/table.svelte
  • packages/ui/src/lib/components/ui/tabs/index.ts
  • packages/ui/src/lib/components/ui/tabs/tabs-content.svelte
  • packages/ui/src/lib/components/ui/tabs/tabs-list.svelte
  • packages/ui/src/lib/components/ui/tabs/tabs-trigger.svelte
  • packages/ui/src/lib/components/ui/tabs/tabs.svelte
  • packages/ui/src/lib/components/ui/textarea/index.ts
  • packages/ui/src/lib/components/ui/textarea/textarea.svelte
  • packages/ui/src/lib/components/ui/tooltip/index.ts
  • packages/ui/src/lib/components/ui/tooltip/tooltip-content.svelte
  • packages/ui/src/lib/components/ui/tooltip/tooltip-trigger.svelte
  • packages/ui/src/lib/index.ts
  • packages/ui/src/lib/utils.ts
  • packages/ui/src/routes/+page.svelte
  • packages/ui/svelte.config.js
  • packages/ui/tsconfig.json
  • platforms/file-manager/api/src/middleware/auth.ts
  • platforms/profile-editor/api/package.json
  • platforms/profile-editor/api/src/controllers/AuthController.ts
  • platforms/profile-editor/api/src/controllers/DiscoveryController.ts
  • platforms/profile-editor/api/src/controllers/FileProxyController.ts
  • platforms/profile-editor/api/src/controllers/ProfileController.ts
  • platforms/profile-editor/api/src/controllers/WebhookController.ts
  • platforms/profile-editor/api/src/database/data-source.ts
  • platforms/profile-editor/api/src/database/entities/Session.ts
  • platforms/profile-editor/api/src/database/entities/User.ts
  • platforms/profile-editor/api/src/database/migrations/1773143278029-InitialSchema.ts
  • platforms/profile-editor/api/src/index.ts
  • platforms/profile-editor/api/src/middleware/auth.ts
  • platforms/profile-editor/api/src/services/EVaultProfileService.ts
  • platforms/profile-editor/api/src/services/EVaultSyncService.ts
  • platforms/profile-editor/api/src/services/RegistryService.ts
  • platforms/profile-editor/api/src/services/UserSearchService.ts
  • platforms/profile-editor/api/src/types/express.d.ts
  • platforms/profile-editor/api/src/types/profile.ts
  • platforms/profile-editor/api/src/utils/file-proxy.ts
  • platforms/profile-editor/api/src/web3adapter/mappings/professional-profile.mapping.json
  • platforms/profile-editor/api/src/web3adapter/mappings/user.mapping.json
  • platforms/profile-editor/api/src/web3adapter/watchers/subscriber.ts
  • platforms/profile-editor/api/tsconfig.json
  • platforms/profile-editor/client/package.json
  • platforms/profile-editor/client/src/app.css
  • platforms/profile-editor/client/src/app.html
  • platforms/profile-editor/client/src/lib/components/layout/Header.svelte
  • platforms/profile-editor/client/src/lib/components/layout/Sidebar.svelte
  • platforms/profile-editor/client/src/lib/components/profile/AboutSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/ContactSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/DocumentsSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/EducationSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/ExperienceSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/ProfileCard.svelte
  • platforms/profile-editor/client/src/lib/components/profile/ProfileHeader.svelte
  • platforms/profile-editor/client/src/lib/components/profile/SkillsSection.svelte
  • platforms/profile-editor/client/src/lib/components/profile/SocialLinksSection.svelte
  • platforms/profile-editor/client/src/lib/stores/auth.ts
  • platforms/profile-editor/client/src/lib/stores/discovery.ts
  • platforms/profile-editor/client/src/lib/stores/profile.ts
  • platforms/profile-editor/client/src/lib/utils/axios.ts
  • platforms/profile-editor/client/src/lib/utils/file-manager.ts
  • platforms/profile-editor/client/src/routes/(auth)/auth/+page.svelte
  • platforms/profile-editor/client/src/routes/(auth)/deeplink-login/+page.svelte
  • platforms/profile-editor/client/src/routes/(protected)/+layout.svelte
  • platforms/profile-editor/client/src/routes/(protected)/discover/+page.svelte
  • platforms/profile-editor/client/src/routes/(protected)/profile/+page.svelte
  • platforms/profile-editor/client/src/routes/(protected)/profile/[ename]/+page.svelte
  • platforms/profile-editor/client/src/routes/(protected)/profile/[ename]/+page.ts
  • platforms/profile-editor/client/src/routes/(protected)/settings/+page.svelte
  • platforms/profile-editor/client/src/routes/+layout.svelte
  • platforms/profile-editor/client/src/routes/+layout.ts
  • platforms/profile-editor/client/src/routes/+page.svelte
  • platforms/profile-editor/client/svelte.config.js
  • platforms/profile-editor/client/tsconfig.json
  • platforms/profile-editor/client/vite.config.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/profile-editor

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feature] (Control Panel): View Binding Docs

1 participant