Description
Problems
Creating new entities from search is an uncommon and not very discoverable pattern. We are missing a straightforward way to create an Entity without navigating to a View first.
Solution
Introduce New Entity icon on the top in the left sidebar.
Sidebar changes
https://www.figma.com/design/Mum3wipdZ4tKaf8Qtogfu8/PA---Sidebar?node-id=1325-41045&t=S1zpeBAKcnw8uswI-1
Left sidebar is modified to fit Create Entity button
First open
Open new entity modal and select some database that a user visited last time in Recent Items (if none, then fallback is random database).
Show name and first rich text field. Later user can add more fields. If DB has no rich text, than show name only
Second and next opens:
How Create options work
Create multiple is OFF
Create button: create new entity, close popover, show toast with a link to the entity
Create and open: create new entity, close popover, open new entity in the right panel
Create multiple is ON
Create button: create new entity, refresh popover to see empty state, show toast with a link to the entity
Create and open: hide this button
Database change selector
When new database is selected, we show different fields configured for this selected database.
If I typed Name (at least) and switched database, Name text should remain.
Maybe we can keep other fields filled based on FieldName+Type? Data loss is painful…
Shortcuts
C is a good shortcut for quick add.
Return is used to jump to next field e.g. from Name input to Rich text
Tab works for all units, like Assignee , State etc
Esc is used to close Create pop-up. If any changes were made, show discard confirmation modal
Cmd + Enter - create new entity
❓ Cmd + Shift + Enter - create and open new entity (in Linear: Cmd + Option + Enter)
Who can setup fields
❓ There are two options, we should decide what is best:
Creator (in space where database lives) can setup visible fields in this popover and it work for all users (fields are per-database)
Every user who can create entity in this database can setup visible fields and they will be saved per-user in this case.
Many fields will look like this:
Fields list:
Exclude:
Discard confirmation
When I added any content to name or rich text field, and click X, we show a confirmation popup.
Name field generated via formula
In this case name is readonly and has some text like "Name generated via formula".
Focus should be on first field after name in this case
🦄 We can parse formula and always show fields that participate in this formula in UI (maybe before other fields?)
Notes
If a User doesn't have create capability for any DB, we hide the + button.
Default pop-up height is 360px, minimal height is 280px (for cases were only name and/or units are displayed without rich text fields). Maximum height is 560px (for cases with 2+ Rich text fields and units). After max height is reached, scroll appears
❓ Maybe we should also replace New button on top right corner in views, now it shows forms (we should collect stats to make a decision).
❓ Maybe make Name required here?
Technical details
If we reuse Form View for this, we will
Archive
Introduce a permanent + button at the bottom of the sidebar:
+ Sidebar items (Admins)
Space → goes to the bottom of Spaces ▸
Smart Section → goes to the bottom of the sidebar but above Hidden for me ▸
🦄 Section if we allow custom sections
+ Entities (everyone)
Step 1. Pick a DB
only those for which a User has create capability are available
recently chosen ones go first
searchable for keyboard-only experience
Step 2. Create an Entity
❓ Possible approaches:
Create an Entity and immediately navigate to its Entity View with the focus in Name so the user can immediately start typing.
straightforward for the user
easy to implement
Rely on Forms, possibly create a default one for each DB
customizable workflow
enforceable required Fields
❓ Could we get the best of both worlds? Open Entity View by default but a Creator can configure a default Form instead?
BEST?: Rely on pinned fields in Entity View design and create a popup that will work like in Linear. Main question is what fields to show.
allow confiпure this add screen for Creator. We have pinned fields mechanism that is easy to use here.
Minor sidebar rearrangements
The top left menu is now dedicated exclusively to account stuff:
navigate to your profile
switch workspaces
logout
The bottom of the sidebar (not pinned) is dedicated to auxiliary things:
Templates 👑
Workspace Map 👑
Import 👑
Activity Log
Trash
The pinned bottom is for:
Shortcuts
C is a good shortcut for quick add.
Refs
Notion
Linear
Attio
ClickUp