https://github.com/creationix/wheaty
JS-Git based application hosting platform
https://github.com/creationix/wheaty
Last synced: about 1 year ago
JSON representation
JS-Git based application hosting platform
- Host: GitHub
- URL: https://github.com/creationix/wheaty
- Owner: creationix
- License: mit
- Created: 2014-07-22T20:41:13.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2015-12-30T02:37:45.000Z (over 10 years ago)
- Last Synced: 2025-03-24T04:14:22.202Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 53.7 KB
- Stars: 45
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Wheaty
======
JS-Git based application hosting platform
## Development Usage
The easiest way to use this is with the `wheaty` CLI tool. To install this, simply do:
```sh
> npm install -g wheaty
```
Then when you want to test a site, just launch it by git url or path to local bare git repo.
(Hint, the [tedit chrome app](https://chrome.google.com/webstore/detail/tedit-development-environ/ooekdijbnbbjdfjocaiflnjgoohnblgf) can edit bare repos on the local hard-disk)
```sh
> wheaty git://github.com/creationix/creationix.com.git
```
Then open your browser to to see the site.
You override the port with the `PORT` environment variable.
The git branch can be changed with an extra argument.
```sh
> wheaty git://github.com/creationix/blog.git refs/tags/current
```
## Production Usage
The `wheaty-group` tool can be used to create an instant git based PaaS. Most the
creationix.com family of sites are running using this on a Rackspace server.
My production configs were at the time of writing are:
```js
var pathJoin = require('path').join;
var jsRuntime = require('wheaty-js-runtime');
module.exports = {
port: 8002,
user: "tim",
group: "tim",
cacheDir: pathJoin(__dirname, "../git"),
sites: {
"luvit.io": {
url: "git@github.com:luvit/luvit.io.git",
runtimes: { js: jsRuntime },
},
"tedit.creationix.com": {
url: "git@github.com:creationix/tedit.git",
root: "build/web",
runtimes: { js: jsRuntime },
ssl: true,
},
"creationix.com": {
url: "git@github.com:creationix/creationix.com",
runtimes: { js: jsRuntime },
ssl: true,
},
}
};
```
And my play sites are:
```js
var pathJoin = require('path').join;
var jsRuntime = require('wheaty-js-runtime');
module.exports = {
port: 8001,
user: "tim",
group: "tim",
cacheDir: pathJoin(__dirname, "../git"),
sites: {
"dukluv.io": {
url: "git@github.com:creationix/dukluv.git",
root: "www",
runtimes: { js: jsRuntime },
},
"conquest.creationix.com": {
url: "https://github.com/creationix/conquest.git",
runtimes: { js: jsRuntime },
},
"exploder.creationix.com": {
url: "https://github.com/creationix/exploder.git",
runtimes: { js: jsRuntime },
},
"clone-test.creationix.com": {
url: "https://github.com/creationix/clone-test.git",
runtimes: { js: jsRuntime },
},
"creator.creationix.com": {
url: "https://github.com/creationix/creator.git",
root: "www",
runtimes: { js: jsRuntime },
},
"desktop.creationix.com": {
url: "https://github.com/creationix/tedit.git",
ref: "refs/heads/minimal",
root: "build/minimal",
runtimes: { js: jsRuntime },
},
}
};
```