Giter VIP home page Giter VIP logo

theographic-web's People

Contributors

dependabot[bot] avatar robertrouse avatar zhickson avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

theographic-web's Issues

Design & build search algorithm

  • Decide on ranking and grouping of auto-complete
  • Best way to differentiate people/places and shared names
  • Data methods to retrieve search index and serve results
  • What do results look like: another page or just auto-complete? Should the search box be on every page, and how should it appear? (idea: add a drop-down triangle below titles listing page history and search box)

Design Bible navigation interactions

Finding a book/chapter/verse in as few clicks as possible
Consider scroll methods similar to Google Photos (below) where a timeline, alphabetical list , or book list defines the scrollbar. This works well on mobile in my experience.
image

Alter flow of index page lists

Current flow is left-to-right, then top-to-bottom. It should flow down a column top-to-bottom, then restart at the next column. This may be possible with CSS grid.

Revise layout of verse lists

Most verses will be embedded in events lists. Remaining verses listed need a cleaner layout with the book name in a left column and chapter/verse links indented in another column.

Revise person/place layouts to match Events page scheme

  • Replaces "Related" People/Places and Verses sections with a timeline referencing people, places, verses in each event.
  • Verses not related to events go at the bottom. These would be places where a person is mentioned in the verse but was not a participant in the event (e.g. Stephen mentions Moses in a speech...Moses isn't a part of the even but needs a verse ref).

Simplify conditional logic handling null fields

Some fields are null and should be hidden. Current method is a function for each field. Simpler alternatives may be:

  • single if/then function that passes in a field name and renders appropriately
  • condensed logic as in: {data.detailMap && (<Img fluid={data.detailMap.childImageSharp.fluid} className="map"/>)}

Migrate Airtable to Neo4j

Depends on #39. Includes People, Places, Events, Books, Chapters, Verses. Word-level linkages will come from logical operations or another data source.

Create standard layout wrapper with headers

  • Edit Layout.js to handle headers (<Helmet> stuff), overall layout wrappers (container class, padding, centering, etc)
  • Wrap pages in resulting <Layout> component
  • Add meta tags for page titles, og: tags, image preview, keywords, other SEO info.
  • Include Google analytics tracking code

Refactor CSS

  • Webflow left some unused CSS classes and assigned ".header" in places that should be a <h1> tag, for example. Reduce styles to only those needed, generally simplify.
  • Consider switching to styled components and follow practices here: https://www.gatsbyjs.org/tutorial/part-two/

Rewrite Person/Place descriptions

Removing HTML tags rom Easton's (#4) will be a stop-gap. We need to rewrite these to better fit the layout and link to related content within the paragraphs.

Pull higher-res static maps and insert into database

Using gatsby-image allows for optimal, progressive loading of higher resolution assets. They should be part of the database instead of the file system. Or, store them in a filestore and reference it in the database to manage references.

Develop components specific to place types

  • For all places, insert place type at the top
  • For regions and water, exclude detail map
  • Below maps, add lat/long info, "precision", and link to source (recogito URI or OpenBible url)

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.