Skip to content

Repo Map

Matthew Taylor edited this page Feb 1, 2016 · 2 revisions

Here you can find a list of all of the components of the Scratch website that exist within this repository, as well as components that are currently in development, and being migrated over from our legacy infrastructure.

Views

src/views/

Each standalone page that can be visited on the site

  • splash – site homepage
  • hoc – Hour of Code activity page
  • about – /about/ page
  • credits – /credits/ page
  • for_parents – /parents/ page (IN DEVELOPMENT)
  • for_educators – /educators/ page (IN DEVELOPMENT)

Components

src/components/

All re-usable modules that are used across various pages on the site

  • activity – used by the "What's Happening?" box
  • adminpanel – displays moderation tools for moderators
  • avatar
  • banner – displays announcements at the top of a page
  • box – content container for almost all Scratch views
  • carousel – container for homepage rows
  • footer – website footer
  • forms – contains multiple components developed for content input to the site
  • intro – welcome sign at the top left of the homepage for logged out users
  • languagechooser – dropdown that allows one to change languages on Scratch
  • login
  • modal – container for dialogs (such as registration)
  • navigation – the top nav
  • news – updates displayed at the top right of the homepage
  • registration
  • spinner – for things that are loading
  • subnavigation – navigation lists that can be included within pages
  • thumbnail – for displaying images of things like projects, avatars, etc.
  • welcome – displays in top left of homepage when someone first logs in after signing up for an account

React Utils

  • src/lib/ – Utility methods that are used throughout the react components and views.
  • src/mixins/ – for React classes

Repo Utils

lib/

Utility methods that are used at the repo level, but are not bundled into the app itself

  • locale-compare – helps build locales/translations.json localization file, which allows the website to be localized into multiple languages. Used by lib/bin/build-locales. en.json is the template file which contains a list of all localizable strings within the website.