marketplace demo

Open-source marketplace front-end powered by Stelace API including search, platform automation, user management, transactions, real-time messaging, ratings and much more :zap:

117
70
Vue

Stelace-platform-runner

Marketplace starter kit

This Stelace starter kit is free to use, under the terms of the MIT license.
Feel free to fork, contribute or just make it your own ❤️.


CircleCI Netlify Status Conventional Commits

This starter kit offers a high-performance AirBnB-like marketplace front-end (Vue.js) with pre-configured serverless deployment based on open-source Stelace API server.

Contents

marketplace-demo-screenshot

Live Demo

A platform template focused on search, automation and real-time is also available.

What is Stelace?

Stelace API provides advanced search, asset and user management, automation and content delivery APIs for Web platforms ranging from search-intensive marketplaces to online community apps.
Stelace open-source marketplace backend lets you focus on what makes your platform unique.

API Docs


Features 🎁

  • Asset management. Assets can be anything from flats and homes to cars or concerts
  • Powerful and typo-tolerant Search 🔍, on a relevance and dynamic availability basis
  • User authentication including social login & SSO
  • User management and Ratings
  • Real-time Events and Messaging
  • Automation with Stelace Workflows 🚥
  • Customizable payment process using serverless functions
  • Headless CMS 📃 with Stelace Content API
  • Global CDN for images and user files
  • i18n 🌍 and full translations
  • Accessibility
  • and much more with Stelace API

Fast by default 🏁

Get 90+ PageSpeed score out of the box:

  • Pre-rendered static pages for fastest page load, with Vue.js hydrating into full SPA.
  • Code-splitting with optimized Webpack config in quasar.conf.js.
  • Image compression using WebP and serverless resizing using AWS Lambda
  • Ressource prefetching and preloading
  • PWA-ready thanks to Quasar

This kit follows the PRPL pattern: more info in docs.

Integrations

Leverage these integrations to start running your platform even faster:

Testing

  • End-to-end cross-browser testing with TestCafé
  • Continuous integration with CircleCI

Stack

Serverless JAMStack architecture:

Node.js >= 10.18 is used for tooling.

Getting started

You need your Stelace API keys to get started. Good news: Stelace is open-source so you can deploy your own server.

  1. Clone this repository
git clone https://github.com/stelace/marketplace-demo.git
cd marketplace-demo
  1. Install node_modules
# using yarn instead of npm is recommended
yarn

If you don’t have yarn installed, you can follow these instructions.

  1. Create environment files for development and production.

You can copy .env.example and fill it with Stelace API keys (generate them with the server-side open-source project).

cp .env.example .env.development
# You may want to use live keys in this file
cp .env.example .env.production

You need to fill the following environment variables:

  • STELACE_INSTANT_WEBSITE_URL
  • STELACE_PUBLISHABLE_API_KEY (pubk_…) used in Vue app
  • STELACE_SECRET_API_KEY (seck_…) used in data seeding scripts
  • STELACE_API_URL can be left blank unless you use your own server rather than default api.stelace.com

Please refer to .env.example for more details about environment variables, including map, payment gateway, logging and analytics.

  1. Seed development data
yarn seed
  1. Start the development server
quasar dev
# or, if you want to run Netlify functions with stripe payments as well:
yarn dev

Please refer to Quasar docs for more details about front-end configuration and components.

Developing with self-hosted Stelace API server (open-source backend).

Stelace Core API server has to be launched locally before starting this project’s server.

First we need to launch services needed by Stelace Core API.

yarn docker:db

Then we need to initialize the database with Instant configuration.

cd /path/to/stelace-core
git checkout dev
yarn setup:instant

Secret and publishable api keys will be displayed so you can use it as environment variables for this project.
You’ll also need to set some environment variables such as STELACE_API_URL (http://127.0.0.1:API_PORT).

Let’s start the server.

yarn dev

Please refer to.env.example in stelace-server project.

  1. Branding

Customize the app with your own colors and branding in src/styles.json, documented in styles.json.md.

Deployment

Please refer to deployment docs section for more details.