UseBatteryStatusDemo
guarahooks/use-battery-status-demoFreeExample
use-battery-status's hook in action.
Install it
npx shadcn@latest add https://guarahooks.com/r/use-battery-status-demo.jsonSource
1'use client';23import React from 'react';45import { Badge } from '@/components/ui/badge';6import {7 Card,8 CardContent,9 CardDescription,10 CardFooter,11 CardHeader,12 CardTitle,13} from '@/components/ui/card';1415import { cn } from '@/lib/utils';1617import { useBatteryStatus } from '@/hooks/guarahooks/use-battery-status';1819export default function UseBatteryStatusDemo() {20 const { supported, level, charging, chargingTime, dischargingTime } =21 useBatteryStatus();2223 if (!supported) {24 return (25 <Card className="max-w-sm w-full">26 <CardHeader>27 <CardTitle>useBatteryStatus</CardTitle>28 <CardDescription>29 Battery Status API is not supported in this browser.30 </CardDescription>31 </CardHeader>32 </Card>33 );34 }3536 const percentage = Math.round(level * 100);3738 return (39 <Card className="max-w-sm w-full">40 <CardHeader>41 <CardTitle>useBatteryStatus</CardTitle>42 <CardDescription>43 Live system battery status using the Battery Status API.44 </CardDescription>45 </CardHeader>46 <CardContent className="space-y-4">47 <div>48 <span className="font-medium">Level:</span>{' '}49 <span className="text-lg font-semibold">{percentage}%</span>50 </div>51 <div className="w-full">52 <progress53 className="w-full h-2 rounded bg-gray-200"54 value={percentage}55 max={100}56 />57 </div>58 <Badge59 variant="secondary"60 className={cn(61 'w-fit',62 charging63 ? 'bg-green-500/30 border-green-500 text-green-300'64 : 'bg-red-500/30 border-red-500 text-red-300',65 )}66 >67 {charging ? 'Charging' : 'Discharging'}68 </Badge>69 <CardFooter>70 <p className="text-sm text-muted-foreground">71 Charging Time: {chargingTime}s, Discharging Time: {dischargingTime}s72 </p>73 </CardFooter>74 </CardContent>75 </Card>76 );77}
What it pulls in
Other registry items
Files it writes
More from guarahooks
All 100 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| UseAbortControllerDemouse-abort-controller-demo | guarahooks | Examples | Free | no deps | |
| UseArrayStateDemouse-array-state-demo | guarahooks | Examples | Free | no deps | |
| UseAxiosDemouse-axios-demo | guarahooks | Examples | Free | no deps | |
| UseBetterAuthDemouse-better-auth-demo | guarahooks | Examples | Free | no deps | |
| UseClickOutsideDemouse-click-outside-demo | guarahooks | Examples | Free | no deps | |
| UseConfirmDemouse-confirm-demo | guarahooks | Examples | Free | no deps | |
| UseCookieDemouse-cookie-demo | guarahooks | Examples | Free | no deps | |
| UseCopyToClipboardDemouse-copy-to-clipboard-demo | guarahooks | Examples | Free | no deps |
