- TypeScript 100%
|
|
||
|---|---|---|
| examples | ||
| scripts | ||
| .gitignore | ||
| .gitmodules | ||
| CHANGELOG.md | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
Introduction
Vode App is a collection of resources for building full-stack web applications using Vode. It includes templates, libraries, and examples to help you get started quickly.
Shoutout to @ryupold for creating Vode and thus enabling the creation of blazingly fast and maintainable front-end applications more easily than ever before.
Table of Contents
Resources
| Resource | Description |
|---|---|
| Vode App Index (this repository) | The index repository of resources that are part of the Vode App ecosystem. |
| Vode | @ryupold's Vode. |
| CLDR Supplemental | CLDR supplemental data for Vode App. |
| Common Code | Common Vode App code. |
| Common Client-Side Code | Common Vode App client-side code. |
| Common Server-Side Code | Common Vode App server-side code. |
| Hono Server Template | A template for Hono server packages. |
| SPA Template | A template for a SPA packages. |
| i18n | i18n support for Vode App. |
| Icons | Icons for Vode App. |
Documentation
<DOCUMENTATION>
Vode App packages are published to a registry at https://git.chimps.quest/api/packages/vode-app/npm/.
Registry
.npmrc:
@vode-app:registry=https://git.chimps.quest/api/packages/vode-app/npm/
//git.chimps.quest/api/packages/vode-app/npm/:_authToken=${VODE_APP_REGISTRY_AUTH_TOKEN}
or bunfig.toml:
[install.scopes]
"vode-app" = { url = "https://git.chimps.quest/api/packages/vode-app/npm/", token = "$VODE_APP_REGISTRY_AUTH_TOKEN" }
# git.chimps.quest/api/packages/vode-app/npm/
export VODE_APP_REGISTRY_AUTH_TOKEN=<AUTH_TOKEN>
# or
$env:VODE_APP_REGISTRY_AUTH_TOKEN = "<AUTH_TOKEN>"
Examples
Vode App Example Client
mkdir -p examples/example-client/
pushd examples/example-client/
-
Create a client package using the SPA Template.
npm create --no-install --no-git "@vode-app/spa@latest" . -
Update the metadata in the generated
package.json.{ "name": "", "version": "0.0.0+client", "description": "", "private": false, "keywords": [ "typescript", "spa" ], "author": "", "license": "", "repository": { "type": "git", "url": "" }, // ... } -
Install dependencies, build, and test.
npm update npm run clean npm run build npm run testsThe resulting
dist/directory contains the build artifacts that can be served by a static file server. -
Publish.
npm publish
Write client-side code in src/index.ts and update assets in assets/.
popd
Vode App Example Server
mkdir -p examples/example-server/
pushd examples/example-server/
- Create a server package using the Hono Server Template.
npm create --no-install --no-git "@vode-app/hono-server@latest" . - Update the metadata in the generated
package.json.{ "name": "", "version": "0.0.0", "description": "", "private": true, "keywords": [ "typescript", "server", "hono" ], "author": "", "license": "", "repository": { "type": "git", "url": "" }, // ... } - Install dependencies, build, and test.
npm update npm run clean npm run build npm run tests - Update environment variables.
HTTPS=false HTTPS_KEY_PATH= HTTPS_KEY_PASSPHRASE= HTTPS_CERT_PATH= PORT=7200 BASE_PATH= EXPOSE_OPENAPI=true LOG_LEVEL=WARNING LOG_LEVEL__request=TRACE - Start the server.
npm run start
DevOps
Change Management
- Create a new branch for the change.
- Make the changes and commit.
- Bump the version in
package.json. - Add an entry for the new version in
CHANGELOG.md. - Pull-request the branch.
- Ensure package artifacts are current.