|This article or section contains information about a feature from a future version of Scratch that is unreleased and is subject to change. Please cite any info added in order to prevent speculation.|
|This page has links to outside of the Scratch website and Wikipedia. Always remember to stay safe when using the internet since we can't guarantee the safety of other sites.|
Scratch 3.0 is an announced version of Scratch to succeed Scratch 2.0. It has been revealed that Google will affiliate with Scratch for this release. It has also been announced that Scratch Blocks, a library forked from Google's Blockly, will be used. Though it was previously stated that the horizontal connection of blocks used in ScratchJr will be applied alongside with Scratch's vertical blocks, it has been stated that there are no plans to include horizontal Scratch Blocks at this time.
Though the public can currently test Scratch 3.0, a public alpha release is planned for the first quarter of 2018. The final release date is unknown. No name has officially been decided for the next version of Scratch, but according to Scratch Team member Andrew Sliwinski (thisandagain), it will most likely be called "Scratch 3.0", following the trend.
Scratch 3.0 will be a new implementation of a full Scratch editor and interpreter like Scratch 2.0. For Scratch 1.x, a downloaded project ran projects in Smalltalk. Online, the Java Player was used with the Flash Player becoming an option in 2011. Scratch 2.0 ditched Java in favor of using Flash both online and offline, but project players for HTML5, most notably the HTML5 Player, the Phosphorus Player, and the Sulfurous Player were developed as open-source alternatives.
The first prototype of Scratch 3.0 was released to participants of Google's Youth I/O. Scratch 3.0 worked with LEGO WeDo 2.0.
At the 2016 Scratch Conference, Scratch 3.0 was discussed in the "What's Next for Scratch?" panel. It was mentioned that Scratch 3.0 had a barebones VM and an audio engine. The Scratch Team stated that they got Scratch 3.0 to beep the previous day. 
A simple roadmap for Scratch was mentioned at 2016's Scratch Conference. The Scratch Team wanted to add a rendering engine in a few weeks. They planned to have a prototype by the end of 2016, and an alpha by the end of 2017.  Currently, the editor of Scratch 3.0 is available here.
The following is a list of new features that Scratch 3.0 might or will contain:
- Custom reporters.
- Text-drawing pen blocks.
- iOS and Android support via an HTML5 based editor. 
- A 16:9 option for higher quality projects.
- Projects (possibly) play at 60 ticks and frames per second, rather than 30 (and previously 40).  
- "Set pen transparency to" and "change pen transparency by" blocks. 
- Sound effect blocks which change how a sound sounds.
- A “[string] contains [string]” block that reports whether the first string contains the second.
- An “item # of [string] in [list]” block that reports the item number of the first match of the string, or 0 if no such value is found.
- Several extra options for the “touching ()?” boolean, including “any edge”, “mouse-position”, and “left edge”.
- A “glide [number] secs to [drop down]” block that acts like ”go to [drop down]” with glide.
- The blocks interface
- Virtual machine (the thing that makes a Scratch program run / work / execute)
- Rendering engine
- Audio engine
- "Editor" The "wrapper" for all of the various pieces of Scratch 3.0.
- MIT Media Lab. (17/5/2016). "Scratch Blocks will support both horizontal and vertical grammars." https://medium.com/mit-media-lab/scratch-google-next-generation-of-programming-blocks-for-kids-5f377ec9ff0#.6gghcrtlq
- thisandagain. (22/07/2017). "We have no plans to use the horizontal grammar for Scratch 3.0 at this time." https://scratch.mit.edu/discuss/topic/199574/?page=149#post-2737510
- thisandagain. (08/06/2017). "We are expecting the public alpha to be available in the first quarter of 2018." https://scratch.mit.edu/users/thisandagain/#comments-36571385
- thisandagain. (18/5/2016). "No name has been decided, but most likely it will simply be called 'Scratch 3.0'." https://scratch.mit.edu/users/thisandagain/#comments-23456121
- ErnieParke. (23/12/2016). https://scratch.mit.edu/discuss/topic/232115/
- My Nguyen. (10/6/2016). "[Kids] got a chance to play with the very first prototype of Scratch 3.0 with LEGO WeDo 2.0." https://medium.com/scratchfoundation-blog/the-next-generation-of-scratch-d83426eb9ca9#.tdxr70h5g
- tmickel. (13/6/2016). "Implement custom reporters. [title]" https://github.com/LLK/scratch-vm/issues/79
- thisandagain. (16/6/2016). "We are actively discussing options for "text" blocks for Scratch 3.0." https://github.com/LLK/scratch-flash/issues/1142#issuecomment-226472568
- mres. (19/5/2016). "Scratch Blocks will be suitable for a broad range of devices (from mobile phones to desktops)." https://scratch.mit.edu/discuss/topic/199904/
- thisandagain. (10/7/2016). "We are considering [a 16:9 ratio], though we are not 100% sure how we will deal with backwards compatibility quite yet. Stay tuned." https://scratch.mit.edu/discuss/topic/199574/?page=25#post-2090971
- MathWizz. (6/9/2016). "Scratch 1.4 runs at 40 fps" https://scratch.mit.edu/discuss/post/2194139/
- tmickel. (2/7/2016). "Run threads for 60fps" https://github.com/LLK/scratch-vm/commit/0ae0ea5f22deeadb84fdeb0a746e3879625e4baf
- technoboy10. (3/9/2016). "The ST is considering making Scratch 3.0 run at 60fps." https://scratch.mit.edu/discuss/post/2188059/
- thisandagain. (16/2/2017). "Decision from design discussion:
change pen transparency by  :: pen
set pen transparency to  :: pen" https://github.com/LLK/scratch-vm/issues/412#issuecomment-280118002
- thisandagain. (10/8/2017). ‘Implement “[string] contains [string]” reporter.[title]’ https://github.com/LLK/scratch-gui/issues/601
- thisandagain. (10/8/2017). ‘Implement “item # of [string] in [dropdown]”.[title]’ https://github.com/LLK/scratch-gui/issues/600
- thisandagain. (10/8/2017). ‘Update “touching [drop down]?” reporter.[title]’ https://github.com/LLK/scratch-gui/issues/599
- thisandagain. (10/8/2017). ‘Implement “glide [number] secs to [drop down]”.[title]’ https://github.com/LLK/scratch-gui/issues/598