Implemented GUI ◦ Static website on GCP with Dummy Data • Phase 2 ◦ Scraping data ◦ Models ◦ Embedded Media • Phase 3 ◦ Filtered queries and pagination Introduction and Workflow
and Global Search Bar • Pillar Pages ◦ Toolbar with search input, select for filters and sorting/ordering ◦ Grid of entity cards (paginated) • Single-entity Views ◦ Embedded media ◦ List of related entities from other pillars w/ hyperlinks
each page in design ◦ useParams() for getting id of singular entities • React Hooks ◦ State hooks used to update results for current search ▪ search, sortBy, order (asc./desc.), filters, page, entities per page ◦ Material UI onChange attribute used to interact with UI elements • Axios ◦ API pulls stored at top-level of App and passed down as props to each class • Google Maps API
responsive layout ◦ Mobile response ◦ Many-to-many model building • What can we do better? ◦ Expand database (better APIs) ◦ Automate deployment ◦ Better individual instance page layouts • What did we learn? ◦ Integrating Material UI components into React & React Router ◦ API queries and filtering ◦ ORMs ◦ GCP Deployment • What puzzles us? ◦ How to create a database through a script ◦ How to make generic components for repetitive frontend layouts ◦ Increasing security by hiding the API key in the backend
Unit Test Results From Their Wiki: Color Saturation is used to indicate what elements of the site are functional or purely aesthetic No Pokemon Type CSS
store a single value Downsides : ◦ Harder to work with; requires hacky workarounds ◦ Can’t ensure that each value is the right data type: no way to prevent 1,2,3,banana,5 ◦ No way to enforce referential integrity. ◦ Can’t enforce uniqueness: no way to prevent 1,2,3,3,3,5 ◦ Can’t delete a value from the list without fetching the whole list. ◦ Can't store a list longer than what fits in the string column. ◦ Hard to count elements in the list, or do other aggregate queries. ◦ Hard to join the values to the lookup table they reference. ◦ Hard to fetch the list in sorted order. Source: https://stackoverflow.com/questions/3653462/is-storing-a-delimited-list-in-a-database-column-really-that-bad Why is storing foreign keys in a Comma Separated List bad?