A modern, professional marketplace application for hospital software services with integrated pricing, deployment, and service management capabilities.
- Responsive grid layout with application cards
- Comprehensive pricing display with multiple pricing models
- Status badges with color coding (Available, Pilot Started, Planning)
- Feature highlights and application details
- One-click deployment buttons
- Per-User Pricing:
€15.99/month per user - Usage-Based:
€89.99/month + €0.05 per GB - Per-Session:
€49.99/month + €12.50 per session - Flat Rate:
€299.99/month - Enterprise:
€2,499.99/month
- Interactive pricing calculator with real-time updates
- Configuration forms based on pricing model
- Setup fee calculation and total cost estimation
- Terms acceptance and deployment confirmation
- Active services overview with deployment status
- Monthly and annual cost tracking
- Service configuration management
- One-click service removal
- Clean, modern hospital-themed interface
- Emerald green accent colors for medical environment
- Inter font for excellent readability
- Lucide icons for visual appeal
- Fully responsive design
- Node.js (v16 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/alexvcodesphere/krankenhaus-marketplace.git cd krankenhaus-marketplace -
Install dependencies
npm install
-
Start the development server
npm run dev
-
Access the application
http://localhost:3000
krankenhaus-marketplace/
├── views/ # EJS templates
│ ├── catalog.ejs # Main marketplace view
│ ├── detail.ejs # Application detail view
│ ├── deploy.ejs # Deployment configuration
│ ├── services.ejs # User dashboard
│ └── 404.ejs # Error page
├── public/ # Static assets
│ └── style.css # Custom styles
├── data.json # Application data
├── server.js # Express server
└── package.json # Dependencies
npm start- Start production servernpm run dev- Start development server with auto-reloadnpm install- Install dependencies
Each application in data.json follows this structure:
{
"id": "unique-app-id",
"title": "Application Name",
"developer": "Company Name",
"version": "1.0.0",
"category": "Category",
"description": "Application description",
"status": "Verfügbar|Pilot gestartet|Planung",
"icon": "lucide-icon-name",
"pricing": {
"model": "per_user|usage|per_session|flat|enterprise",
"basePrice": 15.99,
"currency": "EUR",
"period": "month",
"usagePrice": 0.05,
"usageUnit": "GB/month",
"setupFee": 299.99
},
"license": "License Type",
"features": ["Feature 1", "Feature 2", "Feature 3"]
}- Per-User:
basePrice * numberOfUsers - Usage-Based:
basePrice + (usagePrice * estimatedUsage) - Per-Session:
basePrice + (usagePrice * sessionsPerMonth) - Flat Rate: Fixed
basePrice - Enterprise: Custom
basePrice
| Method | Endpoint | Description |
|---|---|---|
| GET | / |
Main marketplace catalog |
| GET | /app/:id |
Application details |
| GET | /deploy/:id |
Deployment configuration |
| POST | /deploy/:id |
Deploy application |
| GET | /services |
User services dashboard |
| DELETE | /services/:id |
Remove deployed service |
- Primary: Emerald Green (
#10b981) - Background: Light Gray (
#f8fafc) - Text: Slate (
#334155) - Accent: Blue, Yellow for status badges
- Font Family: Inter (Google Fonts)
- Headings: Semibold to Bold weights
- Body: Regular weight with good line-height
- Cards: Rounded corners, subtle shadows
- Buttons: Emerald primary, white secondary
- Badges: Color-coded status indicators
- Icons: Lucide icon library
- Input Validation: Form data validation
- CSRF Protection: Recommended for production
- Rate Limiting: Recommended for deployment endpoints
- Authentication: Ready for integration
npm run devnpm startPORT=3000
NODE_ENV=production- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the ISC License.
- User authentication system
- Payment integration (Stripe/PayPal)
- Application reviews and ratings
- Advanced filtering and search
- API documentation
- Admin dashboard
- Multi-language support
- Email notifications
For support and questions, please open an issue on GitHub.
Built with ❤️ for the healthcare industry