
Security News
npm Tooling Bug Incorrectly Marks One-Character Packages as Security Holders
npm confirmed a tooling bug incorrectly marked several one-character packages as security holders and said it was working on a rollback.
@vietmap/tracking-sdk-react
Advanced tools
Fleetwork Tracking SDK — Dashboard & LiveMap components for React
React SDK for Fleetwork GPS Tracking — drop-in Dashboard & LiveMap components, React Query hooks, and framework-agnostic controllers.
📖 Full documentation: https://fleetwork.vn/docs/sdk
npm install @vietmap/tracking-sdk-react
# or
pnpm add @vietmap/tracking-sdk-react
Peer deps: react >= 16.8, react-dom >= 16.8.
import {
FleetworkProvider,
Dashboard,
LiveMap,
Report,
} from '@vietmap/tracking-sdk-react'
import '@vietmap/tracking-sdk-react/styles.css'
export default function App() {
return (
<FleetworkProvider
apiKey="YOUR_API_TOKEN"
apiKeyTilemap="YOUR_VIETMAP_TILE_KEY"
baseUrl="https://live.fleetwork.vn" // optional
locale="vi" // 'vi' | 'en'
>
<Dashboard />
<LiveMap height="600px" memberNameKey="userName" />
<Report />
</FleetworkProvider>
)
}
Full API reference, design guide and live examples are on the docs site.
| Prop | Type | Default | Description |
|---|---|---|---|
apiKey | string | — | Fleetwork API token (X-API-Key) |
apiKeyTilemap | string | — | VietMap tile key |
baseUrl | string | https://live.fleetwork.vn | API base URL, SDK automatically appends /api/v1/ |
locale | 'vi' | 'en' | 'vi' | UI language |
theme | ThemeConfig | — | CSS variable overrides |
<Dashboard />All-in-one dashboard with 5 widgets:
SummaryCards — total distance / travel time / fuel costMemberReport — per-user table with paginationActivityHeatmap — hourly activity for date rangeFuelTracking — fuel consumption chartMonthlyExpenses — category breakdownEach widget can also be imported standalone.
<Report />All-in-one report hub. Landing page with 3 cards → click into a report type:
<Report from={Date.now() - 30 * 86400_000} to={Date.now()} />
Sub-reports can also be used standalone (all accept range, onRangeChange, onBack, onError, pageSize):
TripSummaryReport, TripDetailReport, FuelSummaryReport, FuelDetailReport, ActivityTimeReport.
<LiveMap />Real-time fleet map with:
pollInterval, default 10s)ref exposes flyTo, fitBounds, focusMember, getMembers, getMapmemberNameKey — key inside lastLocation.metadata used as the display name (fallback: first 5 chars of userId)const mapRef = useRef<LiveMapRef>(null)
<LiveMap
ref={mapRef}
pollInterval={5000}
defaultTile="terrain"
onMarkerClick={(m) => console.log(m)}
/>
const { data } = useSummaryCards()
const { data } = useMemberReport()
const { data } = useActivityHeatmap({ from, to })
const { data } = useFuelTracking({ from, to })
const { data } = useMonthlyExpenses({ from, to })
const { data } = useMembers({ pollInterval: 10000 })
const { data } = useMember(userId)
const { data } = useHistoryRoute({ userId, startTime, endTime })
// Reports
const { data } = useTripSummaryReport({ from, to })
const { data } = useTripDetailReport({ from, to })
const { data } = useFuelSummaryReport({ from, to })
const { data } = useFuelDetailReport({ from, to })
const { data } = useActivityTimeReport({ from, to })
Use outside React (Zustand, Redux, Node scripts):
import {
initFleetwork,
DashboardController,
LiveMapController,
ReportController,
} from '@vietmap/tracking-sdk-react'
initFleetwork({ apiKey: '...', apiKeyTilemap: '...' })
const summary = await DashboardController.getSummaryCards()
const members = await LiveMapController.getMembers()
const history = await LiveMapController.getHistoryRoute(userId, from, to)
const tripReport = await ReportController.getTripSummary({ from, to })
Override CSS variables via theme:
<FleetworkProvider
theme={{
colors: { primary: '#2563eb', background: '#0f172a', text: '#f1f5f9' },
borderRadius: 8,
fontFamily: 'Inter, sans-serif',
}}
/>
pnpm install
pnpm build
Outputs dist/tracking-sdk-react.{js,cjs}, dist/index.d.ts, dist/tracking-sdk-react.css.
MIT © VietMap
FAQs
React SDK for DriveConnect — drop-in Dashboard, LiveMap, and Report components with VietmapGL.
The npm package @vietmap/tracking-sdk-react receives a total of 24 weekly downloads. As such, @vietmap/tracking-sdk-react popularity was classified as not popular.
We found that @vietmap/tracking-sdk-react demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
npm confirmed a tooling bug incorrectly marked several one-character packages as security holders and said it was working on a rollback.

Research
/Security News
Newer packages in this compromise use native extensions and .pth loaders to execute JavaScript stealers in developer environments.

Research
Socket found 37 malicious PyPI wheels that abuse Python startup hooks to launch a Bun-powered credential stealer tied to Mini Shai-Hulud/Miasma.