Vite Template with Vite SSR + Express APIs + AWS Amplify Hosting.
Also available with no server side rendering:
(vite-amplify-no-ssr.com)
- Node
- Yarn
- Vite
- React
- TypeScript
- Express
- React Router
- Tailwind
- Eslint
- Prettier
- Amplify Hosting
- AWS CDK
Using yarn
yarn install // install dependenciesyarn dev // run the development serveryarn build // build both client side and server side buildAdditional Commands
yarn clean // clean everything thats generated in the build/dev process
yarn build:client // build the client side to dist/client
yarn build:server // build the server side to dist/server
yarn lint // run eslint
yarn format // run prettieryarn build:cdk // build the cdk
yarn deploy:cdk // deploy the cdkTo deploy to Amplify Hosting
- Create repository from template
- Deploy to AWS
Note: set env variable YARN_ENABLE_IMMUTABLE_INSTALLS=0 in the Amplify console
The build outputs to dist folder. The build is split into two parts, the client side and the server side.
dist
βββ client
β βββ assets
β β βββ index-CjfxHUYp.css 28.14 kB β gzip: 6.28 kB
β β βββ index-CyAzpqo0.js 326.88 kB β gzip: 109.05 kB
β βββ favicon.ico 14.73 kB β gzip: 4.46 kB
β βββ index.html .56 kB β gzip: .35 kB
β βββ robots.txt .06 kB β gzip: .08 kB
βββ server
βββ api
β βββ api.d.ts .21 kB β gzip: .16 kB
β βββ api.js 1.01 kB β gzip: .47 kB
βββ entry-server.js 56.77 kB β gzip: 20.72 kB
βββ favicon.ico 14.73 kB β gzip: 4.46 kB
βββ robots.txt .06 kB β gzip: .08 kB
βββ server.d.ts .25 kB β gzip: .18 kB
βββ server.js 4.52 kB β gzip: 1.84 kB
βββ tsconfig.node.tsbuildinfo 46.99 kB β gzip: 14.90 kB
βββ vite.config.d.ts .08 kB β gzip: .10 kB
βββ vite.config.js 1.39 kB β gzip: .52 kB
5 directories, 15 files-
amplify.ymlis the build spec for Amplify Hosting (AWS Docs) -
deploy-minifest.jsonis the deployment spec and is what deploys the express api server (AWS Docs) -
postbuild.shwill take the build fromdistand copy it over to the amplify build folder (.amplify-hosting) which results in (AWS Docs):
.amplify-hosting
βββ compute
β βββ default
β βββ client
β β βββ assets
β β β βββ index-CjfxHUYp.css 28.14 kB β gzip: 6.28 kB
β β β βββ index-CyAzpqo0.js 326.88 kB β gzip: 109.05 kB
β β βββ favicon.ico 14.73 kB β gzip: 4.46 kB
β β βββ index.html .56 kB β gzip: .35 kB
β β βββ robots.txt .06 kB β gzip: .08 kB
β βββ package.json 2.22 kB β gzip: .90 kB
β βββ server
β βββ api
β β βββ api.d.ts .21 kB β gzip: .16 kB
β β βββ api.js 1.01 kB β gzip: .47 kB
β βββ entry-server.js 56.77 kB β gzip: 20.72 kB
β βββ favicon.ico 14.73 kB β gzip: 4.46 kB
β βββ robots.txt .06 kB β gzip: .08 kB
β βββ server.d.ts .25 kB β gzip: .18 kB
β βββ server.js 4.52 kB β gzip: 1.84 kB
β βββ tsconfig.node.tsbuildinfo 46.99 kB β gzip: 14.90 kB
β βββ vite.config.d.ts .08 kB β gzip: .10 kB
β βββ vite.config.js 1.39 kB β gzip: .52 kB
βββ deploy-manifest.json .83 kB β gzip: .33 kB
βββ static
βββ favicon.ico 14.73 kB β gzip: 4.46 kB
βββ robots.txt .06 kB β gzip: .08 kB
8 directories, 19 files
Β―\(γ)/Β― π§ lighthouse_summary_100_91_96_100_july282024.pdf





