GithubHelp home page GithubHelp logo

jkelkar / woofjs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from stevekrouse/woofjs

0.0 0.0 0.0 87.1 MB

Learnable JavaScript

Home Page: http://woofjs.com

License: MIT License

JavaScript 24.38% HTML 75.62%

woofjs's Introduction

WoofJS license Code Triagers Badge cloud9

logo-dog-text.png

WoofJS is a learnable JavaScript framework for creating games by The Coding Space.

WoofJS was created to be the next step after block-based coding in Scratch. For more details, you can read our announcement post.

Getting Started (woofjs.com)

screenshot 2017-03-03 at 10 04 05 am

We recommend that you get started with WoofJS on woofjs.com, because you...

  • can get started with zero set-up
  • use our interactive and searchable documentation
  • get access to our WoofJS curriculum
  • create an account to save your work
  • use our text-editor fine-tuned for use with WoofJS, including code-hints and type-a-head
  • iterate quickly with live updates to your output as you type

Getting Started (outside woofjs.com)

Installing WoofJS

For development (which always grabs the latest version):

<script src="https://raw.githack.com/stevekrouse/WoofJS/master/woof.js"></script>

For production (which is tied to a specific commit hash):

Go to raw.githack.com and type this in:

https://github.com/stevekrouse/WoofJS/blob/master/woof.js

And grab the link on the left, which should look like:

<script src="https://rawcdn.githack.com/stevekrouse/WoofJS/8f46930383acf6e7bc6db6a9084014bd3cbdd44a/woof.js"></script>

Global mode

When you include the Woof script in your code, it defaults to creating a full-screen project and polluting your global namespace with Woof's methods.

We find not having to type "Woof." over and over again makes a huge difference for beginner programmers, especially those new to typing.

However, if you'd like to turn off this mode, simply add global="false" in your HTML script tag:

<script src="https://rawcdn.githack.com/stevekrouse/WoofJS/b41555bf/dist/woof.js" global="false"></script>

Then in your JavaScript, you'd need to create your project manually:

var project = new Woof({global: false, width: 300, height: 400})

var IMAGE_NAME = new project.Image({project: project, url: "https://woofjs.com/images/SMJjVCL.png"})

Full Screen

You can disable the fullScreen default by putting fullScreen=false in your JavaScript code and then manually setting the size you'd like it to be:

fullScreen = false
setBackdropSize(500, 300)

Note: setBackdropSize(x,y) only accepts number inputs. If you'd like your background to be a percentage of the screen size, you need to calculate that yourself:

// set the x to 50% of the window's width and y to 500px
setBackdropSize(window.innerWidth * (50/100), 500)

// every time the window resizes, recalculate the width from the `window.innerWidth` property
window.addEventListener("resize", () => {
  setBackdropSize(window.innerWidth * (50/100), 500)
})

Reporting a bug

Simply create an issue with a link to the simplest code you can create that would reproduce the bug, preferably on woofjs.com.

Contributing

WoofJS is used by hundreds of students from all over the world to build games and animations.

We'd love your help in making it even more learnable and dependable for them.

The WoofJS directory structure

woofjs.com

woofjs.com is hosted on Github pages from this repository. This means that all of the top-level URLs on woofjs.com must be in the top-level of the directory. This includes:

  • index.html
  • create.html
  • full.html
  • teach.html
  • user.html
  • login.html
  • favicon.png
  • etc

The documentation that you find on woofjs.com/create.html is contained within the docs folder.

WoofJS.com's Tutorials

WoofJS.com's tutorials actually live at an entirely different repo: https://github.com/stevekrouse/coding.space.

You can find them there in the woof/ subdirectory. If you'd like to contribute to the WoofJS curriculum, head on over to that repo.

Getting started

  1. We recommend using https://c9.io as your development environment -- when you create an account, it asks for a credit card, but it won't charge you.

  2. Create a new basic HTML workstation, and clone the Woof repository.

    git clone https://github.com/stevekrouse/WoofJS.git
    
  3. Set your git username: https://help.github.com/articles/setting-your-username-in-git/

  4. Install the npm dependencies.

    npm install
    
  5. Take a look at our issues and see if there are any issues that speak to you as good places to tackle first. Pay particular attention to issues labeled "good for beginners."

  6. Make sure that you are branching from a clean master.

    git checkout master
    

and git pull

  1. Create a new local branch to work on your issue -- use a descriptive branch name like in this example:

    git checkout -b more-pokemon-sprites
    
  2. Stage your changes to be committed.

    git add .
    
  3. Once you've made and staged your changes, commit them to your branch.

    git commit -m "add more pokemon sprites"
    
  4. Push your new branch (not master!) to the GitHub repo.

    git push origin more-pokemon-sprites
    
  5. Submit a pull request so your changes can be reviewed.

If you have any questions, please email steve at futureofcoding.org :)

License

MIT License, so do with our code as you will. If you want help using the code or integrating with WoofJS, we're happy to help :)

woofjs's People

Contributors

anshumanv avatar dilapitan avatar ganes1410 avatar gmarraro avatar hallpell avatar joebeachjoebeach avatar jwass91 avatar leesan11 avatar madduccino avatar nicolekelner avatar renestl avatar rsimari avatar ruffle1986 avatar sallymatson avatar stevegolden12 avatar stevekrouse avatar the-viking avatar truthgoddess avatar

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.