My Self Hosted Portfolio, Blog and API - https://jazer.dev/
Built using a ReactJS Front-End, Express + PostgreSQL Back-End for API
Hosted on a Linux Ubuntu Server, connections brokered by NGINX and served with standard NodeJS HTTP module
All code tracked with git and code hosted on GitHub
Path Route | Domain Route (redirect) | Content |
---|---|---|
jazer.dev | www.jazer.dev | Landing / Homepage with links to my blog, courses and portfolio |
jazer.dev/api | api.jazer.dev | The API that manages the blog, guides and courses posted |
jazer.dev/about | about.jazer.dev | My portfolio showcasing my best work and a bit about me (Pulled from jazer.co.uk) |
jazer.dev/blog | blog.jazer.dev | My personal blog containing guides and other learning |
jazer.dev/courses | courses.jazer.dev | Curated tutorials to teach concepts and give experience |
jazer.dev/admin | admin.jazer.dev | Admin area for me to manage posts, featured articles and courses |
To run the code locally, you can spin up a postgres database either on your system or docker container (as I am doing) using the docker-pg-example.sh
script under deploy/scripts
then populating the database with the schema.sql
file under api/database/schema.sql
For the api server, copy the .env.example
to .env
with the variables changed to your desired values
After that, from the api
folder, run
npm i
Which will install the required packages used defined under the packages.json
Next, run the developer script (also under packages.json
)
npm run dev
Finally, try out the api to your hearts content
NOTE: the route for /api is defined under NGINX on production so ommit this from your local queries :D