From b06aad72b8f73a4363789b9c31e0ffa6937cb973 Mon Sep 17 00:00:00 2001 From: Chop <28534054+RChopin@users.noreply.github.com> Date: Mon, 2 Jun 2025 22:11:00 +0200 Subject: [PATCH] docs: Update README.md with comprehensive project features, installation instructions, and API endpoints --- README.md | 149 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 130 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 66bb426..4b847a6 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,147 @@ -This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). +# Project Management Panel + +A comprehensive project management system built with Next.js for managing construction/engineering projects, contracts, and tasks. + +## Features + +### 📋 Project Management + +- Create and manage projects with detailed information +- Link projects to contracts +- Track project deadlines and progress +- Add custom notes and contact information + +### 📄 Contract Management + +- Create and manage contracts +- Track contract details including customer and investor information +- Link multiple projects to contracts +- Monitor contract deadlines + +### ✅ Task Management + +- Create task templates for reusable workflows +- Add tasks to projects (both template-based and custom) +- Track task status and priorities +- Monitor task deadlines and completion + +### 📊 Dashboard + +- Overview of project statistics +- Recent projects display +- Task completion tracking +- Quick access to pending items + +## Tech Stack + +- **Framework**: Next.js 15.1.8 +- **Database**: SQLite with better-sqlite3 +- **Styling**: Tailwind CSS +- **Date Handling**: date-fns +- **Frontend**: React 19 ## Getting Started -First, run the development server: +### Prerequisites + +- Node.js (version 16 or higher) +- npm or yarn + +### Installation + +1. Clone the repository + +```bash +git clone +cd panel +``` + +2. Install dependencies + +```bash +npm install +``` + +3. Start the development server ```bash npm run dev -# or -yarn dev -# or -pnpm dev -# or -bun dev ``` -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. +4. Open [http://localhost:3000](http://localhost:3000) in your browser -You can start editing the page by modifying `app/page.js`. The page auto-updates as you edit the file. +### Database Setup -This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. +The application uses SQLite database which will be automatically initialized on first run. The database file is located at `data/database.sqlite`. -## Learn More +## Project Structure -To learn more about Next.js, take a look at the following resources: +``` +src/ +├── app/ # Next.js app router pages +│ ├── api/ # API routes +│ │ ├── contracts/ # Contract management endpoints +│ │ ├── projects/ # Project management endpoints +│ │ ├── project-tasks/ # Task management endpoints +│ │ └── tasks/ # Task template endpoints +│ ├── contracts/ # Contract pages +│ ├── projects/ # Project pages +│ └── tasks/ # Task management pages +├── components/ # Reusable React components +│ ├── ui/ # UI components (Button, Card, etc.) +│ └── forms/ # Form components +└── lib/ # Utility functions + ├── queries/ # Database query functions + └── db.js # Database connection +``` -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. +## Available Scripts -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! +- `npm run dev` - Start development server +- `npm run build` - Build for production +- `npm run start` - Start production server +- `npm run lint` - Run ESLint -## Deploy on Vercel +## Database Schema -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. +The application uses the following main tables: -Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. +- **contracts** - Contract information +- **projects** - Project details linked to contracts +- **tasks** - Task templates +- **project_tasks** - Tasks assigned to specific projects +- **notes** - Project notes and updates + +## API Endpoints + +### Projects + +- `GET /api/projects` - Get all projects +- `POST /api/projects` - Create new project +- `GET /api/projects/[id]` - Get project by ID +- `PUT /api/projects/[id]` - Update project +- `DELETE /api/projects/[id]` - Delete project + +### Contracts + +- `GET /api/contracts` - Get all contracts +- `POST /api/contracts` - Create new contract + +### Tasks + +- `GET /api/project-tasks` - Get project tasks or task templates +- `POST /api/project-tasks` - Create new project task +- `PATCH /api/project-tasks/[id]` - Update task status +- `DELETE /api/project-tasks/[id]` - Delete task + +## Contributing + +1. Fork the repository +2. Create a feature branch (`git checkout -b feature/amazing-feature`) +3. Commit your changes (`git commit -m 'Add some amazing feature'`) +4. Push to the branch (`git push origin feature/amazing-feature`) +5. Open a Pull Request + +## License + +This project is private and proprietary.