vite-ssr-web

Example of a completely framework-less approach to building a web app. It's all about the developer tooling and the build process!

Current minimal dependencies:

  • vite for development
  • vite-plugin-ssr for SSR and SSG
  • typescript for maintainability
  • express and ts-node for serving the app
  • lodash for utility functions
  • storeon for state management
  • @phensley/cldr for i18n
  • tailwindcss and postcss for styling
  • schema-dts for type definitions for Schema.org vocabulary

Development

npm install
npm run dev

Open the browser at http://localhost:3000/

For production:

npm run prod

Artifacts

Some of the artifacts are available in the src/gen directory, which are generated by the scripts in scripts/. This is autogenerated typescript, and can include:

  • CLDR data for specific languages and use cases
  • Messages for i18n pulled from AirTable or other sources (like Transifex)
  • Icon sets for use in the app, statically typed for convenient "dropdown" menus in VS Code

Here is an example base with i18n messages:

https://airtable.com/shrU8owcWcPRYanAH

Run npm run messages:pull to pull messages from AirTable with your API key.