GithubHelp home page GithubHelp logo

h5gq3 / port Goto Github PK

View Code? Open in Web Editor NEW

This project forked from latter-bolden/port

0.0 0.0 0.0 5.3 MB

A ship runner and manager for Urbit OS

JavaScript 5.95% TypeScript 91.50% HTML 0.51% CSS 1.30% Shell 0.74%

port's Introduction

Port (beta)

awesome urbit badge

Formerly called Taisho, Port allows you to spin up, access, and manage your ships whether they are comets, planets or potentially stars. It gives people the ability to immediately download and run Urbit without any knowledge of the command line.

Installing

Head over to releases and download the installer from the latest release. Currently only available for MacOS and Linux.

Screenshots


Architecture

The architecture is built based off of James Long's article, The Secret of Good Electron Apps. With one exception, in production we don't run a simple process, but a hidden background window.

Main

The main process' primary responsbility should be creation of windows and anything that requires interaction with the OS. Anything else should be diverted to the background window to ensure high performance.

Background

The background folder contains all the services as well as the database client and an IPC server. Here is where most of the data and process management operations should happen. We also act as a proxy for the traditional IPC in most electron apps (not sure this is good, but it's what I went with.).

Renderer

The renderer is a React + Typescript + TailwindCSS application. We use IPC to communicate only with the background process. External state like the DB is queried and mutated using react-query so that it is cached. Any internal UI state should run through either zustand or Context.

Urbit

The urbit binaries for each respective OS should live in the resources folder under the respective OS' folder. They aren't included because of size, but you can get them by running the get-urbit.sh script.

Windows

The current plan for Windows is to wait for the port currently being reviewed by the core Urbit team. Once official we'll add support ASAP.

Mothership

port's People

Contributors

afknapping avatar arthyn avatar h5gq3 avatar sigilante avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.