{"id":17482896,"url":"https://github.com/creationix/sousaball","last_synced_at":"2025-07-15T06:33:19.222Z","repository":{"id":622191,"uuid":"261815","full_name":"creationix/sousaball","owner":"creationix","description":"social networking game project using html5 canvas for the front end and node.js/V8 for the backend.","archived":false,"fork":false,"pushed_at":"2014-03-16T04:06:44.000Z","size":895,"stargazers_count":45,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-24T04:14:02.881Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://sousaball.creationix.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"nitrous-io/goop","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/creationix.png","metadata":{"files":{"readme":"README.markdown","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2009-07-27T19:03:07.000Z","updated_at":"2023-09-08T16:25:37.000Z","dependencies_parsed_at":"2022-07-07T15:40:59.325Z","dependency_job_id":null,"html_url":"https://github.com/creationix/sousaball","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/creationix%2Fsousaball","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/creationix%2Fsousaball/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/creationix%2Fsousaball/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/creationix%2Fsousaball/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/creationix","download_url":"https://codeload.github.com/creationix/sousaball/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248145389,"owners_count":21055117,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-18T23:47:00.155Z","updated_at":"2025-04-10T02:43:44.784Z","avatar_url":"https://github.com/creationix.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SousaBall\n\nSousaBall is an experiment into social networking using JavaScript and the canvas tag.\n\n**UPDATE**  This README is a few years out of date.  I'm currently updating the code to run on top of my new tedit/js-git platform.\n\nWhat follows is the original README from before I even had a github account.\n\n-----------------------------------------------\n\n\nA live server it hosted at \u003chttp://creationix.com:7777/\u003e\n\n## Technical Background\n\nThe front-end uses canvas, xhtml, css, and a healthy dose of JavaScript.  Nothing new here, except maybe for the canvas usage.\n\nThe back-end however is built using node js \u003chttp://nodejs.org/\u003e.  This is a purely evented JavaScript framework for building servers.  The app.js file is actually an HTTP server, in production it can run behind a reverse proxy to offload downloading of the static resources.  In development, it can serve it's own files.  Node is extremely fast since it's based on events and uses the Google V8 JavaScript engine.\n\n## Playing the Game\n\nSousaball is a side-view platform game.  The goal depends on the programming of the level, but usually it consists of getting all the coins and advancing to the next level.\n\nEventually the project will evolve into a social networking site where members create and share levels.  They will be able to link to each others levels. Also when playing a level, there will be a option to see others in the same \"room\" and interact with them in real-time.  That way you can work as a team to solve some puzzle.\n\n## The Editor\n\nSousaBall comes with a web based level editor.  Currently it can only edit the tiles of existing levels and there is no authentication.  To get to it, simple append ;edit to the end of any level url and you'll be editing that level.  If you would like a level created for your own use, send me an email and I'll create it.  Eventually I'll have this completely automated through the web interface and you'll be able to create your own levels once registered and signed in.\n\n## Running your own server\n\nSousaball works out of the box using the modules provided in the [Ivy][] distribution.\n\nOnce ivy is installed and it's `bin` folder is in your path.  Simply clone this repo and run `spark`\n\n    git clone http://github.com/creationix/sousaball.git\n    cd sousaball\n    spark\n\nThen go to \u003chttp://localhost:3000/\u003e and have fun.\n\n## Roadmap\n\n * User Registration\n * Level authentication\n * Ability to program secrets/triggers through the GUI editor\n * Ability to create new levels through the website\n * Informational pane around game frame with more info\n * iPad support\n * Improve the physics engine\n   * Allow for moving platforms\n   * Add in enemies\n\n[Ivy]: http://github.com/creationix/ivy/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcreationix%2Fsousaball","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcreationix%2Fsousaball","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcreationix%2Fsousaball/lists"}