/leapp

Leapp is the DevTool to access your cloud

Primary LanguageTypeScriptMozilla Public License 2.0MPL-2.0

Leapp

Language grade: JavaScript

logo

Leapp is a Cross-Platform Cloud access App, built on top of Electron.

The App is designed to manage and secure Cloud Access in multi-account environments.

Securing aws Credentials on DevOps machines 001

Key features

We Strongly believe that access information to Cloud in ~/.aws or ~/.azure files are not safe, and we prefer to store that information in an encrypted file managed by the system. Credentials will be hourly rotated and accessible in those files only when they are needed, so only when Leapp is active.

All the covered access methods can be found here.

Leapp App animation

Installation

Get here the latest release.

Contributing

Please read through our contributing guidelines and code of conduct. Included are directions for opening issues, coding standards, and notes on development.

Editor preferences are available in the editor config for easy use in common text editors. Read more and download plugins at editorconfig.org.

Developing

Development on Leapp can be done on Mac, Windows, or Linux as long as you have NodeJS and Git. See the .nvmrc file located in the project for the correct Node version.

Initial Dev Setup

This repository is structured as a monorepo and contains many Node.JS packages. Each package has its own set of commands, but the most common commands are available from the root package.json and can be accessed using the npm run ... command. Here are the only three commands you should need to start developing on the app.

# Install and Link Dependencies
npm install


# Start App without Live Reload
npm run electron-dev

If Electron is failing building the native Library Keytar just run before npm run electron-dev:

# Clear Electron and Keytar conflicts
npm run rebuild-keytar
Editor Requirements

You can use any editor you'd like, but make sure to have support/plugins for the following tools:

  • ESLint – For catching syntax problems and common errors

Logs

By default, Leapp writes logs to the following locations:

  • on Linux: ~/.config/Leapp/logs/log.log
  • on macOS: ~/Library/Logs/Leapp/log.log
  • on Windows: %USERPROFILE%\\AppData\\Roaming\\Leapp\\log.log Logs are structured in the following way:
[YYYY-MM-DD HH:mm:ss.mmm] [LEVEL] [rendered/system] [COMPONENT] MESSAGE {Useful Object / Stacktrace Err Object}

Note: please always add logs whenever possible to any issue you want to fill to enable the team identify the problem quickly

Documentation

Refer to the documentation website.

Links

  • Glossary: find other information about the system
  • Roadmap: view our next steps and stay up to date
  • Contributing: follow the guidelines if you'd like to contribute to the project
  • Project Structure: check how we structured the project and where to find the files

License

Mozilla Public License v2.0