Spaces:
Sleeping
Sleeping
Commit History
-
feat: molecular docking (AutoDock Vina) + docs site + Sentry + cache stats + Phase 2 docs update
- Molecular docking tool via AutoDock Vina (free, CPU-based, local binary) - Dockerfile: openbabel apt install + vina binary from GitHub releases - Backend: DockingTool (PDB fetch, obabel PDBQT conversion, vina subprocess, pose parser) - Backend: POST /api/docking/run + GET /api/docking/status/{job_id} - Frontend: analyze/docking/page.tsx — PDB ID + SMILES input, auto-detect binding pocket, results table with affinity color-coding, PDBe structure viewer - Frontend: docking card with 'New' badge added to analyze/page.tsx - Documentation site: /learn pages (10 topics + glossary), LearnPopover inline help, TutorialWalkthrough onboarding modal - Sentry error monitoring: sentry.client.config.ts, sentry.server.config.ts, next.config.js withSentryConfig, backend sentry_sdk init in main.py - Cache stats tracking: _cache_stats counters, from_cache flag, /api/admin/cache-stats endpoint, @ttl_cache on ncbi_service.search_by_name and pathway_enrichment - All .md docs (MASTER_PL…fb8c550
-
fix: replace dead embed.rcsb.org iframe with PDBe Mol* viewer
7d2b5e1 -
feat: complete Phase 2 — API keys, share links, export, pipeline steps, guest upgrade
305458b -
refactor: enhance dashboard with quick tools, jobs with filter tabs, settings with profile identity
32dd681 -
fix: default import PhyloTreeViewer in alignment, report, and PipelineResults
fe5ce87 -
feat: dedicated phylo router (NJ/UPGMA/ML), local PhyML binary, standalone phylo page, PhyloTreeViewer redesign
07e58f6
-
feat: in-memory pipeline v2 with MSA, phylo tree, domains; PipelineResults component; standalone phylo page; report page; wizard step checkboxes
990c867 -
fix: use embed.rcsb.org instead of www.rcsb.org for clean 3D viewer iframe
567f164 -
feat: add PNG/TSV/JSON/CSV/FASTA export to all 8 tool components
- Shared export utility (export-utils.ts): downloadTsv, downloadJson, copyText, exportSvgPng - DomainArchitecture: Export PNG (SVG canvas), Export TSV (domain table) - PhyloTreeViewer: Export PNG - ConservationTrack: Export PNG - StructureComparison: Export PNG (TM-score bars), Export TSV (metrics) - UniProt page: Export JSON, Export CSV (header fields) - PrimerDesigner: Export TSV (all primer pairs) - PathwayEnrichment: Copy links, Export TSV (pathway table) - BlastPanel: Export CSV (hit table), Export FASTA (sequences)342fa92
-
feat: domains, interactions, primers, structure analysis, wizard, phylo tree, conservation
- Add backend routers: domains (InterPro), interactions (STRING-DB), primers (Primer3), structure_analysis (Ramachandran, SS pred, comparison) - Add frontend components: AnalysisWizard, PhyloTreeViewer, DomainArchitecture, StringDBViewer, PrimerDesigner, RamachandranPlot, SecondaryStructureViewer, StructureComparison, ConservationTrack - Add pages: /wizard, /analyze/domains, /analyze/interactions, /analyze/primers, /analyze/compare - Update analyze hub: 10 operations in 3 groups + wizard CTA - Update alignment page: visual phylo tree + conservation track - Update job results: Advanced Analysis tabs panel - Register all routers in main.py; add primer3-py to requirements; fix CORS & profilebac1801
-
Add Reactome diagrams, KEGG search, pathway enrichment (pipeline + standalone)
8ce1e37 -
Security, crash fixes, demo prep, dead code removal
- Auth guard: GET/DELETE /api/jobs/{id} now verify ownership (403 on mismatch) - Streaming auth: interpretStream() injects Supabase Bearer token - DELETE 404: return 404 if job never existed - JobProgress: fixed active step to show next pending step - Step names unified: worker → definition → frontend all match - Null-guards: BlastPanel, ScoreBars, UniprotPanel handle undefined/null data - ErrorBoundary: new class component wrapping dashboard layout - Silent catches: replaced .catch(noop) with user-visible error banner - Demo data: filled alignment strings for all hits; added hemoglobin + BRCA1 - History page: linked in sidebar nav (was orphaned) - pipeline_type default fixed: blast → protein_analysis - Axios timeout: added 30s timeout to api client - Dead code: removed 8 files (engine.py, results/export/waitlist routers, celery_app, redis service, registration tool, StructureViewer component) and 4 unused api.ts functions9a28cd0
-
Fix structure viewer iframe: embed.rcsb.org is dead → use www.rcsb.org/3d-view/{pdbId}
62d0f3d -
Fix: alignment sample sequences, reverse complement tool, BLAST program filtering, sample buttons on structure/pathway pages
aa498ec -
Fix Phase 1 endpoints: resolve UniProt→PDB in structure viewer, use proper Reactome search, surface real backend errors in frontend
13df1a1 -
Polish: restyle blast/dashboard/jobs/history/results pages to dark theme, fix Loader2 icons, update result components
2a12412 -
Guest upgrade, DB migration, settings functional, full Phase 1 feature set
90b88af -
Sprint 3-7: Alignment, Structure Viewer, Pathway Analysis, Utility Tools, analyze page fully live
f0b48d6 -
Sprint 1-2: JWT auth middleware + UniProt dedicated page
f8dfa58 -
fix: animate='visible' -> animate='show' to match fadeUp variant
b008d9f -
fix: rename lucide-react icons (LoaderCircle, CircleCheck), remove unused imports, replace Set.isSubsetOf
5242ec8 -
full dark migration: CSS overrides for all legacy classes, framer-motion animations across every page/component, rebrand to Bio Nexus
2f67ecf -
redesign: BioFlow AI void-dark theme — new landing page, dashboard, Three.js DNA helix, Lenis smooth scroll
627ac39 -
settings: mark notifications & danger zone as coming-soon, clean up unused state/imports
28efc96 -
named exports, any->unknown, theme toggle (light/dark), dark mode fixes, error extractor, deleted pipline/ typo dir
973dd4c
-
design.md + rules.md compliance: dark theme, teal palette, pulsing dot, Pydantic models, api.ts routing, config fixes, db/max_hits threading, Supabase migration 004
f42f5a6 -
fix: Analyze button on retrieve page + sessionStorage handoff to blast wizard
6c461b6 -
fix: E-value underflow, AlphaFold step, steps_completed append, UniProt always runs
3154548 -
fix: use Array.from instead of Set spread for TS compatibility
3bc04b9 -
fix: FASTA header text bleeding into sequence validation, add IUPAC codes U O B Z X J
57fa457
-
Deploy prep: Render config + Dockerfile, refactored backend auth flow, dashboard, landing page, error states, guest flow
76fb273 -
Re-enable OAuth: restore auth pages, Providers wrapper, dashboard auth guard, landing page CTA
dc1f75e
-
AlphaFold 3D viewer via 3Dmol.js — pLDDT confidence coloring, style selector, spin toggle
- Self-contained AlphaFoldViewer component (client-only, global namespace) - Loads 3Dmol-min.js on demand via <script> - Colors structure by per-residue pLDDT (B-factor column) using AF DB standard scheme - 4 display modes: cartoon·pLDDT, cartoon·spectrum, surface·pLDDT, stick·pLDDT - pLDDT confidence legend in footer - Wired into /results/[jobId] and /shared/[token]ffe46cc -
Core pipeline testability: progress callback, rate limiter 429, history table
- Pipeline engine: progress_callback fires after BLAST/UniProt/AlphaFold, Pydantic models normalized to plain dict (fixes 'runs but no result') - Worker: async Supabase REST PATCH for real-time step progress - Rate limiter: raises HTTP 429 with Content-Range parsing, fail-open - History: table layout with clickable rows -> /results/[jobId] - BLAST: add stype param, fix email (EBI rejects invalid domains) - Celery: Redis ping check so fallback to sync thread works - UI: progress bar + percentage in JobProgress, nav link fixes - Auth: removed for testing (will re-enable in Phase 1) - Status: changed pending -> queued to match DB check constraint88aa370 -
Initial commit: Bio Nexus pipeline engine — BLAST + UniProt + AlphaFold + AI interpretation (Phase 1)
5a0e691