GistRun runs and edits GitHub Gists (surprise). GistRun is built with Aurelia, uses the GitHub API and is hosted on GitHub pages. CloudFlare provides DNS and Heruku hosts GistRun's integration with GitHub's OAuth web application flow. Many thanks to the providers of these free libraries and services!
todo
todo
To run the app, follow these steps.
- Ensure that NodeJS is installed. This provides the platform on which the build tooling runs.
- From the project folder, execute the following command:
npm install
- Ensure that Gulp is installed globally. If you need to install it, use the following command:
npm install -g gulp
Note: Gulp must be installed globally, but a local version will also be installed to ensure a compatible version is used for the project.
- Ensure that jspm is installed globally. If you need to install it, use the following command:
npm install -g jspm
Note: jspm must be installed globally, but a local version will also be installed to ensure a compatible version is used for the project.
Note: jspm queries GitHub to install semver packages, but GitHub has a rate limit on anonymous API requests. It is advised that you configure jspm with your GitHub credentials in order to avoid problems. You can do this by executing
jspm registry config github
and following the prompts. If you choose to authorize jspm by an access token instead of giving your password (see GitHubSettings > Personal Access Tokens
),public_repo
access for the token is required.
- Install the client-side dependencies with jspm:
jspm install -y
Note: Windows users, if you experience an error of "unknown command unzip" you can solve this problem by doing
npm install -g unzip
and then re-runningjspm install
.
- To run the app, execute the following command:
gulp watch
- Browse to http://localhost:9000 to see the app. You can make changes in the code found under
src
and the browser should auto-refresh itself as you save files.
git branch -D gh-pages
git checkout -b gh-pages
gulp build
jspm bundle 'config' + 'main' + 'util' + 'editing/*' + 'github/*' + 'import/*' + 'ui/*' + 'ui/embed/*' + 'worker/*' + 'ui/embed/*.html!text' + 'ui/*.html!text' + npm:aurelia-framework@1.0.0-beta.1.0.8 + npm:aurelia-bootstrapper@1.0.0-beta.1.0.2 + npm:aurelia-templating-binding@1.0.0-beta.1.0.2 + npm:aurelia-templating-resources@1.0.0-beta.1.0.4 + npm:aurelia-templating-router@1.0.0-beta.1.0.5 + npm:aurelia-loader-default@1.0.0-beta.1.0.2 + npm:aurelia-history-browser@1.0.0-beta.1.0.1 + alertify.js + split.js + text dist/bundle.js --inject
git add dist/bundle.js -f
git add jspm_packages/system.js -f
git add jspm_packages/github/ajaxorg/ace-builds@1.2.3 -f
git add jspm_packages/github/github/octicons@3.3.0/octicons.css -f
git add jspm_packages/github/primer/primer@2.5.0/css/primer.css -f
git add jspm_packages/github/github/octicons@3.3.0/octicons.woff -f
Remove-Item -Recurse -Force build
Remove-Item -Recurse -Force src
Remove-Item -Recurse -Force test
Remove-Item "gulpfile.js"
Remove-Item "jsconfig.json"
Remove-Item "karma.conf.js"
Remove-Item "LICENSE"
Remove-Item "package.json"
Remove-Item "protractor.conf.js"
Remove-Item "README.md"
Remove-Item "wallaby.js"
Remove-Item ".editorconfig"
Remove-Item ".eslintignore"
Remove-Item ".eslintrc"
Remove-Item ".npmignore"
Remove-Item "aurelia.protractor.js"
git add -u
git commit -m "chore(gh-pages): publish"
git push --set-upstream origin gh-pages -f
git checkout master
Remove-Item -Recurse -Force jspm_packages
jspm install
gulp watch