checkins help showcase real-world activity at your lounge or retail location.
The Boxpressd Sites SDK includes components that make it easy to display recent customer visits and community engagement directly on your website.
All checkin components automatically use the business context resolved by the BoxpressdProvider.
checkins are primarily a venue-focused feature. Some components may return no data for business types that do not support checkins.
Available Components
| Component | Description |
|---|
BoxpressdCheckinsFeed | Displays a list of recent checkins. |
BoxpressdCheckinCard | Displays a single checkin. |
BoxpressdCheckinsFeed
The feed component displays recent customer activity for the active venue.
Example
import { BoxpressdCheckinsFeed } from "@boxpressd/sites-sdk/checkins"
export default function ActivitySection() {
return (
<BoxpressdCheckinsFeed
limit={10}
/>
)
}
Props
| Prop | Type | Description |
|---|
limit | number | Maximum number of checkins to display. |
layout | "list" | "grid" | Display layout. |
showAvatar | boolean | Display user avatars when available. |
showTimestamp | boolean | Display checkin dates. |
className | string | Additional CSS classes. |
List Layout
<BoxpressdCheckinsFeed
limit={10}
layout="list"
/>
Grid Layout
<BoxpressdCheckinsFeed
limit={6}
layout="grid"
/>
BoxpressdCheckinCard
Display a single checkin.
This component is useful when building custom activity feeds or combining checkins with other content.
Example
import { BoxpressdCheckinCard } from "@boxpressd/sites-sdk/checkins"
<BoxpressdCheckinCard
checkin={checkin}
/>
Props
| Prop | Type | Description |
|---|
checkin | BoxpressdCheckin | checkin data object. |
showAvatar | boolean | Display user avatar. |
showTimestamp | boolean | Display checkin timestamp. |
className | string | Additional CSS classes. |
checkin Object
type BoxpressdCheckin = {
id: string
createdAt: string
note?: string
rating?: number
user: {
id?: string
displayName: string
avatarUrl?: string
}
venue?: {
id: string
name: string
}
}
Username Normalization
The SDK automatically generates a display name using the following fallback order:
display_name → first_name + last initial → "Boxpressd User"
This allows activity feeds to remain user-friendly while respecting privacy settings.
Example: Homepage Activity Feed
<section>
<h2>Recent Lounge Activity</h2>
<BoxpressdCheckinsFeed
limit={5}
/>
</section>
<aside>
<BoxpressdCheckinsFeed
limit={5}
showAvatar={false}
/>
</aside>
<section className="community-feed">
<h2>See Who's Visiting</h2>
<BoxpressdCheckinsFeed
limit={12}
layout="grid"
/>
</section>
Styling
checkin components inherit Boxpressd theme variables.
:root {
--bxp-primary: #d3a966;
--bxp-border-radius: 16px;
}
Custom Styling
<BoxpressdCheckinsFeed
className="recent-checkins"
/>
.recent-checkins {
margin-top: 2rem;
}
Business Awareness
checkin components automatically use the resolved business context.
<BoxpressdCheckinsFeed />
No venue IDs or business IDs are required.
The SDK automatically determines which venue’s activity should be displayed.
Empty States
Some venues may have little or no recent activity.
Components should gracefully handle empty results.
<BoxpressdCheckinsFeed
limit={10}
emptyMessage="No recent checkins yet."
/>
Common Use Cases
Homepage Social Proof
Show visitors that customers actively visit the location.
<BoxpressdCheckinsFeed
limit={5}
/>
Create a dedicated community section highlighting customer engagement.
<BoxpressdCheckinsFeed
limit={20}
layout="grid"
/>
Lounge Dashboard
Display recent visitor activity.
<BoxpressdCheckinsFeed
limit={15}
/>
Privacy Considerations
checkin components are designed for public-facing websites.
The SDK automatically:
- Uses normalized display names
- Avoids exposing sensitive user information
- Respects visibility settings where applicable
Developers should avoid displaying private user data outside of the information returned by the SDK.
Best Practices
- Keep activity feeds recent and concise.
- Display 5–10 items on homepages.
- Use larger feeds on dedicated community pages.
- Combine checkins with events and reviews for stronger social proof.
- Gracefully hide the section when no activity exists.
Next Steps
Continue to:
- Sessions
- Reviews
- Events
- Data Fetching → checkins
These guides cover additional engagement and community-focused features.