The command line interface for SWAN.
Unmaintained! This setup requires an overhaul, which won't happen any time soon.
SWAN as a stack runs Sails, Waterline, Aurelia and Node.
Note: This module is work in progress. It already provides some useful methods, but isn't done yet. Contributions are more than welcome.
The SWAN stack makes developing applications a lot easier and faster. It follows the following principles:
- Separate repositories: The project, the API and the client live in separate repositories.
- API-driven development: Separation of client (static files) and server (API).
- Single entity definition: Entities (and thus API endpoints) are the same on both the server and the client, including validation.
- Install swan and the other dependencies:
npm i -g sails jspm gulp swan-cli
- Create a personal access token on github and set permissions for
repo
. - Type
swan configure
and follow the steps. - Enjoy!
Usage is described in the swan --help
output.
To create a new project.
swan new projectname
Configure default settings such as personal access token and protocols (ssh/https). Switching protocols in a swan project will update all the remotes.
swan configure
To start working on, or check out a project.
swan setup owner/repository
For instance swan setup spoonx/aurelia-todo
.
Start your project. This starts both the server, and the client in one convenient command.
swan start --v
Swan can be configured by changing the contents of the swan.json
file.
- Getting started
- Swan install (to quickly set up your project after cloning).
- Support for mobile.
This project is a little bit messy. It's relatively easy to get into, but it could be structured much better. This is the first version, meant as a PoC to figure out what works best for SWAN. This means it will be refactored at some point, but the usage will most likely stay the same.