2020-05-04 17:20:36 +02:00
---
layout: default
parent: For developers
title: Installation
nav_order: 1
---
2021-06-09 16:07:42 +01:00
# Installation
2020-05-04 17:20:36 +02:00
2020-10-01 18:12:29 +01:00
Download the latest stable release https://github.com/lnbits/lnbits/releases
2019-12-13 17:56:19 +01:00
2021-06-09 16:07:42 +01:00
## Application dependencies
2020-05-04 17:20:36 +02:00
2019-12-13 17:56:19 +01:00
The application uses [Pipenv][pipenv] to manage Python packages.
2020-06-12 20:58:37 +02:00
While in development, you will need to install all dependencies:
2021-11-09 22:40:11 +00:00
git clone https://github.com/lnbits/lnbits-legend.git
cd lnbits-legend/
# for now you'll need to `git checkout FastAPI`
pipenv shell
pipenv install --dev
2020-09-03 19:53:22 +02:00
2021-01-02 22:55:52 +01:00
If any of the modules fails to install, try checking and upgrading your setupTool module.
2021-06-09 16:07:42 +01:00
`pip install -U setuptools`
2021-01-02 22:55:52 +01:00
2020-06-22 15:15:27 +01:00
If you wish to use a version of Python higher than 3.7:
2020-09-03 19:53:22 +02:00
2021-11-09 22:41:24 +00:00
pipenv --python 3.8 install --dev
2020-09-03 19:53:22 +02:00
2020-10-02 14:53:55 -03:00
You will need to copy `.env.example` to `.env` , then set variables there.
2019-12-13 17:56:19 +01:00
2020-06-12 20:58:37 +02:00

2019-12-13 17:56:19 +01:00
2020-09-03 19:53:22 +02:00
You might also need to install additional packages, depending on the [backend wallet ](../guide/wallets.md ) you use.
2020-10-13 10:31:53 +02:00
E.g. when you want to use LND you have to `pipenv run pip install lndgrpc` and `pipenv run pip install purerpc` .
2020-06-12 20:58:37 +02:00
2020-09-03 19:53:22 +02:00
Take a look at [Polar][polar] for an excellent way of spinning up a Lightning Network dev environment.
2020-05-04 17:20:36 +02:00
2021-06-09 16:07:42 +01:00
## Running the server
2019-12-13 17:56:19 +01:00
2021-11-09 22:45:45 +00:00
LNbits uses [FastAPI][fastapi] as an application server.
Before running the server for the first time, make sure to create the data folder and edit the .env file:
2021-06-20 06:30:32 +02:00
2021-11-09 22:41:24 +00:00
mkdir data
2021-11-09 22:45:45 +00:00
cp .env.example .env
sudo nano .env
2021-06-20 06:30:32 +02:00
To then run the server, use:
2020-06-12 20:58:37 +02:00
2021-11-09 22:44:11 +00:00
pipenv run python -m uvicorn lnbits.__main__:app --reload
2019-12-13 17:56:19 +01:00
2021-06-09 16:07:42 +01:00
**Note**: You'll need to use _https_ for some endpoints and/or extensions. You can use [ngrok ](https://ngrok.com/ ) for that. Follow the installation instructions on the website and when it's all set you can run:
2019-12-13 17:56:19 +01:00
2021-11-09 22:41:24 +00:00
./nrok http 5000
2021-06-09 16:07:42 +01:00
this will give you an _https_ tunnel for the _localhost_ , use that URL for navigating to LNBits.
2020-09-03 19:53:22 +02:00
2021-06-09 16:07:42 +01:00
## Frontend
The frontend uses [Vue.js and Quasar][quasar].
2020-09-03 19:53:22 +02:00
2020-09-13 21:31:05 -03:00
[quart]: https://pgjones.gitlab.io/
2020-09-03 19:53:22 +02:00
[pipenv]: https://pipenv.pypa.io/
[polar]: https://lightningpolar.com/
[quasar]: https://quasar.dev/start/how-to-use-vue