{"id":17437362,"url":"https://github.com/blixt/starbounded","last_synced_at":"2025-03-01T11:33:36.696Z","repository":{"id":13969676,"uuid":"16670256","full_name":"blixt/starbounded","owner":"blixt","description":"A Chrome app that lets you open your Starbound directory and view the worlds etc. within.","archived":false,"fork":false,"pushed_at":"2015-01-30T00:18:31.000Z","size":5234,"stargazers_count":53,"open_issues_count":10,"forks_count":6,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-02-24T06:55:39.161Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://blixt.github.io/starbounded/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blixt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-02-09T16:38:45.000Z","updated_at":"2025-01-13T09:32:35.000Z","dependencies_parsed_at":"2022-08-28T12:20:21.328Z","dependency_job_id":null,"html_url":"https://github.com/blixt/starbounded","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/blixt%2Fstarbounded","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blixt%2Fstarbounded/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blixt%2Fstarbounded/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blixt%2Fstarbounded/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blixt","download_url":"https://codeload.github.com/blixt/starbounded/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241360981,"owners_count":19950372,"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-17T11:54:47.060Z","updated_at":"2025-03-01T11:33:36.216Z","avatar_url":"https://github.com/blixt.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"StarboundEd\n===========\n\nThis is a web app that lets you open your Starbound directory and view\nthe worlds etc. within.\n\n![](http://i.imgur.com/qNY45kx.jpg)\n\n![](http://i.imgur.com/zCIIBNg.png)\n\nThis project is under an MIT license.\n\n\nTrying it out\n-------------\n\nThe easiest way to try it out is to go to\n[the demo page](http://blixt.github.io/starbounded/).\n\n\nInstalling the Chrome app\n-------------------------\n\nFor now, you'll have to follow the steps below to run this Chrome app.\nIn the future it will be available on the Chrome Web Store (for free,\nof course!)\n\n\nSetting up for development\n--------------------------\n\nFirst of all, you'll need to have some things installed:\n\n* [Chrome](https://www.google.com/chrome/) 32 or later\n* [Node.js](http://nodejs.org/) (for NPM)\n\nIf you have all of the above, start by cloning this repository. Then\nrun this in the cloned directory:\n\n```bash\n$ npm install\n# ... lots of output ...\n\n$ node_modules/gulp/bin/gulp.js\n[gulp] Using file /.../starbounded/gulpfile.js\n[gulp] Working directory changed to /.../starbounded\n[gulp] Running 'browserify-worker-assets'...\n[gulp] Running 'browserify-worker-world'...\n[gulp] Finished 'browserify-worker-world' in 486 ms\n[gulp] Finished 'browserify-worker-assets' in 545 ms\n[gulp] Running 'browserify-app'...\n[gulp] Running 'browserify-web'...\n[gulp] Finished 'browserify-app' in 155 ms\n[gulp] Finished 'browserify-web' in 154 ms\n[gulp] Running 'default'...\n[gulp] Finished 'default' in 5.9 μs\n```\n\n\n### Web viewer\n\nIf you want to try the simple web viewer, you just need to serve the\ncurrent directory somehow. One easy way to do so is to use the `serve`\npackage:\n\n```bash\n$ npm install -g serve\n# ... lots of output ...\n\n$ serve\nserving /.../starbounded on port 3000\n```\n\nNow you can open http://localhost:3000/web.html in your browser.\n\n\n### Chrome app\n\nTo actually run this Chrome app, you need to add it to Chrome. Here's\nhow:\n\n* In Chrome, navigate to `chrome://extensions` (or go to *Settings* and\n  click *Extensions*)\n* Ensure that *Developer mode* is checked\n* Click *Load unpacked extension...*\n* Select the directory that you cloned the source code to\n* The app should appear in the list\n\nTo launch the app, you can click the *Launch* link on the *Extensions*\npage, or you can launch it through any of the normal means of launching\na Chrome app.\n\n\nDependencies\n------------\n\nThis project has a number of dependencies that you may want to have a\nlook at, as they hold most of the logic for parsing Starbound files and\nrendering worlds.\n\n* [`starbound-assets`](https://github.com/blixt/js-starbound-assets)\n* [`starbound-world`](https://github.com/blixt/js-starbound-world)\n* [`starbound-files`](https://github.com/blixt/js-starbound-files)\n\n\nTips \u0026 tricks\n-------------\n\n### gulp\n\nTo avoid having to write that long path to run [gulp][gulpjs], you can\ninstall gulp globally:\n\n```bash\n$ npm install -g gulp\n```\n\nNow you only need to run this to run gulp:\n\n```bash\n$ gulp\n```\n\nIf you want gulp to automatically build whenever you change a file, run\nthis instead of `gulp`:\n\n```bash\n$ gulp watch\n```\n\nIt will now watch for changes to any of the source files.\n\n\nTechnology\n----------\n\nThis project is written to be run completely in a browser. Here's some\ntechnologically interesting things that this project does/has:\n\n* Rendering big 2D worlds segmented onto tiles of canvases\n* Reading parts of huge binary files (hundreds of MBs) on user's disk\n* Parallelising work in multiple Web Workers\n* Applying image operations such as hue shifting on the fly\n* CommonJS `require` and ECMAScript 6 (Harmony) code using Browserify\n* Bundling code as a Chrome app to improve experience\n\n\n### Obstacles\n\nWhile it's amazing that browsers can support the things that this are\ndone in this project, there were some snags (which will hopefully be\nresolved some time in the future):\n\n* Chrome is 50x slower than Firefox at some things\n* Firefox doesn't allow opening or drag/dropping directories\n* Chrome doesn't support `image-rendering: pixelated` for `\u003ccanvas\u003e`\n\n\n### Future\n\nIn the future, these technologies may also be used in this project:\n\n* Retrieving real-time changes to the world through Web Sockets\n* Using a fragment shader in WebGL to render tiles much faster\n* Running a Lua VM in a Web Worker\n* Running a TCP server that interacts with the game (Chrome app)\n\n\n[gulpjs]: http://gulpjs.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblixt%2Fstarbounded","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblixt%2Fstarbounded","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblixt%2Fstarbounded/lists"}