Skip to content

rvpanoz/luna

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

Motivation

Luna was created with main purpose to provide a flexible and modern UI for npm dependencies management. You can install, update and uninstall packages using a user interface build on latest web technologies.

Features

  • Manage global and local packages
  • Search for new packages
  • Install packages
  • Update packages
  • Uninstall packages
  • Filter packages by name, group and outdated
  • Preview package details (versions, statistics, dependencies and more)
  • Get notifications for missing dependencies or extraneous packages

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.

GreeceJS meetup presentation

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

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 © 2020 rvpanoz. This project is GPL-3.0 licensed.

FOSSA Status


In memory of my friend luna ❤️