You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Matthew Raymer 4562be3bac feat: add deep linking support for DID routes 2 days ago
.github/workflows Playwright install 8 months ago
android feat(mobile): add deep linking support for Capacitor apps 3 weeks ago
doc docs: add tlmgr font packages 8 months ago
docs docs: add comprehensive deep linking documentation 2 weeks ago
ios feat(mobile): add deep linking support for Capacitor apps 3 weeks ago
public add another sample boundary frame for the certificate view of a claim 3 months ago
scripts docs: update electron build instructions and fix electron asset paths 4 weeks ago
src feat: add deep linking support for DID routes 2 days ago
sw_scripts switch the encryption secret from localStorage to IndexedDB (because localStorage gets lost so often) 3 months ago
test-playwright wait for some elements before calling 'click' 3 weeks ago
test-scripts chore: updated package-lock and added a README for the test scripts. 3 days ago
.browserslistrc init 2 years ago
.env.development fix image server references for tests (2 tests failing: missing function & looking for registration prompt for unregistered user) 3 weeks ago
.env.example feat: Add environment variable support for DID registration 1 week ago
.env.production fix image server references for tests (2 tests failing: missing function & looking for registration prompt for unregistered user) 3 weeks ago
.env.staging fix image server references for tests (2 tests failing: missing function & looking for registration prompt for unregistered user) 3 weeks ago
.eslintrc.js style: reorder v-model and v-bind directives 2 weeks ago
.gitignore chore: add android/ios to gitignore 2 days ago
BUILDING.md documentation: update Android build 2 days ago
CHANGELOG.md feat(mobile): add deep linking support for Capacitor apps 3 weeks ago
CONTRIBUTING.md add recipient description to offers in user's list 7 months ago
LICENSE add license file 3 months ago
README.md refactor: reorganize deep linking types and interfaces 2 weeks ago
capacitor.config.ts feat(mobile): add deep linking support for Capacitor apps 3 weeks ago
index.html feat(mobile): add deep linking support for Capacitor apps 3 weeks ago
main.js refactor: reorganize Vite config into modular files 3 weeks ago
openssl_signing_console.rst update the script commands for JWT signature generation & validation 1 year ago
openssl_signing_console.sh fix: update openssl script according to new info 1 year ago
package-lock.json feat: add deep linking support for DID routes 2 days ago
package.json feat: Add environment variable support for DID registration 1 week ago
playwright.config-local.ts enable remainder of the devices for full UI tests 3 weeks ago
playwright.config.ts Refatored vite.config to be a bit more streamlined before adding alternate build options. This did end up requiring me to remove @ from imports for some reason. Tests came out fine. 2 months ago
postcss.config.js Adding Tailwind and start application views 2 years ago
project.task.yaml update ClickUp link to a public link 11 months ago
requirements.txt for test script: add requirements, fix endpoint, and add setup instructions 1 week ago
sw_combine.js combine all service-worker scripts into a single file to try and ensure included scripts aren't lost 1 year ago
tailwind.config.js Fix config 2 years ago
test-deeplinks.sh.bak feat: Improve test scripts for deep link testing 1 week ago
tsconfig.json Updated test directory 8 months ago
vite.config.capacitor.mts refactor: reorganize Vite config into modular files 3 weeks ago
vite.config.common.mts style: reorder v-model and v-bind directives 2 weeks ago
vite.config.dev.mts WIP: certificate view and dependency updates 3 weeks ago
vite.config.electron.mts refactor: reorganize Vite config into modular files 3 weeks ago
vite.config.pywebview.mts refactor: reorganize Vite config into modular files 3 weeks ago
vite.config.ts style: reorder v-model and v-bind directives 2 weeks ago
vite.config.utils.mts refactor: reorganize Vite config into modular files 3 weeks ago
vite.config.web.mts refactor: reorganize Vite config into modular files 3 weeks ago
web-push.md refactor: reorganize deep linking types and interfaces 2 weeks ago

README.md

TimeSafari.app - Crowd-Funder for Time - PWA

Time Safari allows people to ease into collaboration: start with expressions of gratitude and expand to crowd-fund with time & money, then record and see the impact of contributions.

Roadmap

See project.task.yaml for current priorities. (Numbers at the beginning of lines are estimated hours. See taskyaml.org for details.)

Setup & Building

Quick start:

npm install
npm run dev

See the test locations for "IMAGE_API_SERVER" or "PARTNER_API_SERVER" below, or use http://localhost:3000 for local endorser.ch

Build the test & production app

npm run serve

Lint and fix files

npm run lint

Run all UI tests

Look below for the "test-all" instructions.

Compile and minify for test & production

  • If there are DB changes: before updating the test server, open browser(s) with current version to test DB migrations.

  • npx prettier --write ./sw_scripts/

  • Update the ClickUp tasks & CHANGELOG.md & the version in package.json, run npm install.

  • Commit everything (since the commit hash is used the app).

  • Put the commit hash in the changelog (which will help you remember to bump the version later).

  • Tag with the new version, online or git tag 0.3.55 && git push origin 0.3.55.

  • For test, build the app (because test server is not yet set up to build):

TIME_SAFARI_APP_TITLE="TimeSafari_Test" VITE_APP_SERVER=https://test.timesafari.app VITE_BVC_MEETUPS_PROJECT_CLAIM_ID=https://endorser.ch/entity/01HWE8FWHQ1YGP7GFZYYPS272F VITE_DEFAULT_ENDORSER_API_SERVER=https://test-api.endorser.ch VITE_DEFAULT_IMAGE_API_SERVER=https://test-image-api.timesafari.app VITE_DEFAULT_PARTNER_API_SERVER=https://test-partner-api.endorser.ch VITE_PASSKEYS_ENABLED=true npm run build

... and transfer to the test server:

rsync -azvu -e "ssh -i ~/.ssh/..." dist ubuntutest@test.timesafari.app:time-safari

(Let's replace that with a .env.development or .env.staging file.)

(Note: The test BVC_MEETUPS_PROJECT_CLAIM_ID does not resolve as a URL because it's only in the test DB and the prod redirect won't redirect there.)

  • For prod, get on the server and run the correct build:

    ... and log onto the server:

    • pkgx +npm sh

    • cd crowd-funder-for-time-pwa && git checkout master && git pull && git checkout 0.3.55 && npm install && npm run build && cd -

    (The plain npm run build uses the .env.production file.)

  • Back up the time-safari/dist folder & deploy: mv time-safari/dist time-safari-dist-prev.0 && mv crowd-funder-for-time-pwa/dist time-safari/

  • Record the new hash in the changelog. Edit package.json to increment version & add "-beta", npm install, and commit. Also record what version is on production.

Tests

See TESTING.md for detailed test instructions.

Icons

To add an icon, add to main.ts and reference with fa element and icon attribute with the hyphenated name.

Other

Reference Material

  • Notifications can be type of toast (self-dismiss), info, success, warning, and danger. They are done via notiwind and set up in App.vue.

  • Customize Vue configuration.

  • If you are deploying in a subdirectory, add it to publicPath in vue.config.js, eg: publicPath: "/app/time-tracker/",

Kudos

Gifts make the world go 'round!