Skip to content

Get started

iNProve provides 2 deployment modes:

  • Cloud-hosted
  • Self-hosted

Cloud-hosted

The cloud-hosted version is available at https://np-inprove.qinguan.me.

Self-hosted

In a self-hosted deployment, an two services need to be deployed:

  • API server - single Go binary
  • Frontend server - Nuxt3 web application

Please see Deployment for more information.

Development

Prerequisites

Toolchains required:

  • NodeJS (18+) + PNPM (latest)
  • Go (latest)
  • Supported database
  • GCC (optional)

The chosen database must be supported by Ent, the ORM package used.

If you are using SQLite and Windows, you must have GCC or a variant installed.

INFO

Consider using https://jmeubank.github.io/tdm-gcc/ for less headaches

Setup

Clone the repositories:

App

  1. Install dependencies

    shell
    pnpm install
    pnpm install
  2. Start the development server

    shell
    pnpm dev
    pnpm dev

Server

  1. Copy configuration

    shell
    cp config.yaml.example config.yaml
    cp config.yaml.example config.yaml
  2. Start server

    shell
    go run cmd/main.go
    go run cmd/main.go

TIP

The example config file runs SQLite in memory. All changes will be lost after server restart.