The fast web3 application toolkit ⚡️
👉 Head over to origin-playground for an example app template.
status: alpha warning, API & project structure will change 🐉
Building modern web3 applications should be simple, elegant and fast. Origin is an attempt to solve that problem with a focus to promote best practices in a lightweight, opinionated base configuration.
Origin builds upon Vite 2 defaults with Vue 3 and Typescript, resulting in ESmodules served directly to the browser during development and < 100ms hot reloading time with preservation of application state between updates.
The production build uses rollup to generate an optimized output with relative paths so the compiled application will load via both root and subpath domains, suitable for deploying to IPFS and loading natively on the decentralized web.
We will extend the vite/rollup plugin architecture to provide a selection of essential web3 tools/apis for the purpose of plug and play integration with web3 wallets, storage, distributed identity along with other general ui/design productivity frameworks.
- Vite 2.x with Vue 3 & Typescript
- Auto component importing (
unplugin-vue-components
) - File based routing (
vite-plugin-pages
) - Layout sub-system (
vite-plugin-vue-layouts
) - IPFS Base (auto gateway detection)
ipfs-base
- ARG ESLint config (with Prettier) (
@app-research/eslint-config
) - Server Side Page Generation
vite-ssg
- Metadata rendering with
@vueuse/head
- Pinia store with SSG state serialization [
origin-plugin-pinia
]
- VueUse Utilities
@vueuse/core
- VueUse Head - Document manager
@vueuse/head
- This is a pnpm monorepo, development requires this package manager and not npm/yarn.
- A huge thanks to all of the contributors behind Vite, Vue 3 and related projects, kudos for making it easier and more enjoyable to build next-gen internet, this wouldn't be possible without your efforts 😎
- Plus of course IPFS, Filecoin & Protocol Labs for setting the stage for a more open and secure decentralised web future.