2.1 KiB
name | overview | image | repo | badges | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
developomp.com | my website for blogging, portfolio, and resume. | /img/portfolio/developomp.com.png | https://github.com/developomp/developomp-site |
|
Intro
developomp.com is my website built for blogging, data hosting, portfolio, resume, etc. It is hosted on google firebase, and domain registered with amazon AWS Route 53. It is built with Node.js, React.js and typescript.
How it works
The build process of the site can be categorized into three stages.
1. content generation
In this stage, markdown files are rendered to HTML, json files containing metadata are generated, and svg images are constructed.
These files are all saved in the source/src/data
directory with exceptions for some image files which are saved in the source/public/img
directory.
A. HTML generation
In this stage, Markdown files are rendered to HTML using the markdown-it library.
Check the parsemarkdown.ts file to see the conversion logic and plugins used.
B. metadata
To allow content searching and listing, json files containing metadata such as title, length, and tags are generated. The elasticlunr.js library is also used for searching.
C. images
svg images are generated so they can be used in other sites like in my github profile.
The EJS templates and style used to generate the image can be found in source/generate/portfolio
.
2. site-building
Just a classic boring react build process. Uses react-scripts.
3. deployment
The site is deployed to firebase.
Limitations
Since the site does not support server side rendering (SSR), the pages might be too slow to use for some weaker devices.