Week 1 — Principles and practices, project management

Week 1 was about getting the documentation habit in place before any fabrication: set up version control, publish a student website, sign the lab agreement, and sketch where the final project might go. Most of the work was procedural, but it forced me to think about how each week’s files will land in one public repo.

Website setup

I built this site as plain HTML and CSS files in the GitLab repository created for Fab Academy, with a shared style.css for navigation and layout. There is no static-site generator. I edit pages directly, commit through Git, and let GitLab Pages deploy from the main branch. The live URL comes from the project’s Pages settings after the pipeline passes.

Navigation links to About Me, Weekly Assignments, and Final Project. Image assets live under public/images/ and are compressed before upload so the site stays fast.

Git operations and GitLab upload

I first checked that Git was installed, then generated a new SSH key pair on my laptop, copied the public key, and added it to GitLab SSH settings. After that, I started the SSH agent, added my private key, and verified the connection with ssh -T git@gitlab.fabcloud.org. The terminal showed a welcome message, confirming that SSH authentication worked correctly.

  1. Check Git version and generate SSH key (ssh-keygen -t ed25519).
  2. Copy public key and add it to GitLab profile SSH Keys.
  3. Run SSH agent and test the connection until welcome message appears.
Generate ed25519 SSH key in terminal
Generate SSH key and copy public key from terminal.
Add SSH key to GitLab user settings
Add the SSH public key in GitLab settings.
SSH test welcome message from GitLab
SSH test success message from GitLab.
Configure git username and email
Configure Git identity for commits.
Clone repository and check git status on main branch
Clone repository locally and verify branch status.

Next I edited the website content in the repository, committed and pushed the change to the main branch, and checked GitLab Pipelines. The pipeline status was Passed, so the deployment step completed successfully.

Git add, commit and push in terminal
Terminal output of first commit and push.
GitLab pipeline passed after first push
GitLab pipeline passed after first push.

I compressed an image using Squoosh, added it to the repository and referenced it in HTML, then committed and pushed. I verified the pipeline again and confirmed the image appeared on the deployed website.

  1. Compress image with Squoosh before upload.
  2. Add image and HTML changes, then commit and push.
  3. Verify successful pipeline and check image on live site.
Image compression process in Squoosh
Compress image with Squoosh.
Git add commit push for image and HTML
Commit and push compressed image and HTML reference.
GitLab pipeline passed after image update
Pipeline passed after image update.
Live website showing uploaded image
Live website check after deployment.

Student agreement

Click to view my signed agreement

Signed file path: documents/student-agreement-signed.md

Final project sketch

I also sketched an early concept for my final project: a desktop companion that pairs a friendly character body with a small screen and a dedicated spot for a wearable device. The idea was to keep the form approachable while leaving room for sensors, charging, and later UI work.

This is a first-pass layout only—perspective and front views to fix proportions before moving into CAD. The current direction of the project is documented on the Final Project page.

Hand-drawn sketch of a desktop companion with a cat-like screen body, charging port, and watch stand