A React-based client application for Shlink
Find a file
2019-01-07 21:11:09 +01:00
config Updated coding styles and test configs 2019-01-05 23:16:13 +01:00
dist Created dist dir 2018-08-05 11:39:49 +02:00
public Ensured react router uses homepage defined in package.jsoin as basename 2018-11-01 08:20:33 +01:00
scripts Updated build script 2019-01-07 09:24:46 +01:00
src Skipped locations from unknown cities when processing cities stats for map 2019-01-07 21:11:09 +01:00
test Added cities stats graphic on short url visits page 2019-01-07 11:53:14 +01:00
.dockerignore Updated dockerfile to be used to build a distributable docker image 2018-08-06 20:16:07 +02:00
.eslintrc Created shortUrlDetail reducer test 2018-09-07 20:41:21 +02:00
.gitignore Slightly fixed dependencies 2019-01-06 10:46:19 +01:00
.scrutinizer.yml Specified node version in scrutinizer config 2018-08-26 10:40:03 +02:00
.stylelintrc Added stylelint config 2018-08-25 10:22:25 +02:00
.travis.yml Move out of Travis container-based infrastructure 2018-12-29 09:38:23 +01:00
CHANGELOG.md Updated changelog 2019-01-07 11:54:32 +01:00
docker-compose.override.yml.dist Updated docker-compose files so that they just use an image and don't need the Dockerfile 2018-08-06 19:41:57 +02:00
docker-compose.yml Updated base docker image used during development 2019-01-07 09:50:14 +01:00
Dockerfile Updated docker base image and removed deprecated MAINTAINER instruction 2019-01-07 09:41:54 +01:00
indocker Created Storage service test 2018-12-19 20:43:55 +01:00
jest.config.js Updated coding styles and test configs 2019-01-05 23:16:13 +01:00
LICENSE Happy 2019! 2019-01-05 08:42:34 +01:00
package.json Created component to show a map on a modal window 2019-01-07 13:35:25 +01:00
README.md Added docker build status badge 2019-01-07 10:37:24 +01:00
yarn.lock Created component to show a map on a modal window 2019-01-07 13:35:25 +01:00

shlink-web-client

Build Status Docker build status Code Coverage Scrutinizer Code Quality GitHub release GitHub license Paypal Donate

A ReactJS-based progressive web application for Shlink.

Installation

There are three ways in which you can use this application.

  • The easiest way to use shlink-web-client is by just going to https://app.shlink.io.

    The application runs 100% in the browser, so you can use that instance and access any shlink instance from it.

  • Self hosting the application yourself.

    Get the latest release and download the distributable zip file attached to it (shlink-web-client_X.X.X_dist.zip).

    The package contains static files only, so just put it in a folder and serve it with the web server of your choice.

    Provided dist files are configured to be served from the root of your domain. If you need to serve shlink-web-client from a subpath, you will have to build it yourself following these simple steps.

  • Use the official docker image

    If you want to deploy shlink-web-client in a container-based cluster (kubernetes, docker swarm, etc), just pick the image and do it.

    It's a lightweight nginx:alpine image serving the assets on port 80.

Serve project in subpath

Official distributable files have been build so that they are served from the root of a domain.

If you need to host shlink-web-client yourself and serve it from a subpath, follow these steps:

  • Download node 10.4 or later (if you don't have it yet).
  • Download yarn package manager.
  • Download shlink-web-client source files for the version you want to build.
  • Decompress the file and cd into the resulting folder.
  • Install project dependencies by running yarn install.
  • Open the package.json file in the root of the project, locate the homepage property and replace the value (which should be an empty string) by the path from which you want to serve shlink-web-client.
    • For example: "homepage": "/my-projects/shlink-web-client",.
  • Build the distributable contents by running yarn build.
  • Once the command finishes, you will have a build folder with all the static assets you need to run shlink-web-client. Just place them wherever you want them to be served from.