An app that optimizes hospital resource management by simulating patient admissions, bed allocations, and managing no-shows effectively. Ideal for predictive occupancy planning and streamlined departmental coordination
- Python version: 3.13, and its libraries:
- Docker version: 27.4
- PostgreSQL
- Twilio for phone calls
- ElevenLabs for voice agents
- Docker
- Twilio account
- phone number for outbound calls
- Elevenlabs account
- at least one voice agent (conversational_ai)
- phone number connected to twilio
In order to run this app, docker is required.
If you don't have docker installed on your computer yet, you can install it here
You can find out how to do that here
You can find out how to do that here
Once you have docker installed, follow these guidelines:
-
Clone the repo on your local machine
- You can do it by running this command in terminal:
git clone https://github.com/datarabbit-ai/bed-occupancy cd bed-occupancy
- You can do it by running this command in terminal:
-
Prepare the
.envfile, it should be placed in the project's root folderIt should contain variables like this:
POSTGRES_NAME=postgres POSTGRES_USERNAME=postgres POSTGRES_PASSWORD=postgres POSTGRES_HOST=db POSTGRES_PORT=5432 ELEVENLABS_API_KEY=your_api_key_to_elevenlabs AGENT_ID=polish_voice_agent_id AGENT_UA_ID=ukrainian_voice_agent_id AGENT_PHONE_NUMBER_ID=phone_number_id_from_elevenlabs TWILIO_SID=your_twilio_sid TWILIO_AUTH_TOKEN=your_twilio_auth_token OPENAI_API_KEY=your_openai_api_key -
Make sure you are in the project's root folder and run the command: 1.
docker compose upThere are two versions of this command:
docker-compose upanddocker compose up. The commanddocker compose upforces docker to usedocker_compose_v2which is just better, more stable and more reliable.- By running the above command, docker should:
- launch faker, which will allow you to create a database and/or fill it with data
- launch the backend and frontend of the application, allowing the browser to open the application, view data from the database and simulate the other day's hospital occupancy rates
- The whole process could take even a few minutes, especially when running for the first time
-
If you see in docker logs that frontend container is starting to run, you can visit the webapp in browser
Correctly set up and working app looks like this:

The project is: in development