Skip to content

userappstore/app-store-dashboard-server

Repository files navigation

App Store Dashboard Server

This application server is one half of the software, it is accompanied by an Application server. This readme assumes you have configured the application server already.

About

The app store software provides a website where users may code and share single-page applications or import hosted web applications by their server URL. Users who complete a Stripe Connect registration may publish their apps with paid subscriptions.

Screenshots of the app store software (both servers)

Guest landing page
Guest landing page that you replace with your own / route on your application server
Signed in home page
Signed in home page with an empty app store
Example application
An example app with case study for it was made compatible

Setting up your Stripe credentials

You will need to retrieve various keys from Stripe.

  • create your Stripe account
  • register your Connect platform
  • find your API credentials
  • create a Connect webhook for all events to https://your_domain/webhooks/connect/index-payout-data (CONNECT_ENDPOINT_SECRET)
  • create a Connect webhook for all events to https://your_domain/webhooks/subscriptions/index-stripe-data (SUBSCRIPTIONS_ENDPOINT_SECRET1)
  • create a regular webhook for all events to https://your_domain/webhooks/subscriptions/index-stripe-data (SUBSCRIPTIONS_ENDPOINT_SECRET2)
  • find your webhook signing secret

Installation part 1: Dashboard Server

You must install NodeJS 8.12.0+ prior to these steps. Check start-dev.sh to see the rest of the env variables that configure the app store dashboard server.

$ mkdir my-app-store
$ cd my-app-store
$ npm int
$ npm install @userappstore/app-store-dashboard-server
$ APPID=website.com \
  APPLICATION_SERVER="http://localhost:3000" \
  APPLICATION_SERVER_TOKEN="this is a shared secret" \
  DASHBOARD_SERVER="https://website.com" \
  DASHBOARD_SESSION_KEY="this is a secret" \
  STRIPE_JS="3" \
  STRIPE_KEY="sk_test_xxxx" \
  STRIPE_PUBLISHABLE_KEY="pk_test_xxxxx" \
  CONNECT_ENDPOINT_SECRET="whsec_xxxx" \
  SUBSCRIPTIONS_ENDPOINT_SECRET1="whsec_xxxx" \
  SUBSCRIPTIONS_ENDPOINT_SECRET2="whsec_xxxx" \
  node main.js

# additional parameters using Redis
# STORAGE_ENGINE="@userdashboard/storage-redis"
# REDIS_URL="..."
$ npm install @userdashboard/storage-redis

# additional parameters using Amazon S3 or compatible
# STORAGE_ENGINE="@userdashboard/storage-s3"
# S3_BUCKET_NAME=the_name
# ACCESS_KEY_ID=secret from amazon
# SECRET_ACCESS_KEY=secret from amazon
$ npm install @userdashboard/storage-s3

# additional parameters using PostgreSQL
# STORAGE_ENGINE="@userdashboard/storage-postgresql"
# DATABASE_URL="..."
$ npm install @userdashboard/storage-postgresql

Installation part 2: Application server

Visit the App Store Application Server if you have not completed that part.

Development

Development takes place on Github with releases on NPM.

License

This is free and unencumbered software released into the public domain. The MIT License is provided for countries that have not established a public domain.

About

App store for web apps, dashboard server

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published