Upload. Visualize. Analyze. Share.
A modern web platform for molecular visualization and property calculation.
Upload PDB/SDF files, view molecules in interactive 3D, and compute chemical properties instantly.
| Feature | Description |
|---|---|
| 🔬 3D Visualization | Interactive WebGL-powered molecular viewer with multiple rendering styles |
| 📊 Property Calculation | Automatic computation of MW, LogP, TPSA, H-bond donors/acceptors, and more |
| 📁 File Support | Upload PDB, SDF, and MOL2 molecular structure files |
| 🗂️ Molecule Library | Organize, search, and filter your molecular collection |
| 📤 Export Options | Download properties as CSV or JSON for further analysis |
| 🎨 Style Controls | Toggle between cartoon, stick, sphere, and surface representations |
- Docker & Docker Compose
- Node.js 18+ (for local frontend development)
- Python 3.11+ (for local backend development)
# Clone the repository
git clone https://github.com/yourusername/molview-360.git
cd molview-360
# Start all services
docker-compose up -d
# Open in browser
# Frontend: http://localhost:5173
# API Docs: http://localhost:8000/docs# Backend
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload
# Frontend (new terminal)
cd frontend
npm install
npm run devMolView 360 automatically calculates these molecular properties using RDKit:
| Property | Description | Unit |
|---|---|---|
| Molecular Weight | Sum of atomic masses | g/mol |
| LogP | Partition coefficient (lipophilicity) | - |
| TPSA | Topological Polar Surface Area | Ų |
| H-Bond Donors | Number of hydrogen bond donors | count |
| H-Bond Acceptors | Number of hydrogen bond acceptors | count |
| Rotatable Bonds | Number of rotatable bonds | count |
| Molecular Formula | Chemical formula | - |
| SMILES | Canonical SMILES representation | - |
┌─────────────────────────────────────────────────────────────┐
│ Frontend │
│ React 18 + TypeScript + 3Dmol.js + Tailwind + shadcn/ui │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ REST API (FastAPI) │
│ /molecules /properties /export /health │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┴───────────────┐
▼ ▼
┌─────────────────────────┐ ┌─────────────────────────────┐
│ Chemistry Engine │ │ Database │
│ (RDKit) │ │ SQLite / PostgreSQL │
└─────────────────────────┘ └─────────────────────────────┘
See docs/ARCHITECTURE.md for detailed system design.
molview-360/
├── frontend/ # React + TypeScript application
├── backend/ # FastAPI + RDKit server
├── docs/ # Documentation
├── data/ # Sample data files
├── scripts/ # Development utilities
├── docker-compose.yml # Development orchestration
└── README.md # This file
See docs/PROJECT_STRUCTURE.md for complete directory layout.
| Layer | Technology |
|---|---|
| Frontend | React 18, TypeScript, Vite, 3Dmol.js, Tailwind CSS, shadcn/ui |
| Backend | FastAPI, Python 3.11+, RDKit, SQLAlchemy 2.0, Pydantic v2 |
| Database | SQLite (dev) / PostgreSQL (prod) |
| DevOps | Docker, GitHub Actions |
See docs/TECH_STACK_ANALYSIS.md for technology decisions.
This project is licensed under the MIT License - see LICENSE for details.
- RDKit - Open-source cheminformatics
- 3Dmol.js - WebGL molecular visualization
- RCSB PDB - Protein Data Bank
- shadcn/ui - Beautiful UI components
Built with ❤️ for the chemistry community