当前位置: 首页 > 软件库 > Web3 > 开源货币/比特币 >

RTL

授权协议 MIT License
开发语言 Python
所属分类 Web3、 开源货币/比特币
软件类型 开源软件
地区 不详
投 递 者 法弘壮
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Ride The Lightning (RTL)

Known Vulnerabilities

Intro -- Application Features -- Road Map -- Application Configurations -- C-Lightning -- Eclair -- Contribution

Introduction

RTL is a full function, device agnostic, web user interface to help manage lightning node operations.RTL is available on LND, C-Lightning and Eclair implementations.

  • C-Lightning users, refer to this page for install instructions.
  • Eclair users, refer to this page for install instructions.
  • LND users, follow the instructions below

Lightning Network Daemon(LND) is an implementation of Lightning Network BOLT protocol by Lightning Labs.

Pre-requisite for running RTL is a functioning and synced LND node. If you are a Raspberry Pi or a Linux user, you can follow the famous Stadicus's guide to setup a Bitcoin + Lighting node.

RTL is available on the below platforms/services:

Docker Image: https://hub.docker.com/r/shahanafarooqui/rtl

Architecture

Prerequisites

  • Functioning and synced LND lightning node.
  • Node.js, which can be downloaded here
  • Recommended Browsers: Chrome, Firefox, MS Edge

Installation

To download a specific RTL version follow the instructions on the release page

To download from master (not recommended):

First time setup

$ git clone https://github.com/Ride-The-Lightning/RTL.git
$ cd RTL
$ npm install --only=prod

Or: Update existing dependencies

$ cd RTL
$ git reset --hard HEAD
$ git clean -f -d
$ git pull
$ npm install --only=prod

Prep for Execution

RTL requires its own config file RTL-Config.json, to start the server and provide user authentication on the app.

Advanced users can refer to this page, for config settings required to manage multiple nodes

  • Copy the file Sample-RTL-Config.json from ./RTL/docs to ./RTL and rename it to RTL-Config.json.
  • Locate the complete path of the readable macroon file (admin.macroon) on your node and the lnd.conf file.
  • Modify the RTL-Config.json file per the example file below

Example RTL-Config.json:

{
  "multiPass": "password",
  "port": "3000",
  "defaultNodeIndex": 1,
  "SSO": {
    "rtlSSO": 0,
    "rtlCookiePath": "",
    "logoutRedirectLink": ""
  },
  "nodes": [
    {
      "index": 1,
      "lnNode": "LND Testnet",
      "lnImplementation": "LND",
      "Authentication": {
        "macaroonPath": "<Complete path of the folder containing LND's admin.macaroon for the node # 1>",
        "swapMacaroonPath": "<Complete path of the folder containing Loop's loop.macaroon for the node>",
        "boltzMacaroonPath": "<Complete path of the folder containing Boltz admin.macaroon for the node>",
        "configPath": "<Optional:Path of the .conf if present locally or empty>",
        "lnApiPassword": "<Optional:Can be used to provide password in ECL implementation>"
      },
      "Settings": {
        "userPersona": "OPERATOR",
        "themeMode": "DAY",
        "themeColor": "PURPLE",
        "channelBackupPath": "C:\\RTL\\backup\\node-1",
        "bitcoindConfigPath": "<Optional: path of bitcoind.conf path if available locally>",
        "logLevel": "INFO",
        "fiatConversion": false,
        "lnServerUrl": "<url for LND REST APIs for node #1 e.g. https://192.168.0.1:8080>",
        "swapServerUrl": "<url for swap server REST APIs for the node. e.g. https://localhost:8081>",
        "boltzServerUrl": "<url for boltz server REST APIs for the node. e.g. https://localhost:9003>"
      }
    }
  ]
}

For details on all the configuration options refer to this page.

User Authentication on RTL

RTL requires the user to be authenticated by the application first, before allowing access to LND functions.Specific password must be provided in RTL-Config.json (in plain text) for authentication. Password should be set with multiPass:<user defined> in the Authentication section of RTL-Config.json. Default initial password is password.

Start the Server

Run the following command:

$ node rtl

If the server started successfully, you should get the below output on the console:

$ Server is up and running, please open the UI at http://localhost:3000

Optional: Running RTL as a service (Rpi or Linux platform users)

In case you are running a headless Rpi or a Linux node, you can configure RTL as a service.

  • Create RTL systemd unit and with the following content. Save and exit.
# Raspibolt RTL: systemd unit for RTL
# /etc/systemd/system/RTL.service

[Unit]
Description=RTL daemon
Wants=lnd.service
After=lnd.service

[Service]
ExecStart=/usr/bin/node <Full path of the RTL folder>/rtl
User=<user>
Restart=always
TimeoutSec=120
RestartSec=30

[Install]
WantedBy=multi-user.target
  • enable and start RTL
$ sudo systemctl enable RTL
$ sudo systemctl start RTL
  • montior the RTL log file in realtime(exit with Ctrl-C)

$ sudo journalctl -f -u RTL

Accessing the Application

You can access the application in multiple setups (Please make note of the 4th exception):

  1. Same device as the server:Open your browser at the following address: http://localhost:3000 to access the RTL application.

  2. Remotely from another device on the same local network (home network) as the node(RTL server+LND running on the same device):

  • Ensure that the if a firewall running on your node, it allows access on port 3000 (or the custom port configured for RTL).
  • Determine the IP address of your node to access the application.E.g. if the IP address of your node is 192.168.0.15 then open your browser at the following address: http://192.168.0.15:3000 to access RTL.
  1. Config tweaks for running RTL server and LND on separate devices on the same network can be found here.

  2. Any Other setup: Please be advised, if you are accessing your node remotely via RTL, its critical to encrypt the communication via use of https. You can use solutions like nginx and letsencrypt or TOR to setup secure access for RTL.

  • Sample SSL setup guide can be found here
  • (For advanced users) A sample SSL guide to serve remote access over an encrypted Tor connection can be found here

Troubleshooting

In case you are running into issues with the application or if you have feedback, feel free to open issues on our github repo.You can also reach out to us via twitter DM on @Suheb__ or @RTL_App. Thanks for your interest.

  • RTL级,register transfer level,指的是用寄存器这一级别的描述方式来描述电路的数据流方式;而Behavior级指的是仅仅描述电路的功能而可以采用任何verilog语法的描述方式。鉴于这个区别,RTL级描述的目标就是可综合,而行为级描述的目标就是实现特定的功能而没有可综合的限制。 行为级是RTL的上一层,行为级是最符合人类逻辑思维方式的描述角度,一般基于算法,用C/C++来描

  • 算法级:主要用于快速验证算法的正确性,不一定可以综合成实际电路结构 结构级:更接近电路的实际结构,电路的层次化描述,类似于电路框图 RTL级:贴近实际电路结构的描述,描述的细节到寄存器内容传输级别,可以精确描述电路的工作原理、执行顺序,细化到寄存器级别的结构描述也就是RTL级描述,并无绝对划分标准 开关级:完整描述了电路的细节,最底层的电路描述,可以描述pmos/nmos RTL级强调硬件意识,例

 相关资料
  • 问题内容: 我只是发现TwitterBootstrap,并且想知道它是否有从右到左(RTL)的版本。有人知道吗? 问题答案: 我建议这个http://pyjamacoder.com/2012/02/01/twitter-bootstrap-v2-rtl- edition/

  • 问题内容: 这更多是一种好奇心。在使用多语言Web应用程序时,我注意到在块元素末尾的某些字符(如标点符号(!?。;,))呈现为好像它们放在开头一样,而当书写方向为从右到左时(因为我不会说某些亚洲语言)。 换句话说,字符串 呈现为 当放在div块中时 如果将文本分为两部分并使用不同的颜色,则将变得更加明显:结尾的连续文本块在两个单独的区域中呈现: 这种行为的意义是什么?我想这一定是浏览器自动处理的从

  • 问题内容: 我的应用程序必须支持阿拉伯语(从右到左方向)和英语(从左到右方向)语言,我需要设置UI并基于用户 从我的应用程序中选择的语言。 我将使用NSLayoutConstraint实现UI,以便它可以根据前导和尾随约束自动更新UI 。 现在我的问题是我该如何实现?由于我的设备语言是英语,并且从我的应用程序用户中选择阿拉伯语(仅限于我的应用程序),因此我的Flow,UI,动画等应从右到左。 问题

  • 本文向大家介绍对于rtl网站的适配有哪些方案?相关面试题,主要包含被问及对于rtl网站的适配有哪些方案?时的应答技巧和注意事项,需要的朋友参考一下 transform: scaleX(-1) 或 direction: ltr;

  • 主要内容:实例,实例,实例,实例,实例,实例门控时钟 通常情况下,时钟树由大量的缓冲器和反相器组成。而时钟信号为设计中翻转率最高的信号,时钟树的功耗可高达整个设计功耗 30%。加入门控时钟(clock gating)电路,可减少时钟树的开关行为,能节省开关功耗。同时,时钟引脚开关行为的减少,寄存器的内部功耗也会减少。所以,采用门控时钟,可以有效地降低功耗。 实现原理 通俗来讲,当模块或触发器不工作时,将时钟关闭而不影响正常功能的逻辑,可以称

  • 主要内容:并行与流水,实例,实例,资源共享与状态编码,实例,实例,实例下表显示了在数字设计的各个层次上可减少功耗的百分比。RTL 级之后,功耗的减少量已经非常有限。 设计层次 改善程度 系统级 50% ~ 90% RTL 级 20% ~ 50% 门级 10% ~ 15% 晶体管级 5% ~ 10% 版图级 < 5% 作为一个编写 Verilog 的伪码农,系统级减少功耗的工作也可参与一些,但重点应该放在 RTL 级来减少功耗。 下面就分 2 节来介绍从 RTL 级来

  • 我生成了下面的fop代码,用于显示包含一些数据的2列2行的表格。 问题:表格在rtl模式下没有右对齐,但是单元格中的内容是右对齐的,这是正确的。我检查了输出,看到写入模式应用于从右到左正确显示文本的表格单元格,但表格本身没有右对齐,尽管为块容器提供了右和绝对位置属性。我尝试给fo:table赋予相同的属性,但它仍然不起作用。 我检查了apache fop文档,并且正确使用了属性。如果我错过了什么,

  • 我正在使用ASP.NET网络表单建立一个网站。语言是阿拉伯语,所以我不得不使用自举RTL布局。这会严重影响文本框。文本框中的文本是从右向左键入的,但光标总是在文本的开头,而不是它应该在的结尾。 我试图将这个Css类添加到文本框中,以将其恢复为LTR布局,但问题仍然存在 有人能帮我一下吗? 谢谢。 编辑 请注意,文本框运行正常,使用退格键通常会删除最后一个字符。它只是停留在文本开头的光标。