luna

luna

Manage npm dependencies through a modern UI

Luna - npm management through a modern UI. Built with Electron 🌺

Luna

npm desktop manager for handling npm dependencies. Supported platforms: OS X Windows and Linux.


Build Status CodeFactor PRs Welcome NPM Version FOSSA Status License: GPL3.0 Active Development

Motivation

Luna was created with main purpose to provide a flexible and modern UI for npm dependencies management. Furthermore I wanted to create a project with the latest web technologies combined in one application.

GreeceJS presentation

You can view my presentation in the GreeceJS meetup at http://bit.ly/2RES3AN

Features

  • Manage global and local packages
  • Search npm for new packages
  • Install packages
  • Uninstall packages
  • Update existing packages
  • Filter packages by type or outdated
  • Preview package details (versions, statistics, dependencies and more)
  • Get notifications for missing dependencies or extraneous dependencies
  • Reporting (audit/doctor)

Screenshots

How it works

The Renderer Process architecture:

  • Action (Event) driven nature
  • The IO Management, Business Logic Management and Predictable Application State Management processors (middlewares) are subscribers of the application action stream.
  • The IO Management and Business Logic Management are consumers and producers of actions.
  • The Predictable State Management is just a consumer of actions
  • The views are listeners of the predictable state and they are re rendered whenever the predictable state changes and they produce actions upon the user interaction (clicks)

Usage

Install application's dependencies:

npm install

Start the application

npm start

Start the development server and run the application in development mode:

npm run dev

Binaries

All binaries of the latest version are uploaded to the releases

Tech Stack

  • Electron - 🛠 - 🐙 - Build cross-platform desktop apps with JavaScript, HTML, and CSS
  • React - 🛠 - 🐙 - React is a JavaScript library for building user interfaces
  • Redux - 🛠 - 🐙 - Predictable state container for JavaScript apps
  • Webpack - 🛠️ - 🐙 - A static module bundler for modern JavaScript applications.
  • Babel - 🛠️ - 🐙 - A JavaScript compiler; use next generation JavaScript, today.
  • Rxjs - 🛠️ - 🐙 - Reactive extensions library for Javascript
  • Material-UI - 🛠️ - 🐙 - React components that implement Google's Material Design.

Contributing and Issues

Contributions, issues and feature requests are welcome.
Feel free to check issues page.

Pull requests are always welcome. 💪
Be sure to merge the latest from "upstream" before making a pull request. 🙏

License

Copyright © 2019 rvpanoz. This project is GPL-3.0 licensed.

FOSSA Status


In memory of my friend luna ❤️

not_used
luna luna

Something missing? Edit this app.

Keyboard Shortcuts

Key Action
/ Focus the search bar
Esc Focus the search bar and cleans it
Select the next search result
Select the previous search result
Enter Open the selected search result
cmdEnter Ctrl+Enter Open the selected search result in a new tab