remote-backend
v1.2.1
Published
In some casese you don't want (or can't) to run all your project backend locally. Instead of it you prefer to use production server or any other environment as backend. It happens when you want to debug any complex issue which happens only for specific cu
Downloads
16
Maintainers
Readme
1. Motivation
In some casese you don't want (or can't) to run all your project backend locally. Instead of it you prefer to use production server or any other environment as backend. It happens when you want to debug any complex issue which happens only for specific customer or environment. Also it's very usefull when your laptop doesn't have enouhg resources for running all backend stuff.
So it makes a lot of sence to have possibility run only UI locally (as a rule you have light local development server which buids and runs your UI with webpack for example, or any other CLI tool) and use remote backend.
And motivation of this project is to help you to do this.
2. Requirements and limitations
- you should already have light development server which runs your UI locally. If your project is still a big monolit and you don't use microservice architecture it will not help you
- Google Chrome or Firefox should be installed on your development machine. 99% developers already have it.
- NodeJS and NPM should be installed
3. How it works
4. SSL support
If your remote environment use HTTPS you should prepare self signed certificate for work with it. For example if your remote backend use domain: myapp.example.com you should do the next:
- install
openssl
if you don't have it - inside root of this project exectute the next commands:
openssl genrsa -out server.key 2048
- generate server keyopenssl req -new -sha256 -key server.key -out server.csr
- create signing request. Enter myapp.example.com as a "Common Name". Leave password blank.openssl req -x509 -sha256 -days 365 -key server.key -in server.csr -out server.crt
- generate self-signed certificate.
5. How to Run
Imagine that your remote backend is placeded on https://myapp.example.com
and all API is available under https://myapp.example.com/api
. And locally you run your dev server on port 8080
. So if you want to start work with remote backend you should do the next:
npm install -g remote-backend
- install the toolsudo remote-backend -s -b myapp.example.com -a /api -p 8080
- run it
it will install all dependencies and run Chrome (or Firefox if you will add -f or --firefox key) instance. Inside this instance you will be able to see your local UI which will work with remote backend.
Also you can use reversed case when on your laptop you have only dev server with API and you want to try how it will work with remote UI. For this just add -r key: sudo remote-backend -s -r -b myapp.example.com -a /api -p 8080
For help run remote-backend --help