A visualization platform for DeepPhe cancer phenotype data.
DeepPhe-Viz is a web-based application designed to visualize and interact with cancer phenotype data processed by the DeepPhe system. It provides researchers and clinicians with an intuitive interface to explore complex datasets, facilitating better understanding and analysis of cancer phenotypes.
- 📊 Interactive data visualization
- 🔍 Advanced filtering and search
- 💾 Direct SQLite database access (no IndexedDB)
- 🚀 Optimized performance with caching
- 📱 Responsive design
- 🔒 Secure deployment options
- Node.js (v18.x or higher)
- npm (v8.x or higher)
- Modern web browser (Chrome, Firefox, Edge recommended)
- Clone the repository:
git clone https://github.com/DeepPhe/DeepPhe-Viz-v2.git
cd DeepPhe-Viz-v2- Install dependencies:
npm install- Start the development server:
npm start-
Visit http://localhost:3000/ to see the visualization.
-
To stop the server, press
Ctrl + Cin the terminal.
# Build and run with Docker Compose
docker-compose up -d
# View logs
docker-compose logs -f
# Stop the application
docker-compose downYour app will be running at: http://localhost:3000 (or your server IP:3000)
# Build the Docker image
docker build -t deepphe-visualizer .
# Run the container
docker run -d -p 3000:3000 --name deepphe-viz deepphe-visualizer
# View logs
docker logs -f deepphe-viz
# Stop and remove
docker stop deepphe-viz && docker rm deepphe-viznpm run buildThis creates an optimized production build in the build/ directory.
Viz2/
├── public/ # Static files
│ └── demopatients.sqlite # SQLite database
├── src/
│ ├── components/ # React components
│ ├── utils/
│ │ └── db/
│ │ └── sqlite_client.js # SQLite database client
│ └── App.js
├── build/ # Production build (generated)
├── server.js # Express server
├── Dockerfile # Docker configuration
└── docker-compose.yml # Docker Compose setup
The application uses SQLite for data storage:
- File:
demopatients.sqlite - Location:
public/directory - Access: Direct SQL queries via
sql.js
# Run unit tests
npm test
# Run SQLite client tests
npm test -- sqlite_client.test.js| Command | Description |
|---|---|
npm start |
Start development server |
npm run build |
Build for production |
npm test |
Run tests |
Create a .env file for custom configuration:
PORT=3000
NODE_ENV=production- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
See LICENSE file for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests
- Submit a pull request