<Project>
<Name>Khata App</Name>
<Description>Accounts management app for small businesses</Description>
<Overview>
<Summary>
Khata App is a comprehensive accounts management application designed for small businesses. It provides features such as invoice creation, customer management, product inventory, financial reports, and more. The app aims to simplify business accounting with an intuitive user interface and robust backend.
</Summary>
<Features>
<Feature>Invoice creation, listing, and management</Feature>
<Feature>Search functionality for quick access to customers or products</Feature>
<Feature>Data visualization with charts and graphs</Feature>
<Feature>User profile management and app configuration</Feature>
<Feature>Dark mode toggle for better user experience</Feature>
</Features>
</Overview>
<TechStack>
<Frontend>
<Technology>React</Technology>
<Technology>Next.js</Technology>
<Technology>TypeScript</Technology>
<Technology>Tailwind CSS</Technology>
<Technology>Shadcn UI</Technology>
<Technology>Lucide Icons</Technology>
</Frontend>
<Backend>
<Technology>Node.js</Technology>
<Technology>Drizzle ORM</Technology>
<Technology>PostgreSQL</Technology>
</Backend>
<Tools>
<Technology>ESLint</Technology>
<Technology>Prettier</Technology>
<Technology>Vercel</Technology>
<Technology>Clerk</Technology>
</Tools>
</TechStack>
<RelevantFiles>
<File>src/db/schema.ts</File>
<File>.env</File>
<File>src/db/seed.ts</File>
<File>src/db/migrate.ts</File>
<File>src/db/index.ts</File>
<File>src/db/drizzle.ts</File>
<File>src/components/AdminNavbar.tsx</File>
<File>drizzle.config.ts</File>
</RelevantFiles>
<FolderStructure>
<Folder name="src">
<Folder name="app">
<Folder name="(pages)">
<Folder name="customers">
<File name="create/page.tsx" />
<File name="page.tsx" />
</Folder>
<Folder name="dashboard">
<File name="dashboard_component.tsx" />
</Folder>
<Folder name="invoices">
<Folder name="[id]">
<File name="page.tsx" />
</Folder>
<Folder name="create">
<File name="page.tsx" />
</Folder>
<Folder name="edit">
<Folder name="[id]">
<File name="page.tsx" />
</Folder>
</Folder>
<File name="page.tsx" />
</Folder>
<Folder name="onboarding">
<File name="page.tsx" />
</Folder>
<Folder name="products">
<File name="page.tsx" />
</Folder>
<Folder name="settings">
<Folder name="[[...rest]]">
<File name="page.tsx" />
</Folder>
</Folder>
<File name="layout.tsx" />
</Folder>
<File name="layout.tsx" />
<File name="page.tsx" />
</Folder>
<Folder name="components">
<File name="AdminLayout.tsx" />
<File name="InvoiceComponent.tsx" />
<File name="invoice/InvoiceItemsSection.tsx" />
<File name="ui/button.tsx" />
<File name="ui/card.tsx" />
<File name="ui/dialog.tsx" />
<File name="ui/dropdown-menu.tsx" />
<File name="ui/input.tsx" />
<File name="ui/select.tsx" />
<File name="ui/table.tsx" />
<File name="ui/toaster.tsx" />
</Folder>
<Folder name="db">
<File name="schema.ts" />
<File name="seed.ts" />
</Folder>
<Folder name="lib">
<File name="interfaces.ts" />
<File name="utils.ts" />
</Folder>
<Folder name="styles">
<File name="globals.css" />
</Folder>
</Folder>
<Folder name="public">
<File name="next.svg" />
<File name="vercel.svg" />
</Folder>
<File name=".eslintrc.json" />
<File name=".gitignore" />
<File name="components.json" />
<File name="drizzle/0000_curly_james_howlett.sql" />
<File name="next.config.mjs" />
<File name="package.json" />
<File name="postcss.config.mjs" />
<File name="README.md" />
<File name="tailwind.config.ts" />
<File name="tsconfig.json" />
</FolderStructure>
<DevelopmentGuideLines>
<GuideLine>
Using shadcn ui components for styling and layout
</GuideLine>
<GuideLine>
Using lucide icons for icons
</GuideLine>
<GuideLine>
Using shadcn ui useToast for showing Error, Warning, Loading and Success messages
</GuideLine>
<GuideLine>Using Clerk for authentication</GuideLine>
<GuideLine>Using Drizzle ORM for database</GuideLine>
<GuideLine>Using Server Actions for API calls</GuideLine>
<GuideLine> Use TypeScript for type safety</GuideLine>
<GuideLine> Use Next.js for server actions</GuideLine>
</DevelopmentGuideLines>
<Tasks>
<Task> Add Unit testing and add first test case just to make sure testing setup is working</Task>
</Task>
</Tasks>
</Project>
clerk
css
drizzle-orm
eslint
javascript
next.js
postgresql
prettier
+6 more
First Time Repository
TypeScript
Languages:
CSS: 1.8KB
JavaScript: 0.2KB
TypeScript: 213.8KB
Created: 5/8/2024
Updated: 10/7/2024