Make the world a better place. -- Silicon Valley S01E03
This is an online calculator that calculates the DNA extension, linking number change, and structural state of DNA under given force and torque constraints, with DNA interactions with protein complexes and other DNA-inserts.
Workflow: make the change in master branch, then switch to deployment branch and do the merge. Use the Deployment-AFSBOX branch, since deployment branch has the configs set up in __init__
, cpp_calculator
, run_cpp
, generate_path
and src/HTTPconfig.js
.
After npm run build
, python3 after_build.py
to prep for deployment.
- React/Mobx/React-router, bootstrapped with Create-react-app + react-app-rewire-less, react-app-rewired, react-app-rewire-mobx
- UI-library: Ant-design
- Data visualization: React-vis
- Pdf viewer: React-pdf
- Carousel: Nuka-Carousel
- Ajax requests: Axios
Flask and the DNA transfer matrix calculator (hosted on Bitbucket)
Nginx with Gunicorn+ufw+supervisor
The underlying DNA transfer matrix calculator is based on the series of theoretical papers from Yan Jie's group:
- Transfer-matrix calculations of DNA polymer micromechanics under tension and torque constraints AK Efremov, RS Winardhi, J Yan, in Physical Review E 2016 (link)
- Theoretical Methods for Studying DNA Structural Transitions under Applied Mechanical Constraints AK Efremov, RS Winardhi, J Yan, in Polymers 2017 (link)
- Transfer-matrix calculations of the effects of tension and torque constraints on DNA–protein interactions AK Efremov, J Yan, in Nucleic Acids Research 2018 (link)
- Fullstack: Yang Kaiyuan and Olafs Vandans
- Backend: Ladislav Hovan
- Frontpage artwork: Artem Efremov
- C++ calculator: Artem Efremov and Ladislav Hovan
- Theoretical and UX: Yan Jie
- Tester and misc: Lu Chen, Zhao Xiaodan, Tang Qingnan ...
and countless Stackoverflow and tech forums (credits are given in the code),
and you! Please feel free to help improve this open source project as much as your time and interest allow.