yavsc/INSTALL.md
Paul Schneider 07d219e487 docs: add npm install + build:js to install procedure
The esbuild bundles under wwwroot/js and wwwroot/css are now
produced by 'npm run build:js'. Document this in INSTALL.md so
new contributors know to run 'npm install' before 'make install'.
2026-06-14 14:11:59 +01:00

2 KiB

Install

With internet access, Git, dotnet, Node.js, and GNU/Makefile, simply follow these instructions, in order to have the server part installed:

git clone https://github.com/pschneider/yavsc.git
cd yavsc
dotnet restore
npm install          # restore front-end dependencies
npm run build:js     # build the JS/CSS bundles into wwwroot
cd contrib
make install

The front-end bundles (under src/Yavsc.Org/wwwroot/js/*.bundle.min.js and src/Yavsc.Org/wwwroot/css/*.min.css) are produced by npm run build:js and committed to the repo, so the runtime .NET stack does not need a Node toolchain at publish time. Re-run npm run build:js after editing any of the entry files under src/Yavsc.Org/wwwroot/js/ or any of the build/*.entry.js bundle manifests.

About the mobile app,

cd src/PostIt/PostIt.Android
dotnet publish -c Release

and then, install the app, from the src/PostIt/PostIt.Android/bin/Release/net10.0/PostIt.apk

Resources

System resources needed to install.

Some TCP/IP ports to listen

The following provided services need all a port to listen :

  • Org
  • Blogs
  • Api (to become obsolete, in favor of Performer + Client + Com + Moderation )

A Software bloc name

In this doc, let's say, Yavsc

A domain name

Wait ... pschneider.fr You'll have to see with your provider, in order to power it, and make it point to your host ip, at least concerning the ports 80 & 443.

A Postgresql db

The database must be created, and we need its connection string, allowed to modify the data dictionary, see the .env file

An Smtp mail service

You'll need to send e-mail ... using smtp and the provider of your choice, see the .env file.

Google

I'll have to make with it, a least a moment, it needs a service account, and some setup, in the appsettings.*.json file, and the execution environment variable GOOGLE_APPLICATION_CREDENTIALS to a value pointing the json description file for the Google Service account.