A comprehensive digital logbook system for neurosurgical procedures, designed to streamline documentation, tracking, and analysis of surgical cases.
-
User Management
- Role-based access control (Admin, Surgeon, Resident)
- User profile management
- Activity tracking and audit logs
-
Procedure Documentation
- Detailed procedure logging
- Pre-op, intra-op, and post-op documentation
- Patient information management
- Complication tracking
- Outcome documentation
-
Media Management
- Image and video upload support
- Organized media storage
- Real-time storage monitoring
- Automatic storage space calculation
-
Analytics & Reporting
- Traffic analytics
- User activity monitoring
- Procedure statistics
- Custom report generation
-
Hospital & Surgeon Management
- Hospital database
- Surgeon profiles
- Global and local hospital/surgeon settings
-
Frontend
- Next.js 13+ (App Router)
- React
- TypeScript
- Tailwind CSS
- Shadcn UI Components
-
Backend
- Next.js API Routes
- Prisma ORM
- PostgreSQL
- NextAuth.js
-
Storage
- Local file system for media storage
- Automatic disk space monitoring
- Node.js 18+
- PostgreSQL
- npm or yarn
-
Clone the repository:
git clone [repository-url] cd neurosurgical-logbook -
Install dependencies:
npm install # or yarn install -
Set up environment variables: Create a
.envfile in the root directory with the following variables:DATABASE_URL="postgresql://user:password@localhost:5432/neurosurgical_logbook" NEXTAUTH_SECRET="your-secret-key" NEXTAUTH_URL="http://localhost:3000" -
Initialize the database:
npx prisma migrate dev
-
Start the development server:
npm run dev # or yarn dev -
Access the application:
- Frontend: http://localhost:3000
- Prisma Studio: http://localhost:5555
neurosurgical-logbook/
├── app/ # Next.js app directory
│ ├── admin/ # Admin dashboard pages
│ ├── api/ # API routes
│ ├── auth/ # Authentication pages
│ └── procedures/ # Procedure management pages
├── components/ # Reusable UI components
├── lib/ # Utility functions and configurations
├── prisma/ # Database schema and migrations
├── public/ # Static files
│ └── uploads/ # Media storage
└── styles/ # Global styles
The application uses a local file system for media storage:
- Location:
/public/uploads - Automatic disk space monitoring
- Real-time storage usage statistics
- Support for images and videos
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please contact [support-email] or open an issue in the repository.