twenty/packages/twenty-server
Samyak Piya 2651379ccc
Add automatic company logo fetching during workspace creation (#9158)
Closes #9151 

## Description
This PR automatically sets a workspace's logo based on the user's work
email domain during signup. When a user creates a new workspace using
their work email (e.g., @airbnb.com), the system will fetch and set
their company logo from twenty-icons.com as the default workspace logo.

## Implementation Details
- Added a new `CompanyEnrichmentService` to handle company-related data
enrichment
- Created a modular architecture that supports future enrichment
features (e.g., company name, details)
- Integrated with existing work email detection
- Maintains user ability to override the logo later

## Testing

https://github.com/user-attachments/assets/f7855c99-462a-4053-9e52-29649e954275


I tested the following scenarios:
- Signing up with a work email (e.g., @company.com) → Logo is
automatically set
- Signing up with a personal email (e.g., @gmail.com) → No logo is set
- User can still upload a custom logo after automatic setting

## Technical Notes
- Uses existing `isWorkEmail` utility
- Structured for future extensibility (additional company data
enrichment)
- No breaking changes to existing functionality

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-12-22 09:24:27 +01:00
..
@types feat: add integration tests (#6923) 2024-09-20 11:02:52 +02:00
patches Improve demo seed (#7125) 2024-09-18 17:35:08 +02:00
scripts Add no-seed configuration to database:reset (#9112) 2024-12-18 11:44:06 +01:00
src Add automatic company logo fetching during workspace creation (#9158) 2024-12-22 09:24:27 +01:00
test/integration fix test (#9147) 2024-12-19 15:24:49 +01:00
.env.example Fast follows on 0.34 (#9034) 2024-12-12 15:46:48 +00:00
.env.test Fast follows on 0.34 (#9034) 2024-12-12 15:46:48 +00:00
.eslintrc.cjs feat: add integration tests (#6923) 2024-09-20 11:02:52 +02:00
.gitignore feat: add integration tests (#6923) 2024-09-20 11:02:52 +02:00
.prettierignore Migrate to a monorepo structure (#2909) 2023-12-10 18:10:54 +01:00
.prettierrc Migrate to a monorepo structure (#2909) 2023-12-10 18:10:54 +01:00
.swcrc feat: twenty orm for standard and custom objects (#6178) 2024-07-19 18:23:52 +02:00
jest-integration.config.ts Add automatic company logo fetching during workspace creation (#9158) 2024-12-22 09:24:27 +01:00
jest.config.ts Fix all broken CIs (#7439) 2024-10-05 00:23:23 +02:00
nest-cli.json 6653 serverless functions store and use environment variables in serverless function scripts (#7390) 2024-10-03 13:56:17 +02:00
package.json start 0.40.0 canary (#9029) 2024-12-11 19:23:51 +01:00
project.json Add no-seed configuration to database:reset (#9112) 2024-12-18 11:44:06 +01:00
tsconfig.build.json chore: set up twenty-emails config so build isn't needed in development (#3619) 2024-01-29 06:17:12 -03:00
tsconfig.json Add automatic company logo fetching during workspace creation (#9158) 2024-12-22 09:24:27 +01:00
tsconfig.scripts.json feat: add integration tests (#6923) 2024-09-20 11:02:52 +02:00