This web app is a tool for negotiating interpersonal relationships.
The site is a Vue.js app hosted on Cloudflare
Pages. The client app is in this repo
under ./client/
.
The backend is a Cloudflare Worker
which stores session state in Cloudflare
KV. The worker is in this repo under
./worker/
.
The list of questions is defined in a JSON document which is used to dynamically build the input form
A self-hosted instance of Umami is used to provide privacy-preserving analytics.
To run the app locally, you'll need to spin up a local instance of the worker.
It must be running on port 8787
.
cd ./worker/
npm install
npx wrangler dev
Then you can start the local dev server.
cd ./client/
npm install
npm run dev
The client app is automatically deployed to Cloudflare Pages on pushes to
main
. To deploy the worker, run:
cd ./worker/
npm install
npx wrangler deploy
You can also build the client app locally like this:
cd ./client/
npm install
npm run build
Copyright © 2024 Wren Powell
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.