diff --git a/README.md b/README.md index afc14d5..1b1eb1a 100644 --- a/README.md +++ b/README.md @@ -42,19 +42,36 @@ All while maintaining **100% open-source transparency** and enabling self-hostin ## Templates +### Resume Templates +
- Precision ATS + Precision ATS
Precision ATS
- Executive Clarity + Executive Clarity
Executive Clarity
+### Cover Letter Templates + + + + + + +
+ Professional +
Professional +
+ Veriworkly Special +
Veriworkly Special +
+ ## Architecture and Technology Stack VeriWorkly utilizes a modern, type-safe monorepo architecture to ensure service isolation and scalability. diff --git a/apps/studio/components/dashboard/StudioShell.tsx b/apps/studio/components/dashboard/StudioShell.tsx index 569dc4c..db761e8 100644 --- a/apps/studio/components/dashboard/StudioShell.tsx +++ b/apps/studio/components/dashboard/StudioShell.tsx @@ -17,11 +17,13 @@ import { } from "@/components/dashboard/StudioNavigation"; import { ThemeToggle } from "@/components/dashboard/ThemeToggle"; import { AccountMenu } from "@/components/dashboard/AccountMenu"; -import { NewDocumentButton } from "@/components/dashboard/NewDocumentModal"; +import { NewDocumentButton, NewDocumentModal } from "@/components/dashboard/NewDocumentModal"; import { WorkspaceSearchModal } from "@/components/dashboard/WorkspaceSearchModal"; import { createResume } from "@/features/resume/services/resume-service"; import { signOutCurrentUser } from "@/features/auth/services/current-user"; +import { createDocument } from "@/features/documents/services/document-workspace-service"; +import type { DocumentType } from "@/features/documents/core/document-types"; import { cn } from "@/lib/utils"; @@ -43,13 +45,21 @@ const StudioShell = ({ children, mainClassName }: StudioShellProps) => { const [collapsed, setCollapsed] = useState(false); const [searchOpen, setSearchOpen] = useState(false); const [mobileNavOpen, setMobileNavOpen] = useState(false); + const [newDocumentOpen, setNewDocumentOpen] = useState(false); const email = user?.email || "No account connected"; const displayName = user?.name || user?.email?.split("@")[0] || "Local builder"; - const createNewResume = () => { - const resume = createResume(); - router.push(`/editor/resume/${resume.id}`); + const createNewDocument = (type: DocumentType) => { + if (type === "RESUME") { + const resume = createResume(); + router.push(`/editor/resume/${resume.id}`); + + return; + } + + const document = createDocument(type); + router.push(`/editor/${type.toLowerCase()}/${document.id}`); }; const handleLogout = async () => { @@ -126,7 +136,7 @@ const StudioShell = ({ children, mainClassName }: StudioShellProps) => {
- + setNewDocumentOpen(true)} />
{!collapsed ? ( @@ -187,7 +197,7 @@ const StudioShell = ({ children, mainClassName }: StudioShellProps) => {
- + setNewDocumentOpen(true)} />