A full-stack web application for protein function prediction using ESM-2 and AlphaFold 2 ensemble models.
- Node.js (v16 or higher)
- npm or yarn
- Clone the repository
git clone <your-repo-url>
cd protein-prediction-app- Install Backend Dependencies
cd server
npm install- Install Frontend Dependencies
cd ../client
npm install- Start the Backend Server (Terminal 1)
cd server
npm run devBackend will run on http://localhost:5000
2. Start the Frontend (Terminal 2)
cd client
npm run devFrontend will run on http://localhost:5173
3. Open your browser and navigate to http://localhost:5173
protein-prediction-app/
├── server/ # Backend (Node.js + Express)
│ ├── server.js # Main server file
│ ├── routes/ # API routes
│ └── package.json # Backend dependencies
├── client/ # Frontend (React + Vite)
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── pages/ # Page components
│ │ ├── App.jsx # Main app component
│ │ └── main.jsx # Entry point
│ └── package.json # Frontend dependencies
└── README.md
Accepts protein sequence and returns GO term predictions. Request:
{
"sequence": "MKTAYIAKQRQISFVK..."
}Response:
[
{
"GO_term": "GO:0009274",
"name": "Peptidoglycan-based cell wall",
"probability": 0.931,
"ontology": "CC"
}
]Returns project metadata and objectives.
- Interactive Demo: Upload FASTA files or paste sequences
- Mock Predictions: Simulated GO term predictions
- Responsive Design: Works on all devices
- Modern UI: Built with Tailwind CSS and React
- Frontend: React, Vite, Tailwind CSS
- Backend: Node.js, Express, CORS
- Styling: Tailwind CSS
- Current version uses mock predictions
- To integrate real models (ESM-2, AlphaFold 2), update
/api/predictendpoint inserver/routes/api.js
Research project for CAFA 6 Challenge - Critical Assessment of Functional Annotation
MIT License