diff --git a/app/client/components/create-repository-form.tsx b/app/client/components/create-repository-form.tsx
index 98827f6..ad013db 100644
--- a/app/client/components/create-repository-form.tsx
+++ b/app/client/components/create-repository-form.tsx
@@ -280,7 +280,7 @@ export const CreateRepositoryForm = ({
- Important: Host Mount Required
+ Important: Host mount required
When selecting a custom path, ensure it is mounted from the host machine into the container.
@@ -294,17 +294,13 @@ export const CreateRepositoryForm = ({
-
-
- Cancel
-
+ Cancel
{
setShowPathBrowser(true);
setShowPathWarning(false);
}}
>
-
I Understand, Continue
diff --git a/app/client/components/restore-form.tsx b/app/client/components/restore-form.tsx
index b76721e..1891da8 100644
--- a/app/client/components/restore-form.tsx
+++ b/app/client/components/restore-form.tsx
@@ -2,7 +2,7 @@ import { useCallback, useState } from "react";
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
import { useNavigate } from "react-router";
import { toast } from "sonner";
-import { ChevronDown, FileIcon, FolderOpen, RotateCcw, X } from "lucide-react";
+import { ChevronDown, FileIcon, FolderOpen, RotateCcw } from "lucide-react";
import { Button } from "~/client/components/ui/button";
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "~/client/components/ui/card";
import { Checkbox } from "~/client/components/ui/checkbox";
@@ -161,7 +161,6 @@ export function RestoreForm({ snapshot, repositoryName, snapshotId, returnPath }
@@ -255,11 +254,9 @@ export const ScheduleNotificationsConfig = ({ scheduleId, destinations }: Props)
{hasChanges && (
-
Cancel
-
Save changes
diff --git a/app/client/modules/backups/components/schedule-summary.tsx b/app/client/modules/backups/components/schedule-summary.tsx
index 09902f0..8bdd3b9 100644
--- a/app/client/modules/backups/components/schedule-summary.tsx
+++ b/app/client/modules/backups/components/schedule-summary.tsx
@@ -207,15 +207,11 @@ export const ScheduleSummary = (props: Props) => {
-
-
- Cancel
-
+
Cancel
-
Delete schedule
diff --git a/app/client/modules/backups/components/snapshot-file-browser.tsx b/app/client/modules/backups/components/snapshot-file-browser.tsx
index 94f9555..40804f1 100644
--- a/app/client/modules/backups/components/snapshot-file-browser.tsx
+++ b/app/client/modules/backups/components/snapshot-file-browser.tsx
@@ -98,7 +98,7 @@ export const SnapshotFileBrowser = (props: Props) => {
}
className={buttonVariants({ variant: "primary", size: "sm" })}
>
-
+
Restore
{onDeleteSnapshot && (
diff --git a/app/client/modules/backups/routes/backup-details.tsx b/app/client/modules/backups/routes/backup-details.tsx
index b7d518f..4804c4b 100644
--- a/app/client/modules/backups/routes/backup-details.tsx
+++ b/app/client/modules/backups/routes/backup-details.tsx
@@ -2,7 +2,7 @@ import { useId, useState } from "react";
import { useQuery, useMutation } from "@tanstack/react-query";
import { redirect, useNavigate } from "react-router";
import { toast } from "sonner";
-import { Save, Trash2, X } from "lucide-react";
+import { Save, X } from "lucide-react";
import { Button } from "~/client/components/ui/button";
import {
AlertDialog,
@@ -269,16 +269,12 @@ export default function ScheduleDetailsPage({ params, loaderData }: Route.Compon
-
-
- Cancel
-
+ Cancel
-
Delete snapshot
diff --git a/app/client/modules/notifications/routes/create-notification.tsx b/app/client/modules/notifications/routes/create-notification.tsx
index 1e206d9..72268a6 100644
--- a/app/client/modules/notifications/routes/create-notification.tsx
+++ b/app/client/modules/notifications/routes/create-notification.tsx
@@ -1,5 +1,5 @@
import { useMutation } from "@tanstack/react-query";
-import { Bell, Plus, X } from "lucide-react";
+import { Bell, Plus } from "lucide-react";
import { useId } from "react";
import { useNavigate } from "react-router";
import { toast } from "sonner";
@@ -65,7 +65,6 @@ export default function CreateNotification() {
navigate("/notifications")}>
-
Cancel
diff --git a/app/client/modules/repositories/routes/create-repository.tsx b/app/client/modules/repositories/routes/create-repository.tsx
index b4df970..be1b483 100644
--- a/app/client/modules/repositories/routes/create-repository.tsx
+++ b/app/client/modules/repositories/routes/create-repository.tsx
@@ -1,5 +1,5 @@
import { useMutation } from "@tanstack/react-query";
-import { Database, Plus, X } from "lucide-react";
+import { Database, Plus } from "lucide-react";
import { useId } from "react";
import { useNavigate } from "react-router";
import { toast } from "sonner";
@@ -76,12 +76,11 @@ export default function CreateRepository() {
/>
navigate("/repositories")}>
-
Cancel
- Create Repository
+ Create repository
diff --git a/app/client/modules/repositories/routes/repositories.tsx b/app/client/modules/repositories/routes/repositories.tsx
index df58493..89e05d2 100644
--- a/app/client/modules/repositories/routes/repositories.tsx
+++ b/app/client/modules/repositories/routes/repositories.tsx
@@ -72,7 +72,7 @@ export default function Repositories({ loaderData }: Route.ComponentProps) {
button={
navigate("/repositories/create")}>
- Create Repository
+ Create repository
}
/>
diff --git a/app/client/modules/repositories/routes/repository-details.tsx b/app/client/modules/repositories/routes/repository-details.tsx
index cd1f233..be3e7c9 100644
--- a/app/client/modules/repositories/routes/repository-details.tsx
+++ b/app/client/modules/repositories/routes/repository-details.tsx
@@ -149,12 +149,12 @@ export default function RepositoryDetailsPage({ loaderData }: Route.ComponentPro
{doctorMutation.isPending ? (
<>
- Running Doctor...
+ Running doctor...
>
) : (
<>
- Run Doctor
+ Run doctor
>
)}
@@ -206,7 +206,7 @@ export default function RepositoryDetailsPage({ loaderData }: Route.ComponentPro
- Doctor Results
+ Doctor results
Repository doctor operation completed
@@ -238,10 +238,7 @@ export default function RepositoryDetailsPage({ loaderData }: Route.ComponentPro
)}
- setShowDoctorResults(false)}>
-
- Close
-
+ setShowDoctorResults(false)}>Close
diff --git a/app/client/modules/repositories/tabs/info.tsx b/app/client/modules/repositories/tabs/info.tsx
index 0f63c19..bd198ea 100644
--- a/app/client/modules/repositories/tabs/info.tsx
+++ b/app/client/modules/repositories/tabs/info.tsx
@@ -2,7 +2,7 @@ import { useMutation } from "@tanstack/react-query";
import { useState } from "react";
import { toast } from "sonner";
import { useNavigate } from "react-router";
-import { Check, Save, X } from "lucide-react";
+import { Check, Save } from "lucide-react";
import { Card } from "~/client/components/ui/card";
import { Button } from "~/client/components/ui/button";
import { Input } from "~/client/components/ui/input";
@@ -157,16 +157,13 @@ export const RepositoryInfoTabContent = ({ repository }: Props) => {
- Update Repository
+ Update repository
Are you sure you want to update the repository settings?
-
-
- Cancel
-
+ Cancel
-
+
Update
diff --git a/app/client/modules/volumes/routes/create-volume.tsx b/app/client/modules/volumes/routes/create-volume.tsx
index 545cb03..35e8bbb 100644
--- a/app/client/modules/volumes/routes/create-volume.tsx
+++ b/app/client/modules/volumes/routes/create-volume.tsx
@@ -1,5 +1,5 @@
import { useMutation } from "@tanstack/react-query";
-import { HardDrive, Plus, X } from "lucide-react";
+import { HardDrive, Plus } from "lucide-react";
import { useId } from "react";
import { useNavigate } from "react-router";
import { toast } from "sonner";
@@ -70,7 +70,6 @@ export default function CreateVolume() {
navigate("/volumes")}>
-
Cancel
diff --git a/app/client/modules/volumes/routes/volume-details.tsx b/app/client/modules/volumes/routes/volume-details.tsx
index 1df9304..082589c 100644
--- a/app/client/modules/volumes/routes/volume-details.tsx
+++ b/app/client/modules/volumes/routes/volume-details.tsx
@@ -2,7 +2,7 @@ import { useMutation, useQuery } from "@tanstack/react-query";
import { useNavigate, useParams, useSearchParams } from "react-router";
import { toast } from "sonner";
import { useState } from "react";
-import { CircleStop, Play, Trash2, X } from "lucide-react";
+import { Plug, Unplug } from "lucide-react";
import { StatusDot } from "~/client/components/status-dot";
import { Button } from "~/client/components/ui/button";
import { Tabs, TabsContent, TabsList, TabsTrigger } from "~/client/components/ui/tabs";
@@ -149,7 +149,7 @@ export default function VolumeDetails({ loaderData }: Route.ComponentProps) {
loading={mountVol.isPending}
className={cn({ hidden: volume.status === "mounted" })}
>
-
+
Mount
-
+
Unmount
setShowDeleteConfirm(true)} disabled={deleteVol.isPending}>
-
Delete
@@ -204,15 +203,11 @@ export default function VolumeDetails({ loaderData }: Route.ComponentProps) {
-
-
- Cancel
-
+
Cancel
-
Delete volume
diff --git a/app/client/modules/volumes/tabs/info.tsx b/app/client/modules/volumes/tabs/info.tsx
index 5e0d5fe..d311bcf 100644
--- a/app/client/modules/volumes/tabs/info.tsx
+++ b/app/client/modules/volumes/tabs/info.tsx
@@ -2,7 +2,7 @@ import { useMutation } from "@tanstack/react-query";
import { useState } from "react";
import { useNavigate } from "react-router";
import { toast } from "sonner";
-import { Check, X } from "lucide-react";
+import { Check } from "lucide-react";
import { CreateVolumeForm, type FormValues } from "~/client/components/create-volume-form";
import {
AlertDialog,
@@ -94,12 +94,9 @@ export const VolumeInfoTabContent = ({ volume, statfs }: Props) => {
-
-
- Cancel
-
+ Cancel
-
+
Update
diff --git a/biome.json b/biome.json
index 68a6cf1..928a49a 100644
--- a/biome.json
+++ b/biome.json
@@ -1,8 +1,9 @@
{
- "$schema": "https://biomejs.dev/schemas/2.3.5/schema.json",
+ "$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
"vcs": {
"enabled": true,
"clientKind": "git",
+ "defaultBranch": "origin/main",
"useIgnoreFile": true
},
"files": {
diff --git a/package.json b/package.json
index 4ea70bd..a787257 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,7 @@
"start": "bun ./dist/server/index.js",
"tsc": "react-router typegen && tsc",
"lint": "biome check .",
- "lint:ci": "biome check . --ci",
+ "lint:ci": "biome ci . --changed --error-on-warnings --no-errors-on-unmatched",
"start:dev": "docker compose down && docker compose up --build zerobyte-dev",
"start:prod": "docker compose down && docker compose up --build zerobyte-prod",
"gen:api-client": "openapi-ts",