Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-written [BLAST query page] by React JS library #277

Open
r06942072 opened this issue Apr 18, 2019 · 5 comments
Open

Re-written [BLAST query page] by React JS library #277

r06942072 opened this issue Apr 18, 2019 · 5 comments
Assignees

Comments

@r06942072
Copy link
Member

r06942072 commented Apr 18, 2019

[BLAST query page(submission page)]
link:
https://github.com/r06942072/frontend_BLASTquery


Naming list of smart UI components

  • 4 blocks:
    • yourQuery
    • ourDb
    • program
    • timeTravel

Functionality list

  • [BLAST query page] Adding searchBar #271, add Searching bar, and remain scrolling bar
  • List all organisms and BLAST databases
  • User can select multiple databases
  • User can enter multiple query sequences
  • Text box for query input
  • Sample sequences for input
  • Support only one type of database at a time (nucleotide or peptide)
  • Disable BLAST programs based on the database and query type (nucleotide or peptide)

Link:

@r06942072 r06942072 self-assigned this Apr 22, 2019
@r06942072 r06942072 changed the title Make giant js be written by React JS library Re-written by React JS library Apr 22, 2019
@r06942072
Copy link
Member Author

r06942072 commented Apr 22, 2019

【Example React project】


@r06942072
Copy link
Member Author

r06942072 commented Apr 24, 2019

【Styling for react frontend】
Option1: styled-components
styles are also part of component


Option2: reactstrap
https://reactstrap.github.io/

@r06942072 r06942072 changed the title Re-written by React JS library Re-written BLAST query page by React JS library Apr 25, 2019
@r06942072 r06942072 changed the title Re-written BLAST query page by React JS library Re-written [BLAST query page] by React JS library Apr 25, 2019
@r06942072
Copy link
Member Author

r06942072 commented Apr 25, 2019

testing
using Jest + Enzyme

  • Test-driven development (TDD) for this project.
    • Follow the idea of TDD, I will create unit.test.js file based on the Functionality list first, and then implement it.
  • some library options:
    • Jest + Enzyme
    • Mocha + Enzyme
    • Jest v.s. Mocha : Jest new and easy setup, Mocha mature and more config

@r06942072
Copy link
Member Author

r06942072 commented Apr 28, 2019

【from JQuery to React】
React is good candidate to handle the event of UI

  • 0428_ReactjqUERY

@r06942072
Copy link
Member Author

r06942072 commented Apr 28, 2019

【State management library】

  • The idea is add some restrictions to state of frontend UI component change, so makes it more predictable.
  • It is nicer to have a central data store in the react project.
  • Share state across react components
  • Choosing between: Redux (vs) mobX
    • functional programming (vs) object-oriented programming
    • closer to vanilla JavaScript (vs) harder to understand the underlying mechanisms
    • single store (vs) multiple stores
    • strict, changes centralized (vs) not easy to maintain
    • more boilerplate (vs) less boilerplate
    • easy debug, explicit (vs) unpredictable, implicit
    • maintainable code (vs) small and simple
    • data update logic is redux-defined (vs) data update logic is developer-defined

@deming7h777 deming7h777 self-assigned this Jun 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants