Skip to content

MaiLinhGroup/MaiSpace

Repository files navigation

MaiSpace Netlify Status

This is the source code for my personal website with the domain https://nguyenmailinh.info, built with Hugo and hosted with Netlify.

Theme

This website uses the free Hugo theme Ananke.

Getting started

Clone the code on the local machine

Clone everything with

foo@bar~$ git clone --recurse-submodules -j8 git@github.com:MaiLinhGroup/MaiSpace.git
foo@bar~$ cd MaiSpace

or if you already have the project cloned with

foo@bar~$ git clone git@github.com:MaiLinhGroup/MaiSpace.git

just add following

foo@bar~$ cd MaiSpace
foo@bar~$ git submodule update --init --recursive

to load also the content of all listed submodules.

Update the submodule to the latest commit with

foo@bar~$ git submodule update --remote --merge

Install Hugo

OSX:

foo@bar~$ brew install hugo

Setup Netlify Large Media

This website uses Git Large File Storage (LFS) and Netlify Large Media feature to handle its assets and hence stores text pointers of the assets instead of the assets themselves on GitHub. The assets are stored as of now on Netlify's ADN and therefore special caution is needed when this feature should be disabled.

Local development

Start the local development server with

foo@bar~$ hugo server -D --verbose
                   | EN
+------------------+----+
  Pages            | 28
  Paginator pages  |  0
  Non-page files   |  0
  Static files     | 10
  Processed images |  0
  Aliases          |  1
  Sitemaps         |  1
  Cleaned          |  0

Total in 63 ms
Watching for changes in /Users/mailinhnguyen/dev/MaiSpace/{archetypes,content,layouts,static,themes}
Watching for config changes in /Users/mailinhnguyen/dev/MaiSpace/config.toml
Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

and open the website in any browser using the given localhost address.

Open the cloned repository with any editor or IDE and open the folder ./content/ to start creating new content or to work on existing content. Visit Hugo's documentation about Content Organization for further explanations.

Publish changes

Save all changes made by add and commit them with Git and push the changes to the remote repository on GitHub.

Run the script ./build_and_deploy.sh to have these multiple steps conveniently bundled.

The Git repository is linked with Netlify's Continuous Deployment feature which will build and deploy the website automatically as soon as new commits are pushed to GitHub.