diff --git a/development.md b/development.md index a4958530..07cab492 100644 --- a/development.md +++ b/development.md @@ -9,7 +9,7 @@ cp .env-template-frontend-only .env yarn dev ``` -That's it. Youre in business. Your local Svelte build will talk to the pockethost.io mothership and connect to that for all database-related tasks. +That's it. You're in business. Your local Svelte build will talk to the pockethost.io mothership and connect to that for all database-related tasks. # Developing the backend using `docker-compose` @@ -26,7 +26,7 @@ cd pockethost **Edit `/etc/hosts`** -You need at least 3 host entries. One for the main domain, one for the database that tracks everything (the main pockethost.io db), and one (or more) for any instances you want to create an test. Wildcarding is not supported in `/etc/hosts`, so you have to make a manual entry for any PB instance you want to create and test. See `.etc-hosts-sample` for details. +You need at least 3 host entries. One for the main domain, one for the database that tracks everything (the main pockethost.io db), and one (or more) for any instances you want to create a test. Wildcarding is not supported in `/etc/hosts`, so you have to make a manual entry for any PB instance you want to create and test. See `.etc-hosts-sample` for details. ``` 127.0.0.1 pockethost.local # The main domain @@ -38,7 +38,7 @@ You need at least 3 host entries. One for the main domain, one for the database _Any time you change the PocketBase code, you need to rebuild (`yarn build:_`) and restart `docker-compose`\_ -This is to build the binary that runs INSIDE Docker. The Docker container will run using the same architecture as the host machine. If you are running an x86 machine, you'll probably need `build:386`. If you're running on Linux or Mac, then `arm64` is the one you want. You can try them both if you aren't sure. The worst that will appen is the `pocketbase` binary won't execute in Docker and you'll quickly discover that. +This is to build the binary that runs INSIDE Docker. The Docker container will run using the same architecture as the host machine. If you are running an x86 machine, you'll probably need `build:386`. If you're running on Linux or Mac, then `arm64` is the one you want. You can try them both if you aren't sure. The worst that will happen is the `pocketbase` binary won't execute in Docker and you'll quickly discover that. ```bash cd packages/pocketbase diff --git a/packages/common/src/index.ts b/packages/common/src/index.ts index 37c05fe2..510f3c4e 100644 --- a/packages/common/src/index.ts +++ b/packages/common/src/index.ts @@ -1,3 +1,3 @@ export * from './assert' -export * from './pocketbase' +export * from './RealtimeSubscriptionManager' export * from './schema' diff --git a/packages/pockethost.io/.prettierignore b/packages/pockethost.io/.prettierignore index 38972655..cb3c1f57 100644 --- a/packages/pockethost.io/.prettierignore +++ b/packages/pockethost.io/.prettierignore @@ -11,3 +11,6 @@ node_modules pnpm-lock.yaml package-lock.json yarn.lock + +# Source files +/src/assets/_bootstrap.css \ No newline at end of file diff --git a/packages/pockethost.io/.prettierrc b/packages/pockethost.io/.prettierrc index bf509a7f..0b157833 100644 --- a/packages/pockethost.io/.prettierrc +++ b/packages/pockethost.io/.prettierrc @@ -1,19 +1,16 @@ { - "useTabs": false, - "singleQuote": true, - "semi": false, - "trailingComma": "none", - "printWidth": 100, - "pluginSearchDirs": [ - ".", - "../.." - ], - "overrides": [ - { - "files": "*.svelte", - "options": { - "parser": "svelte" - } - } - ] -} \ No newline at end of file + "useTabs": false, + "singleQuote": true, + "semi": false, + "trailingComma": "none", + "printWidth": 100, + "pluginSearchDirs": [".", "../.."], + "overrides": [ + { + "files": "*.svelte", + "options": { + "parser": "svelte" + } + } + ] +} diff --git a/packages/pockethost.io/package.json b/packages/pockethost.io/package.json index 32192874..2470c297 100644 --- a/packages/pockethost.io/package.json +++ b/packages/pockethost.io/package.json @@ -1,41 +1,41 @@ { - "name": "@pockethost/app", - "version": "0.0.1", - "private": true, - "scripts": { - "dev": "vite dev", - "build": "vite build", - "preview": "vite preview", - "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "lint": "prettier --check .", - "format": "prettier --write .", - "serve": "node dist-server/index.js", - "watch": "chokidar 'src/**' -c 'yarn build' --initial" - }, - "devDependencies": { - "@sveltejs/adapter-auto": "next", - "@sveltejs/kit": "next", - "chokidar-cli": "^3.0.0", - "svelte": "^3.44.0", - "svelte-check": "^2.7.1", - "svelte-preprocess": "^4.10.6", - "tslib": "^2.3.1", - "typescript": "^4.7.4", - "vite": "^3.1.0" - }, - "type": "module", - "dependencies": { - "@fortawesome/free-brands-svg-icons": "^6.2.0", - "@fortawesome/free-solid-svg-icons": "^6.2.0", - "@pockethost/common": "0.0.1", - "@s-libs/micro-dash": "12", - "@sveltejs/adapter-node": "^1.0.0-next.92", - "pocketbase": "^0.7.0", - "random-word-slugs": "^0.1.6", - "sass": "^1.54.9", - "svelte-fa": "^3.0.3", - "svelte-highlight": "^6.2.1", - "sveltestrap": "^5.9.0" - } -} \ No newline at end of file + "name": "@pockethost/app", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --check .", + "format": "prettier --write .", + "serve": "node dist-server/index.js", + "watch": "chokidar 'src/**' -c 'yarn build' --initial" + }, + "devDependencies": { + "@sveltejs/adapter-auto": "next", + "@sveltejs/kit": "next", + "chokidar-cli": "^3.0.0", + "svelte": "^3.44.0", + "svelte-check": "^2.7.1", + "svelte-preprocess": "^4.10.6", + "tslib": "^2.3.1", + "typescript": "^4.7.4", + "vite": "^3.1.0" + }, + "type": "module", + "dependencies": { + "@fortawesome/free-brands-svg-icons": "^6.2.0", + "@fortawesome/free-solid-svg-icons": "^6.2.0", + "@pockethost/common": "0.0.1", + "@s-libs/micro-dash": "12", + "@sveltejs/adapter-node": "^1.0.0-next.92", + "pocketbase": "^0.7.0", + "random-word-slugs": "^0.1.6", + "sass": "^1.54.9", + "svelte-fa": "^3.0.3", + "svelte-highlight": "^6.2.1", + "sveltestrap": "^5.9.0" + } +} diff --git a/packages/pockethost.io/src/app.html b/packages/pockethost.io/src/app.html index 68cfb073..7e5d793d 100644 --- a/packages/pockethost.io/src/app.html +++ b/packages/pockethost.io/src/app.html @@ -1,25 +1,40 @@ -
- - - + + + + - + - - - + + + - + - + - %sveltekit.head% - - -{title}
{/if} + + {#if text} + {text} + {:else} +Creating Your New Instance...
-Creating Your New Instance...
+
-
+ {processingQuote}
+Spend less time on configuring your backend, and more time building new features for your web app.
++ Spend less time on configuring your backend, and more time building new features for your + web app. +
- + {#if isLoggedIn()} + + {/if} + + {#if !isLoggedIn()} +A backend for your next app is as fast as signing up. No provisioning servers, no Docker fiddling, just B(ad)aaS productivity.
++ A backend for your next app is as fast as signing up. No provisioning servers, no Docker + fiddling, just B(ad)aaS productivity. +
With PocketHost, batteries are included. You get a database, outgoing email, SSL, authentication, cloud functions, and high concurrency all in one stop.
++ With PocketHost, batteries are included. You get a database, outgoing email, SSL, + authentication, cloud functions, and high concurrency all in one stop. +
Your PocketHost instance is powered by its own internal SQLite instance. SQLite is more performant than mySQL or Postgres and is perfect for powering your next app.
++ Your PocketHost instance is powered by its own internal SQLite instance. SQLite is more performant than mySQL or Postgres + and is + perfect for powering your next app. +
Email and oAuth authentication options work out of the box. Send transactional email to your users from our verified domain and your custom address yoursubdomin@pockethost.local.
+ Email and oAuth authentication options work out of the box. Send transactional email to
+ your users from our verified domain and your custom address yoursubdomin@pockethost.local.
+
PocketHost securely stores your files on Amazon S3, or you can use your own key to manage your own storage.
++ PocketHost securely stores your files on Amazon S3, or you can use your own key to + manage your own storage. +
PocketHost is perfect for hobbist, low, and medium volume sites and apps.
-PocketHost, and the underlying PocketBase, can scale to well over 10,000 simultaneous connections.
++ PocketHost, and the underlying PocketBase, can scale to well over 10,000 simultaneous + connections. +
When you're ready to take your project in-house, we have you covered. You can export your entire PocketHost environment along with a Dockerfile to run it.
++ When you're ready to take your project in-house, we have you covered. You can export + your entire PocketHost environment along with a Dockerfile to run it. +
PocketHost is powered by Svelte, Vite, Typescript, PocketBase, and SQLite. Because the entire stack is open source, you'll never be locked into the whims of a vendor.
++ PocketHost is powered by Svelte, Vite, Typescript, PocketBase, and SQLite. Because the + entire stack is open source, you'll never be locked into the whims of a vendor. +
+
Please check the instance URL and try again.