Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/nautilusapp/nautilus

A Docker Compose Charting Tool
https://github.com/nautilusapp/nautilus

Last synced: 12 days ago
JSON representation

A Docker Compose Charting Tool

Awesome Lists containing this project

README

        




A Docker Compose Charting Tool


An interactive D3 visualizing tool that dynamically renders essential Docker Compose properties onto an Electron GUI, built to reduce cognitive load and simplify the development environment for engineers.

nautilusdev.com













No nautili were harmed during the making of this application


- Aris, Danny, Josh, Michael, Tyler

## Table of Contents

- [Features](#features)
- [Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Visualizing Your Docker Compose File](#visualizing-your-docker-compose-file)
- [Contributing](#contributing)
- [Cloning The Repo](#cloning-the-Repo)
- [Development](#development)
- [Packaging](#packaging)
- [Testing](#testing)
- [Technologies Used](#technologies-used)
- [License](#license)

## Features

### Open your Docker Compose file



### Display your service's info, ports and volumes



### View your services by a container dependent view



### View your services grouped by networks



## Getting Started

Nautilus comes in a prepackaged application that is ready to run on your preferred operating system.

### **Prerequisites**

Nautilus requires the docker and docker-compose command-line interface tools installed. For Mac and Windows users, this comes included with Docker Desktop. For Linux Users, this comes included with Docker Engine.


For your convenience, we've included links to Docker's documentation to set this up on your preferred operating system below.

Docker Setup Instructions

- [Mac](https://docs.docker.com/docker-for-mac/install/)
- [Windows](https://docs.docker.com/docker-for-windows/install/)
- [Linux](https://docs.docker.com/docker-for-mac/install/)

### **Installation**

Once you're sure you have the Docker CLI tools installed, download the Nautilus application from one of the links below.

Nautilus Download Links

- [Mac](https://nautilusdev.com/release/Nautilus-1.3.1.dmg)
- [Windows](https://nautilusdev.com/release/Nautilus%20Setup%201.3.1.exe)
- [Linux](https://nautilusdev.com/release/Nautilus-1.3.1.AppImage)

We are currently in the process of getting appropriate certifications/signatures so you may need to bypass some security warnings to run our application, but rest assured Nautilus does not make any network calls (and the project is 100% open source).

### **Visualizing Your Docker Compose File**

Run the application, open your Docker Compose file, and visualize your Docker Compose setup with the various views and options.

## Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.

### **Cloning the Repo**

1. Fork the Project and clone the repo to your local machine
2. Install Dependencies

Using Yarn (highly recommended):

```
yarn
```

Using npm:

```
npm install
```

3. Make changes
4. Write tests for changes
5. Open a Pull Request

### **Development**

When developing, you'll probably want to run the dev version of our application. Nautilus development is fully integrated with webpack HMR, typescript and sass loaders and Electron. To start the development environment.

```
yarn dev
```

This will open a new instance of the Nautilus desktop application and will reload automatically as you make changes. Code away!!

### **Packaging**

Nautilus utilizes electron-builder to package the application. If you want to see the changes you've made to Nautilus in a production version of the application, use these scripts:

_Package for MacOS:_

```
yarn package-mac
```

_Package for Windows:_

```
yarn package-win
```

_Package for Linux:_

```
yarn package-linux
```

OR

_Package for all three operating systems:_

```
yarn package-all
```

## Testing

The Nautilus repo is integrated with Travis CI, so tests will run automatically on all pull requests. But, we highly recommend that you test as you develop--Nautilus is a test driven development team. We have two ways to run tests:

#### #1 Run Tests for Whole Application

```
yarn test
```

Best use for `yarn test` is right before making a PR to make sure that none of your changes have broken the application.

#### #2 Run One Test File

```
yarn test-f
```

This command is ideal when working on a particular component to streamline development. No need to run tests for the whole application when only touching one file.

## Technologies Used

- [TypeScript](https://www.typescriptlang.org/)
- [Electron](https://www.electronjs.org/)
- [D3](https://d3js.org/)
- [React with Hooks](https://reactjs.org/)
- [Jest](https://jestjs.io/)
- [Enzyme](https://github.com/enzymejs/enzyme)
- [Travis CI](https://travis-ci.org/)
- [SCSS](https://sass-lang.com/)
- [Webpack](https://webpack.js.org/)
- [Babel](https://babeljs.io/)

## License

Distributed under the MIT License. See `LICENSE` for more information.

The Nautilus Devs - [LinkedIn](https://www.linkedin.com/company/nautilusapp)