{"id":18725770,"url":"https://github.com/binaryage/site","last_synced_at":"2025-04-12T16:26:36.533Z","repository":{"id":3066718,"uuid":"4089428","full_name":"binaryage/site","owner":"binaryage","description":"An umbrella project for our web sites at binaryage.com","archived":false,"fork":false,"pushed_at":"2023-04-18T10:53:21.000Z","size":926,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-26T10:52:20.258Z","etag":null,"topics":["binaryage","website"],"latest_commit_sha":null,"homepage":"https://www.binaryage.com","language":"Ruby","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/binaryage.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-04-20T17:43:40.000Z","updated_at":"2021-11-03T12:33:46.000Z","dependencies_parsed_at":"2023-07-06T08:19:22.780Z","dependency_job_id":null,"html_url":"https://github.com/binaryage/site","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/binaryage%2Fsite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryage%2Fsite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryage%2Fsite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/binaryage%2Fsite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/binaryage","download_url":"https://codeload.github.com/binaryage/site/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248595678,"owners_count":21130565,"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":["binaryage","website"],"created_at":"2024-11-07T14:11:53.289Z","updated_at":"2025-04-12T16:26:36.507Z","avatar_url":"https://github.com/binaryage.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BinaryAge Site\n\nThis is an umbrella project to organize sites under [*.binaryage.com](http://www.binaryage.com).\n\n  * local development server\n  * maintenance utilities\n  * deploying utilities\n\n### The idea\n\nThe idea is to have one repo with all subdomains as separate repositories, each tracked as an individual git submodule. \nIndividual sites have usually a dependency on [shared](/binaryage/shared) - again tracked as a git submodule. \nThis should give us tools to reconstruct the whole site to any point in history while having granular control of commit \nrights to individual subdomains of the site. Transparency via GitHub is a bonus.\n\n    .\n    ├── www\n    │   ├── shared\n    │   ├── index.md\n    |   ...\n    ├── totalfinder-web\n    │   ├── shared\n    │   ├── index.md\n    |   ...\n    ├── totalspaces-web\n    │   ├── shared\n    │   ├── index.md\n    |   ...\n    ├── blog\n    ...\n\n### Shared stuff\n\nFiles which should be shared by all sites should go into [shared](/binaryage/shared) repo.\n\n  * [layouts](https://github.com/binaryage/shared/tree/master/layouts) - jekyll layout files, these won't be present in the \n  generated site\n  * [includes](https://github.com/binaryage/shared/tree/master/includes) - various includes for layout files, these won't be \n  present in the generated site\n  * [root](https://github.com/binaryage/shared/tree/master/root) - these will be generated and then moved to the \n  root level of the site, useful for generating the same page for all sites, like 404.html\n  * [img](https://github.com/binaryage/shared/tree/master/img) - shared images\n  * [css](https://github.com/binaryage/shared/tree/master/css) - shared css files, we use stylus for preprocessing and \n  concatenation\n  * [js](https://github.com/binaryage/shared/tree/master/js) - shared javascript/coffeescript files, we have defined \n  [.list file](https://github.com/binaryage/shared/blob/master/js/code.list) for concatenation\n  * ...\n\n### Prerequisities\n\n  * [nginx](http://nginx.org)\n  * [ruby](http://www.ruby-lang.org), [rake](http://rake.rubyforge.org), [rubygems](http://rubygems.org)\n  * [node.js](http://nodejs.org), [yarn](https://yarnpkg.com)\n\n### Bootstrap local development\n\n    git clone git@github.com:binaryage/site.git\n    cd site\n    rake init\n\nThe `init` task does [several things](https://github.com/binaryage/site/blob/master/rakefile):\n\n  * inits and updates all git submodules\n  * pins all submodules to latest web branch tips\n\n### Launch development server\n\n  * make sure you have your `/etc/hosts` properly configured, see `rake hosts`\n\n**To run the full dev server**:\n\nin one terminal session run nginx proxy:\n\n    rake proxy\n\nin another terminal session run the jekyll debug server:\n\n    rake serve what=www,totalspaces,blog\n\nNote that live reloading and css watching is enabled by default. Using [browser-sync](https://browsersync.io).\n\n### Deployment\n\nJust make changes in some sub-site repo and push your changes into its `web` branch.\n\nWe have setup `hookgun` as post-recieve hook which will build the sub-site and then will push baked static site files back \ninto its `gh-pages` branch. [GitHub Pages](//pages.github.com) will do the deployment automatically. It will also move \npointer of submodule here in the `site` repo.\n\nDon't forget to push `shared` submodule first if you have modified some shared stuff.\n\n### Update from remote\n\nIf you want to get incrementally to remote state without doing `rake init`, you may reset your repo to remote state via \n`rake reset` (**will destroy your local changes!!!**).\n\nAlternatively you may always use your git-fu to non-destructively pull from remotes (`git submodule foreach` is your friend).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinaryage%2Fsite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinaryage%2Fsite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinaryage%2Fsite/lists"}