2016-11-04 13:45:49 +02:00
[![CircleCI ](https://circleci.com/gh/yldio/joyent-portal.svg?style=shield&circle-token=0bbeaaafc4868c707ca0ed0568f5193a04daddb4 )](https://circleci.com/gh/yldio/joyent-portal)
2016-12-09 19:39:42 +02:00
[![License: MPL 2.0 ](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg )](https://opensource.org/licenses/MPL-2.0)
2016-11-04 13:36:28 +02:00
2016-11-03 17:59:49 +02:00
# Joyent Portal
2016-10-10 18:44:23 +03:00
2016-11-03 17:59:49 +02:00
Before you begin, you will need to install ensure that `docker` and `docker-compose` are installed correctly,
this can be done by running `make` , make continues without any errors, then you are good to go.
2016-11-01 14:13:47 +02:00
2016-11-03 17:59:49 +02:00
## Setup
2016-11-01 14:13:47 +02:00
```sh
2016-11-03 17:59:49 +02:00
make
2016-11-01 14:13:47 +02:00
```
2016-11-03 17:59:49 +02:00
## Run services
2016-10-25 19:51:20 +03:00
To run the stack locally:
```sh
docker-compose -f local-compose.yml up -d
```
2016-11-03 17:59:49 +02:00
This will run the front-end at [http://127.0.0.1:8000 ](http://127.0.0.1:8000 ),
the UI framework at [http://127.0.0.1:8001 ](http://127.0.0.1:8001 ),
2016-10-25 19:51:20 +03:00
## Development
If you would like to contribute to the project, the recommended way to setup is to
insure that you have docker installed, and optionally have a triton account and profile
setup using the triton tool.
Currently requires [yarn ](https://yarnpkg.com/en/docs/install ) for installing dependencies.
```
2016-11-03 17:59:49 +02:00
make & & make install
2016-10-25 19:51:20 +03:00
```
Then to run each individual component locally (subject to change).
2016-10-10 18:44:23 +03:00
## Project Management
This project is using [Github Projects ](https://www.youtube.com/watch?v=C6MGKHkNtxU ) for organisation and development of the Joyent Dashboard.
## Repository Layout
Currently we are using this repository as a monolithic catch-all for all project communication, development and designs.
We will also include multiple PoC's of various bits of functionality from UI's prototypes to API development.
```
.
2016-11-03 17:59:49 +02:00
├── cloudapi-graphql
2016-10-20 04:08:11 +03:00
├── frontend
2016-11-03 17:59:49 +02:00
├── nginx
2016-10-24 14:45:20 +03:00
├── ui
2016-10-20 04:08:11 +03:00
└── spikes
2016-10-10 18:44:23 +03:00
```
2016-10-14 14:51:09 +03:00
### cloudapi-graphql
2016-10-10 18:44:23 +03:00
2016-10-10 19:38:58 +03:00
An implementation of the [Joyent CloudAPI ](https://apidocs.joyent.com/cloudapi/ ) in GraphQL.
2016-10-20 04:08:11 +03:00
### frontend
2016-10-25 19:02:05 +03:00
The client side code with a dev-server, this also includes the production server for the meantime, however we are looking at moving towards a deployment of the build artifacts to manta, and another server to host these assets.
2016-10-20 04:08:11 +03:00
2016-11-03 17:59:49 +02:00
### nginx
Nginx will be sitting in-front of the `ui` service, allowing the `ui` to scale out.
2016-10-24 14:45:20 +03:00
### ui
Code for the reusable UI framework.
2016-10-24 14:45:56 +03:00
### spikes
2016-10-20 04:08:11 +03:00
2016-10-25 19:51:20 +03:00
Implementation examples from spikes, this directory is experimental and is likely broken.