A Sveltkit front-end for viewing and manipulating my webservices data.
Find a file Use this template
2024-11-19 10:59:01 +13:00
src WIP just need to fix the filtering of technologies based on instance properties 2024-11-19 10:59:01 +13:00
static initial commit of new code to manage filters 2024-09-18 15:53:10 +12:00
.dockerignore adding fonts, a global layout, and Docker deployment stuff. 2024-08-16 17:01:16 +12:00
.gitignore updated my .gitignore to remove a few niggling inclusions 2024-08-30 15:58:54 +12:00
.npmrc Initial commit 2024-08-09 16:21:51 +12:00
.prettierignore Initial commit 2024-08-09 16:21:51 +12:00
.prettierrc Initial commit 2024-08-09 16:21:51 +12:00
docker-compose.yml WIP 2024-08-30 15:52:25 +12:00
Dockerfile updated Dockerfile anddocker-compose.yml, along with README.md 2024-08-29 11:40:28 +12:00
eslint.config.js recreating the project, but without experimental Svelte 5 support 2024-08-09 19:51:35 +12:00
LICENSE added AGPL v3 license and note to README re my purpose 2024-08-12 15:15:31 +12:00
Notes.md wip, all messy 2024-08-18 22:56:20 +12:00
package-lock.json Working modals 2024-11-11 15:01:13 +13:00
package.json replaced flowbite-svelte with yesvelte UI library 2024-10-04 16:59:49 +13:00
Plans.md WIP just need to fix the filtering of technologies based on instance properties 2024-11-19 10:59:01 +13:00
README.md replaced flowbite-svelte with yesvelte UI library 2024-10-04 16:59:49 +13:00
svelte.config.js replaced flowbite-svelte with yesvelte UI library 2024-10-04 16:59:49 +13:00
vite.config.js laying groundwork for active filtering 2024-09-05 11:07:29 +12:00

Webservices App

This is an app I'm creating to visualise data I've created (in JSON form) describing my self-hosted (professional, volunteer, & personal) webservices.

Credits

Developed by Dave Lane, Open Source Technologist at the OER Foundation. Many thanks to support from the Foundation for this exploratory work!

Installing the Webservices App

You can clone this repository from my Forgejo instance using this command (replacing the latter webservices-app with your preferred directory name!):

git clone https://forge.magnificent.nz/lightweight/webservices-app.git webservices-app

then

cd webservices-app
npm install

or, if you're using pnpm, use pnpminstall or for yarn, yarn. That will install the svelte and other javascript dependencies.

Developing

Once you've created a project and installed dependencies, start a development server:

npm run dev

or start the server and open the app in a new browser tab

npm run dev -- --open

Building

To create a production version of your app:

npm run build

You can preview the production build with npm run preview.

Deployment

To set up your SvelteKit project, ensure that your svelte.config.js file has this line:

// import adapter from '@sveltejs/adapter-auto';
import adapter from '@sveltejs/adapter-node';

and then run

npm install

(which runs these)

npm i -D @sveltejs/adapter-node
npm i dotenv
npm i --save-dev @sveltejs/enhanced-img

pnpm installs

pnpm add -g pnpm
source /home/${USER}/.bashrc
pnpm setup
pnpm add -g pnpm
pnpm i -D flowbite-svelte flowbite

To build a new image

docker-compose build

You can push your new container to a docker container repository (I use my Forgejo instance!)

docker push forge.magnificent.nz/lightweight/webservices-app:latest

To deploy the new container

At the location you're running production, pull the updated container

docker-compose pull

To start it up (and tail the logs - CTRL-C to quit out of the logs without affecting running container)

docker-compose up -d && docker-compose logs -f

To clear out an old image (if it's running)

docker-compose down --remove-orphans --rmi 'all'