docs: Update README.md with comprehensive project features, installation instructions, and API endpoints
This commit is contained in:
149
README.md
149
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 <repository-url>
|
||||
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.
|
||||
|
||||
Reference in New Issue
Block a user