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 developmentvite-plugin-ssr
for SSR and SSGtypescript
for maintainabilityexpress
andts-node
for serving the applodash
for utility functionsstoreon
for state management@phensley/cldr
for i18ntailwindcss
andpostcss
for stylingschema-dts
for type definitions for Schema.org vocabulary
npm install
npm run dev
Open the browser at http://localhost:3000/
For production:
npm run prod
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.