Codebase of the website danroc.dev, my personal dev blog.
- TypeScript
- Nuxt.js - Vue.js framework
- Nuxt Content + Markdown - Content
- Tailwind CSS - CSS framework
- Jest - unit testing
- Cypress.io - integration tests
- Github Actions - CI/CD
- Netlify - front end, static hosting (this repo)
# install dependencies
$ npm run install
# serve with hot reload at localhost:3000
$ npm run dev
# build for production and launch server
$ npm run build
$ npm run start
# generate static project
$ npm run generate
# run unit tests
$ npm run test:unit
# run integration tests
$ npm run cy:open
For detailed explanation on how things work, check out Nuxt.js docs.
I follow the "3-flow" branching system:
- There are three branches in origin:
master
,candidate
,release
- Normal development happens on
master
. All new commits are rebased. - Features that are incomplete are put behind feature toggles, ideally dynamic toggles that can be changed without a redeploy
- To cut a release,
master
is merged intocandidate
with a--no-ff
merge commit - Any bugs found during a
candidate
’s QA phase are fixed incandidate
and then merged intomaster
with a--no-ff
merge commit - When a candidate is released to production, it’s
push --force
d to the tip ofrelease
- Any production hotfixes happen in
release
and are then merged intocandidate
which is then merged intomaster
.
- Daniel da Rocha - Creator and Full-stack Developer - danrocha
This project is licensed under the MIT License.