Giter Club home page Giter Club logo

lolibrary-mobile's People

Contributors

nickcreel avatar

Watchers

 avatar  avatar

lolibrary-mobile's Issues

Basic Search

  • Grab search filters from Lolibrary site on setup
    • The search filters are not fetched using a network request, I believe they are pre-baked into the front end somehow (maybe server side rendering, but I'm not sure what the request would be). Either figure out a way to get these through an API request (rabbit hole) or go to the base search page and scrape (more costly during setup but really only needs to happen once per session).
  • Allow user input for keywords and different filters
  • Make a request to Lolibrary API using user input
  • Use returned JSON to build list of search results on the fly
    • Need to build components for search results. Start with a simple list item / flat list that shows image, name, category, and brand for each item.
      • Image
      • Details
      • Use index of list item to get full data from array instead and have this.state.searchResults store raw response body?
    • Individual items in the list can be tapped to go to full detail page. This page will also have a link to the main lolibrary page either as a button or as a "share" link
    • All of the information returned from lolibrary will be shown on the detail page.

Basic functionality for minimum viable product

  • Search
    • Minimally need to allow users to search by keyword, category, year, and brand. this is what most people want in a quick search
    • What is the Lolibrary search API?
      • API endpoint POST https://lolibrary.org/api/search?page=1
      • Pass refinements as JSON payload
{"search":"nakayoshi bunny",
"categories":["accessories"],
"brands":["alice-and-the-pirates"],
"features":["adjustable-straps"],
"tags":["abstract-decorative"],
"colors":["beige"],
"years":[2022],
"category_matcher":"OR","brand_matcher":"OR","feature_matcher":"OR","tag_matcher":"OR","color_matcher":"OR","year_matcher":"OR",
"page":1}

Example response

{"current_page":1,
"data":[{"slug":"ap-bear-toy-plush-pouch","english_name":"BEAR TOY Plush Pouch","foreign_name":"BEAR TOY\u306c\u3044\u3050\u308b\u307f\u30dd\u30fc\u30c1","product_number":"212BG11-180218","notes":"<div>[Material]<br>Outer material: Faux fur (80% acrylic, 20% polyester)<br>Separate material: Polka dot broadcloth (100% cotton)<br>&nbsp;<br><br><\/div><div>[Remarks]<br>\u2606 A different material is used for the inner bag.<br>\u2606 Satin ribbon is used.<br><br><\/div>","created_at":"2021-12-30T20:33:07+00:00","updated_at":"2021-12-30T20:33:55+00:00","published_at":"2021-12-30T20:33:55+00:00","image":"https:\/\/lolibrary.global.ssl.fastly.net\/images\/fqfZss7CXtDlRGM9WKaKldurxLaGbfyioPtkWQUo.jpeg","internal_notes":null,"price_details":{"currency":"jpy","price":11800,"local_price":"11800","formatted":"\u00a511,800.00"},"url":"https:\/\/lolibrary.org\/items\/ap-bear-toy-plush-pouch","edit_url":"\/library\/resources\/items\/69f22837-0386-4b23-97b9-6266745434a8\/edit","submitter":{"username":"sucre-dolls","created_at":"2015-01-30T12:40:45+00:00","level":100},"brand":{"slug":"angelic-pretty","name":"Angelic Pretty","short_name":"ap","image":"https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/https:\/\/lolibrary.global.ssl.fastly.net\/brands\/angelic-pretty.png","url":"https:\/\/lolibrary.org\/brands\/angelic-pretty"},"categories":[{"slug":"bags","name":"Bags","url":"https:\/\/lolibrary.org\/categories\/bags"}],"tags":[{"slug":"faux-fur","name":"Fabric: Faux Fur","url":"https:\/\/lolibrary.org\/tags\/faux-fur"},{"slug":"bears","name":"Bears","url":"https:\/\/lolibrary.org\/tags\/bears"},{"slug":"toys","name":"Toys","url":"https:\/\/lolibrary.org\/tags\/toys"}]}],
"first_page_url":"https:\/\/lolibrary.org\/api\/search?page=1",
"from":1,
"last_page":2977,
"last_page_url":"https:\/\/lolibrary.org\/api\/search?page=2977",
"next_page_url":"https:\/\/lolibrary.org\/api\/search?page=2",
"path":"https:\/\/lolibrary.org\/api\/search",
"per_page":24,
"prev_page_url":null,
"to":24,
"total":71429}
  • Add to local collection/wishlist (not connected to lolibrary account, store in a local DB)
    • Realm ? persistent on device but that's about it
    • would something like postgres work?
  • Share
    • give user the link to the item on the lolibrary site to share
    • hold to open in browser or to share? options for each result

Views:

  • Search
  • Wishlist
  • Result detail page

Components:

  • Search result
    • Image
    • title
    • short description
    • options
      • modal?
  • Search bar
  • Search refinements
    • Drop down
    • Fetch categories?
  • List of search results
  • Detail page
    • Image
    • title
    • full description
    • share button
  • Wishlist
    • Could use a more lightweight version of the search results list and individual resuts component to avoid repetition.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.