boxart
Tools for building animated html content and games.
A boilerplate for Responsive DOM based Open Web Games.
License: MIT License
Tools for building animated html content and games.
Continue to refine “minimum viable” layout framework. Should also serve as a css style guide.
Screen shot of profiler, gif, showing how to minimize # of layouts per interaction
Start the conversation about building games on the open web. This should happen before we introduce all of the specific tools we are developing to do so, but can touch on them at a high level.
Could have grunt tasks that make a versioning workflow interactive or flagable. This would help users who are new to git with their build process.
Provide an automated image packaging and chunking solution for SVG and binary images.
This loader will be all that gets used during active development so as to not package a sprite sheet on every local rebuild. It should internally generate a non-base64 dataUri of the image passed to it and create a style sheet that contains one item of the form:
:local(.someClass){
background-image: url(DATA_URI);
background-repeat: repeat;
}
With this generated style sheet we will then run the css-loader
and the style-loader
so that the resulting CSS is injected into the page at run time.
Ask the Coop to contribute art for the memory game. Specify format, colors, etc. for how we want art delivered. Coordinate collecting art for the demo game.
Follow on #51 to introduce BoxArt. Call out how it aligns with Bocoup philosophy. Follow template for introducing Grunt, Johnny-5, JQuery.
Investigate how to handle loading and unloading the data output by #38 so that we're sensitive to the memory footprint of the game/browser.
Create documentation to splain.
Create demo games as branches that can be deployed via Github Pages. The first one we'll do is a card matching memory style game. This game should be usable via screen reader.
Get folks together to talk about an overarching name/org etc for all of this repos various pieces
Write about the experience of implementing #18
Write a blog post about effective git strategies to use when building something based of a boilerplate repository.
Cover:
Align with Bocoup philosophy of diverse teams, inclusive workflows, etc.
Write tooling for webpack that helps to intelligently manage SVG assets. We might want to get some input from @Wilto about how we can make this as awesome as possible. Maybe investigate any grunticon optimizations and replicate here.
SVG Sprite Loader
#defid
Document system deps, outline the repo and how to work with it
Add screenshots of demo games at different resolutions, ratios, orientations to the README. List of what's cool about this.
Write tooling for webpack that helps with sound asset management. Each of these will be a new repo that can be maintained personally or by Bocoup or in some other org since they are not RWD Boilerplate specific. We'll just import them here as dependencies.
Webpack Audio Sprite Loader
.json
file.Should have drag and drop functionality and animation
/packages
/boxart-animated
/tests
/packages
/boxart-animated
Introduce demo games
Screenreader accessible?
Spec out for Isaac what we need, how long it will take. He is possibly available 5/5-5/6 but likely just part time due to other projects.
When an asset is needed by the application, we should be able to display it immediately. Networking is slow, so requesting the asset only when needed would introduce lag. We should be able to instruct the browser to download a set of assets ahead of time, so that when we need to display them to the user they are immediately available.
PreCaching:
Loading:
This is an optimization plugin that builds a sprite sheet from all of the image assets referenced in a given chunk and outputs a style sheet that contains rules referencing the main sprite sheet and using background position to display only relevant images. In this way production builds that utilize the plugin are able to achieve maximum GPU performance.
:local(.something), :local(.somethingElse) {
background-image: url(DATA_URI);
}
:local(.something) {
background-position: X y;
}
React components to help move keyboard focus around in a 2d or 3d context. This needs to be more than tabbing through the page. 50 elements to tab through takes too much time, need to be able to WASD or arrow around child elements.
Move RWD boiler to boxart/box-art boiler. Fix waffle, update blog post links
Add AppVeyor support for Windows CI.
Getting Sinon wired up with Karma is a pain because of the myriad of packages available on NPM. The boiler plate should come with some way to spy and mimic server responses.
Design game theme.
Coordinate with art vendor to create contracted art for 2 demo games.
Should we use the wiki or store documentation in the repo itself?
I'm personally a fan of in the repo.
Provide some kind of solution for spritesheet based animations in react components.
Document project tenants, and provide tips on eslint/testing expectations.
Physics Animations
Finish and integrate the webpack-audio-sprite-plugin
Webpack Audio Sprite Plugin
https://github.com/MattSurabian/webpack-audio-sprite-plugin
and
SoundJS Sheet Loader
Need a way to group control flow in a game so that you're not in individual property checking hell. Basically we need to build a linear state machine.
Scene Component
Class that provides helpers for animating objects, especially around timeout based cleanup tasks. Can create a hierarchy where the parent retains complete play/pause control over all its containing children.
Class that provides animation optimization for small animation pieces within a game. Think: falling stars around end game text.
Helpers that do things like return promises that resolve when a frame has been requested.
Similar to co but more lightweight and purpose built for a gaming animation use case
React component anchors, e.g. to enable highlighting objects with arrows and tooltips.
Setup Travis integration to use BrowserStack. Document the test:ci
task in the README
We should setup the QA Menu along with a sample production build webpack config that can use the ProvidePlugin
along with the UglifyPlugin
to completely remove QA code from the build.
Build memory game
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.