This repository contains the source code of v10i.dev website.
GitHub is used as a CMS for this project, the content is stored in the private (at least, for now) repository. Content is written using markdown with extended GFM syntax. Data fetching is done through the GitHub REST API.
- Yarn Berry
- TypeScript 4.4
- Next.js 12:
next-pwanext-seonext-sitemap- Front-end:
- React 17
styled-componentsswrdayjs- Markdown:
react-markdownremarkgray-matter- _
prismjsfor code blocks
- Back-end (API routes):
- NestJS 8
- Babel
axiosfor all HTTP requestsfeedto generate the RSS feedfntsfor some functional style spice- CI/CD:
- Vercel deployment
zxas language for CI scriptseslintprettierstylelintnpm-package-json-linthuskylint-stagedcommitlint- Jest
/public– static assets/scripts– CI and misc scripts (zx& Node.js)/src:/api– Next.js API routes/client– Front-end code/shared– code shared between/apiand/client/pages– Next.js file system routing
/tests– unit and integration tests
To run the project locally, first, [fork and] clone this repository:
git clone git@github.com:drizzer14/v10i.dev.gitInstall dependencies:
yarn installAdd .env file in the project root using the .env.example template. Preferably, fill in all the variables, except for optional HOST and PORT which can be omitted to enforce the defaults (localhost:3000).
Then, start the local development server:
yarn startTo test the production build:
yarn build
yarn serveDesigned and coded with ❤️ by Dmytro Vasylkivskyi.
