diff --git a/src/components/masonrygrid/masonrygrid.scss b/src/components/masonrygrid/masonrygrid.scss index 98b75c95f..f1e670c50 100644 --- a/src/components/masonrygrid/masonrygrid.scss +++ b/src/components/masonrygrid/masonrygrid.scss @@ -3,7 +3,7 @@ .masonry { column-gap: $gutter; column-width: $cols4; - padding-bottom: 50px; + padding-bottom: 1rem; -webkit-perspective: 1; } diff --git a/src/components/ttt-tile/ttt-tile.jsx b/src/components/ttt-tile/ttt-tile.jsx index cd71ec37a..65437e76a 100644 --- a/src/components/ttt-tile/ttt-tile.jsx +++ b/src/components/ttt-tile/ttt-tile.jsx @@ -7,62 +7,34 @@ require('../forms/button.scss'); require('./ttt-tile.scss'); const TTTTile = props => ( -
- -
-
- -
-
- -
-
-
-
- -
- -
-

{props.title}

-

- {props.description} -

-
-
- -
- {props.onGuideClick && ( -
- +
+
+
- )} +
+

{props.title}

+

+ {props.description} +

+
+
); TTTTile.propTypes = { className: PropTypes.string, description: PropTypes.string, - onGuideClick: PropTypes.func, - thumbUrl: PropTypes.string.isRequired, - title: PropTypes.string.isRequired, - tutorialLoc: PropTypes.string.isRequired + onClick: PropTypes.func, + thumbImage: PropTypes.string.isRequired, + title: PropTypes.string.isRequired }; module.exports = TTTTile; diff --git a/src/components/ttt-tile/ttt-tile.scss b/src/components/ttt-tile/ttt-tile.scss index 148168675..7c465ef18 100644 --- a/src/components/ttt-tile/ttt-tile.scss +++ b/src/components/ttt-tile/ttt-tile.scss @@ -19,21 +19,6 @@ position: relative; } -// nesting is required (not just name-spacing) because we want the image -// and tile box to change style on hover of the parent component. -.ttt-tile-tutorial:hover { - - .ttt-tile-image { - .ttt-tile-image-img { - opacity: .5; - } - - .ttt-tile-image-try { - display: inline-block; - } - } -} - .ttt-tile-image { border-radius: 1rem 1rem 0 0; background: $ui-blue; diff --git a/src/routes.json b/src/routes.json index 2f8888786..3e31f2430 100644 --- a/src/routes.json +++ b/src/routes.json @@ -566,5 +566,12 @@ "name": "bird-redirect", "pattern": "^/bird/?$", "redirect": "/tips" + }, + { + "name": "ideas", + "pattern": "^/ideas/?(\\?.*)?$", + "routeAlias": "/ideas/?\\??", + "view": "ideas/ideas", + "title": "Ideas" } ] diff --git a/src/views/ideas/ideas.jsx b/src/views/ideas/ideas.jsx new file mode 100644 index 000000000..c6ce85f86 --- /dev/null +++ b/src/views/ideas/ideas.jsx @@ -0,0 +1,248 @@ +const bindAll = require('lodash.bindall'); +const FormattedHTMLMessage = require('react-intl').FormattedHTMLMessage; +const FormattedMessage = require('react-intl').FormattedMessage; +const injectIntl = require('react-intl').injectIntl; +const intlShape = require('react-intl').intlShape; +const React = require('react'); + +const Button = require('../../components/forms/button.jsx'); +const FlexRow = require('../../components/flex-row/flex-row.jsx'); +const MasonryGrid = require('../../components/masonrygrid/masonrygrid.jsx'); +const TitleBanner = require('../../components/title-banner/title-banner.jsx'); +const TTTModal = require('../../components/modal/ttt/modal.jsx'); +const TTTTile = require('../../components/ttt-tile/ttt-tile.jsx'); + +const Page = require('../../components/page/www/page.jsx'); +const render = require('../../lib/render.jsx'); + +const Tiles = require('./ttt.json'); + +require('./ideas.scss'); + +class Ideas extends React.Component { + constructor (props) { + super(props); + bindAll(this, [ + 'handleShowTTTModal', + 'handleHideTTTModal', + 'renderTTTTiles' + ]); + this.state = { + currentTile: Tiles[0], + TTTModalOpen: false + }; + } + handleShowTTTModal (tile) { + // expects translated tile + this.setState({ + currentTile: tile, + TTTModalOpen: true + }); + } + handleHideTTTModal () { + this.setState({ + TTTModalOpen: false + }); + } + renderTTTTiles () { + return Tiles.map((tile, key) => { + const translatedTile = { + tutorialUrl: this.props.intl.formatMessage({id: tile.tutorialUrl}), + modalImage: tile.modalImage, + description: this.props.intl.formatMessage({id: tile.description}), + guideUrl: this.props.intl.formatMessage({id: tile.guideUrl}), + thumbImage: tile.thumbImage, + title: this.props.intl.formatMessage({id: tile.title}), + cardsUrl: tile.cardsUrl + }; + return ( + { // eslint-disable-line react/jsx-no-bind + this.handleShowTTTModal(translatedTile); + }} + {...translatedTile} + /> + ); + }); + } + render () { + return ( +
+
+ +
+ +

+ +

+ + + +
+
+
+
+ +
+ +
+
+

+ +

+

+ +

+ + + +
+
+
+
+
+
+

+ +

+

+ +

+
+ + {this.renderTTTTiles()} + + + + + +
+
+
+
+ +
+

+ +

+

+ +

+ + + +
+
+ +
+
+
+
+
+
+
+
+
+ +
+ +
+
+

+ +

+

+ +

+

+ + + +

+
+
+
+
+
+
+ +
+ +

+ +

+

+ +

+
+
+ +

+ +

+

+ +

+
+
+
+
+
+ ); + } +} + +Ideas.propTypes = { + intl: intlShape +}; + +const WrappedIdeas = injectIntl(Ideas); + +render( + , document.getElementById('app')); diff --git a/src/views/ideas/ideas.scss b/src/views/ideas/ideas.scss new file mode 100644 index 000000000..acd392a87 --- /dev/null +++ b/src/views/ideas/ideas.scss @@ -0,0 +1,226 @@ +@import "../../colors"; +@import "../../frameless"; + +$base-bg: $ui-white; + +#view { + background-color: $ui-white; + padding: 0; +} + +.banner-wrapper { + background: $ui-yellow bottom right url('/images/ideas/right-juice.png') no-repeat; +} + +.ideas-banner { + background: bottom left url('/images/ideas/left-juice.png') no-repeat; +} + +.ttt-section { + display: flex; + margin: 0 auto; + text-align: center; + justify-content: center; + flex-wrap: wrap; + align-items: center; +} + +.tips-divider { + border-top: 1px solid $ui-gray; + width: 100%; +} + +.tips-banner-image { + max-width: calc(100% - 2rem); +} + +.ideas-button { + margin-right: .75rem; + background-color: $ui-blue; + color: $ui-white; + font-size: 1rem; + + img { + margin-right: 1rem; + height: 1.25rem; + vertical-align: middle; + } + + a { + color: $ui-white; + } +} + +.wide-button { + width: 100%; +} + +.purchase-button { + img { + margin-right: 0; + margin-left: .75rem; + width: 1rem; + vertical-align: baseline; + } +} + +.tips-info-section { + padding: 2.5rem 0; + width: 100%; + justify-content: space-between; +} + +.tips-info-body { + text-align: left; +} + +.tips-cards-buttons { + a { + white-space: normal; + } +} + +.gray-area { + background-color: $ui-gray; +} + +img.tips-icon { + height: 1.75rem; +} +//4 columns +@media #{$small} { + + .title-banner { + &.masthead { + padding-bottom: 1.25rem; + + p { + max-width: $cols4; + } + } + } + + .ttt-head { + + p { + max-width: $cols4; + } + } + + //put the image first if in 4-column + .tips-info-body { + max-width: $cols4; + text-align: center; + + &.tips-illustration { + order: -1; + img { + width: $cols4; + } + } + + .button { + width: 100%; + } + } +} + +//6 columns +@media #{$medium} { + .title-banner { + &.masthead { + + p { + max-width: $cols6; + } + } + } + + .ttt-head { + p { + max-width: $cols6; + } + } + + .tips-info-body.tips-illustration { + order: -1; + img { + width: $cols4; + } + } + + .tips-info-body { + max-width: $cols4; + text-align: center; + } +} + + +//8 columns +@media #{$intermediate} { + .title-banner { + &.masthead { + padding-bottom: 2rem; + + p { + max-width: $cols6; + } + } + } + + .ttt-head { + p { + max-width: $cols6; + } + } + + .tips-info-section { + &.mod-align-top { + align-items: flex-start; + } + } + + .tips-info-body { + max-width: $cols4; + } + + .tips-button { + width: 100%; + } + + img.mod-flow-left { + transform: translate(-1*$cols2); + } +} + +// 12 columns +@media #{$big} { + .title-banner { + &.masthead { + padding-bottom: 1.25rem; + + p { + max-width: $cols8; + } + } + } + + .ttt-head { + p { + max-width: $cols8; + } + } + + .tips-info-section { + &.mod-align-top { + align-items: flex-start; + } + } + + .tips-info-body { + max-width: $cols6; + &.mod-narrow { + max-width: $cols5; + } + } +} diff --git a/src/views/ideas/l10n-static.json b/src/views/ideas/l10n-static.json new file mode 100644 index 000000000..8792f7d3a --- /dev/null +++ b/src/views/ideas/l10n-static.json @@ -0,0 +1,28 @@ +{ + "cards.Scratch2CardsLink": "https://resources.scratch.mit.edu/www/cards/en/Scratch2Cards.pdf", + "cards.ScratchCardsAllLink": "https://resources.scratch.mit.edu/www/cards/en/ScratchCardsAll.pdf", + "cards.catchCardsLink": "https://resources.scratch.mit.edu/www/cards/en/catchCards.pdf", + "cards.danceCardsLink": "https://resources.scratch.mit.edu/www/cards/en/danceCards.pdf", + "cards.dressupCardsLink": "https://resources.scratch.mit.edu/www/cards/en/dressupCards.pdf", + "cards.fashionCardsLink": "https://resources.scratch.mit.edu/www/cards/en/fashionCards.pdf", + "cards.flyCardsLink": "https://resources.scratch.mit.edu/www/cards/en/flyCards.pdf", + "cards.hide-seekCardsLink": "https://resources.scratch.mit.edu/www/cards/en/hide-seekCards.pdf", + "cards.musicCardsLink": "https://resources.scratch.mit.edu/www/cards/en/musicCards.pdf", + "cards.nameCardsLink": "https://resources.scratch.mit.edu/www/cards/en/nameCards.pdf", + "cards.petCardsLink": "https://resources.scratch.mit.edu/www/cards/en/petCards.pdf", + "cards.pongCardsLink": "https://resources.scratch.mit.edu/www/cards/en/pongCards.pdf", + "cards.raceCardsLink": "https://resources.scratch.mit.edu/www/cards/en/raceCards.pdf", + "cards.storyCardsLink": "https://resources.scratch.mit.edu/www/cards/en/storyCards.pdf", + "guides.CatchGuideLink": "https://resources.scratch.mit.edu/www/guides/en/CatchGuide.pdf", + "guides.DanceGuideLink": "https://resources.scratch.mit.edu/www/guides/en/DanceGuide.pdf", + "guides.FashionGuideLink": "https://resources.scratch.mit.edu/www/guides/en/FashionGuide.pdf", + "guides.FlyGuideLink": "https://resources.scratch.mit.edu/www/guides/en/FlyGuide.pdf", + "guides.Getting-Started-Guide-Scratch2Link": "https://resources.scratch.mit.edu/www/guides/en/Getting-Started-Guide-Scratch2.pdf", + "guides.HideandSeekGuideLink": "https://resources.scratch.mit.edu/www/guides/en/HideandSeekGuide.pdf", + "guides.MusicGuideLink": "https://resources.scratch.mit.edu/www/guides/en/MusicGuide.pdf", + "guides.NameGuideLink": "https://resources.scratch.mit.edu/www/guides/en/NameGuide.pdf", + "guides.PetGuideLink": "https://resources.scratch.mit.edu/www/guides/en/PetGuide.pdf", + "guides.PongGuideLink": "https://resources.scratch.mit.edu/www/guides/en/PongGuide.pdf", + "guides.RaceGuideLink": "https://resources.scratch.mit.edu/www/guides/en/RaceGuide.pdf", + "guides.StoryGuideLink": "https://resources.scratch.mit.edu/www/guides/en/StoryGuide.pdf" +} diff --git a/src/views/ideas/l10n.json b/src/views/ideas/l10n.json new file mode 100644 index 000000000..52f82469e --- /dev/null +++ b/src/views/ideas/l10n.json @@ -0,0 +1,74 @@ +{ + "ideas.headerMessage": "What will you create?", + "ideas.headerButtonMessage": "Choose a tutorial", + "ideas.gettingStartedTitle": "Getting Started", + "ideas.gettingStartedText": "New to Scratch? Try the Getting Started tutorial.", + "ideas.tryIt": "Try it!", + "ideas.activityGuidesTitle": "Activity Guides", + "ideas.activityGuidesText": "What do you want to make with Scratch? For each activity, you can try the Tutorial, download a set of Coding Cards, or view the Educator Guide.", + "ideas.animateANameTitle": "Animate a Name", + "ideas.animateANameDescription": "Animate the letters of your name, initials, or favorite word.", + "ideas.animateACharacterTitle": "Animate a Character", + "ideas.animateACharacterDescription": "Bring characters to life with animation.", + "ideas.makeMusicTitle": "Make Music", + "ideas.makeMusicDescription": "Choose instruments, add sounds, and press keys to play music.", + "ideas.createAStoryTitle": "Create a Story", + "ideas.createAStoryDescription": "Choose characters, add conversation, and bring your story to life.", + "ideas.chaseGameTitle": "Make a Chase Game", + "ideas.chaseGameDescription": "Make a game where you chase a character to score points.", + "ideas.videoSensingTitle": "Video Sensing", + "ideas.videoSensingDescription": "Interact with a project using the Video Sensing extension.", + "ideas.seeAllTutorials": "See All Tutorials", + "ideas.cardsTitle": "Get the Entire Collection of Coding Cards", + "ideas.cardsText": "With the Scratch Coding Cards, you can learn to create interactive games, stories, music, animations, and more!", + "ideas.downloadPDF": "Download PDF", + "ideas.starterProjectsTitle": "Starter Projects", + "ideas.starterProjectsText": "You can play with Starter Projects and remix them to make your own creations.", + "ideas.starterProjectsButton": "Explore Starter Projects", + + "ideas.tttHeader": "Things to Try", + "ideas.tttBody": "What do you want to make with Scratch? For each activity, you can try the Tutorial, download a set of Activity Cards, or view the Educator Guide.", + "ideas.cardsHeader": "Get the Entire Collection of Activity Cards", + "ideas.cardsBody": "With the Scratch Activity Cards, you can learn to create interactive games, stories, music, animations, and more!", + "ideas.cardsDownload": "Download PDF", + "ideas.cardsPurchase": "Purchase Printed Set", + "ideas.starterProjectsHeader": "Starter Projects", + "ideas.starterProjectsBody": "You can play with Starter Projects to get ideas for making your own projects.", + "ideas.starterProjectsPlay": "Play with Starter Projects", + "ideas.offlineEditorHeader": "Offline Editor", + "ideas.offlineEditorBody": "To create projects without an Internet connection, you can download the offline editor.", + "ideas.questionsHeader": "Questions", + "ideas.questionsBody": "Have more questions? See the Frequently Asked Questions or visit the Help with Scripts Forum.", + "ttt.tutorial": "Tutorial", + "tile.guides": "See Cards and Guides", + "tile.tryIt": "Try It", + "ttt.placeholder": "Placeholder text", + "ttt.tutorialSubtitle": "Find out how to make this project using a step-by-step tutorial in Scratch.", + "ttt.activityTitle": "Activity Cards", + "ttt.activitySubtitle": "Explore new coding ideas using this set of illustrated cards you can print out.", + "ttt.educatorTitle": "Educator Guide", + "ttt.educatorSubtitle": "Use this educator guide to plan and lead a one-hour Scratch workshop.", + "ttt.open": "Open", + "ttt.MakeItFlyTitle": "Make It Fly", + "ttt.MakeItFlyDescription": "Animate the Scratch Cat, The Powerpuff Girls, or even a taco!", + "ttt.AnimateYourNameTitle": "Animate a Name", + "ttt.AnimateYourNameDescription": "Animate the letters of your username, initials, or favorite word.", + "ttt.RaceTitle": "Race to the Finish", + "ttt.RaceDescription": "Make a game where two characters race each other.", + "ttt.MakeMusicTitle": "Make Music", + "ttt.MakeMusicDescription": "Choose instruments, add sounds, and press keys to play music.", + "ttt.HideAndSeekTitle": "Hide and Seek", + "ttt.HideAndSeekDescription": "Make a hide-and-seek game with characters that appear and disappear.", + "ttt.StoryTitle": "Create a Story", + "ttt.StoryDescription": "Choose characters, add conversation, and bring your story to life.", + "ttt.FashionTitle": "Fashion Game", + "ttt.FashionDescription": "Make a game where you dress a character with different clothes and styles.", + "ttt.PongTitle": "Pong Game", + "ttt.PongDescription": "Make a bouncing ball game with sounds, points, and other effects.", + "ttt.DanceTitle": "Let's Dance", + "ttt.DanceDescription": "Design an animated dance scene with music and dance moves.", + "ttt.CatchTitle": "Catch Game", + "ttt.CatchDescription": "Make a game where you catch things falling from the sky.", + "ttt.VirtualPetTitle": "Virtual Pet", + "ttt.VirtualPetDescription": "Create an interactive pet that can eat, drink, and play." +} diff --git a/src/views/ideas/ttt.json b/src/views/ideas/ttt.json new file mode 100644 index 000000000..57b053adf --- /dev/null +++ b/src/views/ideas/ttt.json @@ -0,0 +1,56 @@ +[ + { + "title": "ideas.animateANameTitle", + "description": "ideas.animateANameDescription", + "thumbImage": "/images/ideas/activities/animate-a-name-thumb.jpg", + "modalImage": "/images/ideas/activities/animate-a-name-modal.jpg", + "tutorialUrl": "name", + "cardsUrl": "cards.nameCardsLink", + "guideUrl": "guides.nameGuideLink" + }, + { + "title": "ideas.animateACharacterTitle", + "description": "ideas.animateACharacterDescription", + "thumbImage": "/images/ideas/activities/animate-a-character-thumb.jpg", + "modalImage": "/images/ideas/activities/animate-a-character-modal.jpg", + "tutorialUrl": "animate-a-character", + "cardsUrl": "cards.animateACharacterCardsLink", + "guideUrl": "guides.animateACharacterGuideLink" + }, + { + "title": "ideas.makeMusicTitle", + "description": "ideas.makeMusicDescription", + "thumbImage": "/images/ideas/activities/make-music-thumb.jpg", + "modalImage": "/images/ideas/activities/make-music-modal.jpg", + "tutorialUrl": "music", + "cardsUrl": "cards.makeMusicCardsLink", + "guideUrl": "guides.makeMusicGuideLink" + }, + { + "title": "ideas.createAStoryTitle", + "description": "ideas.createAStoryDescription", + "thumbImage": "/images/ideas/activities/create-a-story-thumb.jpg", + "modalImage": "/images/ideas/activities/create-a-story-modal.jpg", + "tutorialUrl": "tell-a-story", + "cardsUrl": "cards.createAStoryCardsLink", + "guideUrl": "guides.createAStoryGuideLink" + }, + { + "title": "ideas.chaseGameTitle", + "description": "ideas.chaseGameDescription", + "thumbImage": "/images/ideas/activities/chase-game-thumb.jpg", + "modalImage": "/images/ideas/activities/chase-game-modal.jpg", + "tutorialUrl": "chase-game", + "cardsUrl": "cards.chaseGameCardsLink", + "guideUrl": "guides.chaseGameGuideLink" + }, + { + "title": "ideas.videoSensingTitle", + "description": "ideas.videoSensingDescription", + "thumbImage": "/images/ideas/activities/video-sensing-thumb.jpg", + "modalImage": "/images/ideas/activities/video-sensing-modal.jpg", + "tutorialUrl": "video-sensing", + "cardsUrl": "cards.videoSensingCardsLink", + "guideUrl": "guides.videoSensingGuideLink" + } +] diff --git a/static/images/ideas/activities/animate-a-character-modal.jpg b/static/images/ideas/activities/animate-a-character-modal.jpg new file mode 100644 index 000000000..01db1b5c0 Binary files /dev/null and b/static/images/ideas/activities/animate-a-character-modal.jpg differ diff --git a/static/images/ideas/activities/animate-a-character-thumb.jpg b/static/images/ideas/activities/animate-a-character-thumb.jpg new file mode 100644 index 000000000..1fddfb5c5 Binary files /dev/null and b/static/images/ideas/activities/animate-a-character-thumb.jpg differ diff --git a/static/images/ideas/activities/animate-a-name-modal.jpg b/static/images/ideas/activities/animate-a-name-modal.jpg new file mode 100644 index 000000000..0b7d0662e Binary files /dev/null and b/static/images/ideas/activities/animate-a-name-modal.jpg differ diff --git a/static/images/ideas/activities/animate-a-name-thumb.jpg b/static/images/ideas/activities/animate-a-name-thumb.jpg new file mode 100644 index 000000000..391eb8971 Binary files /dev/null and b/static/images/ideas/activities/animate-a-name-thumb.jpg differ diff --git a/static/images/ideas/activities/chase-game-modal.jpg b/static/images/ideas/activities/chase-game-modal.jpg new file mode 100644 index 000000000..ea80e60e3 Binary files /dev/null and b/static/images/ideas/activities/chase-game-modal.jpg differ diff --git a/static/images/ideas/activities/chase-game-thumb.jpg b/static/images/ideas/activities/chase-game-thumb.jpg new file mode 100644 index 000000000..6e74c2128 Binary files /dev/null and b/static/images/ideas/activities/chase-game-thumb.jpg differ diff --git a/static/images/ideas/activities/create-a-story-modal.jpg b/static/images/ideas/activities/create-a-story-modal.jpg new file mode 100644 index 000000000..5b2e1e0fc Binary files /dev/null and b/static/images/ideas/activities/create-a-story-modal.jpg differ diff --git a/static/images/ideas/activities/create-a-story-thumb.jpg b/static/images/ideas/activities/create-a-story-thumb.jpg new file mode 100644 index 000000000..6fc76abcd Binary files /dev/null and b/static/images/ideas/activities/create-a-story-thumb.jpg differ diff --git a/static/images/ideas/activities/make-music-modal.jpg b/static/images/ideas/activities/make-music-modal.jpg new file mode 100644 index 000000000..4fe12554f Binary files /dev/null and b/static/images/ideas/activities/make-music-modal.jpg differ diff --git a/static/images/ideas/activities/make-music-thumb.jpg b/static/images/ideas/activities/make-music-thumb.jpg new file mode 100644 index 000000000..a00248320 Binary files /dev/null and b/static/images/ideas/activities/make-music-thumb.jpg differ diff --git a/static/images/ideas/activities/video-sensing-modal.jpg b/static/images/ideas/activities/video-sensing-modal.jpg new file mode 100644 index 000000000..9018af521 Binary files /dev/null and b/static/images/ideas/activities/video-sensing-modal.jpg differ diff --git a/static/images/ideas/activities/video-sensing-thumb.jpg b/static/images/ideas/activities/video-sensing-thumb.jpg new file mode 100644 index 000000000..b87690652 Binary files /dev/null and b/static/images/ideas/activities/video-sensing-thumb.jpg differ diff --git a/static/images/ideas/activity-cards-icon.svg b/static/images/ideas/activity-cards-icon.svg new file mode 100644 index 000000000..3accb5a11 --- /dev/null +++ b/static/images/ideas/activity-cards-icon.svg @@ -0,0 +1,18 @@ + + + + Resources/Activity Cards + Created with Sketch. + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/bulb-icon.svg b/static/images/ideas/bulb-icon.svg new file mode 100644 index 000000000..75bc5e617 --- /dev/null +++ b/static/images/ideas/bulb-icon.svg @@ -0,0 +1,20 @@ + + + + Tutorials/Light Bulb + Created with Sketch. + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/cards-illustration.svg b/static/images/ideas/cards-illustration.svg new file mode 100644 index 000000000..9418706d9 --- /dev/null +++ b/static/images/ideas/cards-illustration.svg @@ -0,0 +1,489 @@ + + + + coding-cards-illustration + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/download-icon.svg b/static/images/ideas/download-icon.svg new file mode 100644 index 000000000..f3fe8c6e4 --- /dev/null +++ b/static/images/ideas/download-icon.svg @@ -0,0 +1,20 @@ + + + + General/File Upload + Created with Sketch. + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/educator-guide-icon.svg b/static/images/ideas/educator-guide-icon.svg new file mode 100644 index 000000000..52b42dd78 --- /dev/null +++ b/static/images/ideas/educator-guide-icon.svg @@ -0,0 +1,18 @@ + + + + Resources/Educator Guide + Created with Sketch. + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/getting-started-illustration.svg b/static/images/ideas/getting-started-illustration.svg new file mode 100644 index 000000000..ae29d001d --- /dev/null +++ b/static/images/ideas/getting-started-illustration.svg @@ -0,0 +1,25 @@ + + + + Image + Created with Sketch. + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/left-juice.png b/static/images/ideas/left-juice.png new file mode 100644 index 000000000..0c5dd016b Binary files /dev/null and b/static/images/ideas/left-juice.png differ diff --git a/static/images/ideas/masthead-illustration.svg b/static/images/ideas/masthead-illustration.svg new file mode 100644 index 000000000..d0bb08066 --- /dev/null +++ b/static/images/ideas/masthead-illustration.svg @@ -0,0 +1,602 @@ + + + + Illustrations + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/right-juice.png b/static/images/ideas/right-juice.png new file mode 100644 index 000000000..22b346f38 Binary files /dev/null and b/static/images/ideas/right-juice.png differ diff --git a/static/images/ideas/starter-projects-illustration.svg b/static/images/ideas/starter-projects-illustration.svg new file mode 100644 index 000000000..a6ff93b1d --- /dev/null +++ b/static/images/ideas/starter-projects-illustration.svg @@ -0,0 +1,216 @@ + + + + starter projects illustration + Created with Sketch. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/static/images/ideas/try-it-icon.svg b/static/images/ideas/try-it-icon.svg new file mode 100644 index 000000000..a98587188 --- /dev/null +++ b/static/images/ideas/try-it-icon.svg @@ -0,0 +1,20 @@ + + + + Action Menu/Actions/Surprise + Created with Sketch. + + + + + + + + + + + + + + + \ No newline at end of file