# Website Update Workflow

Use this workflow whenever you add a new project demo, blog, reflection, or GitHub link.

## Folder Structure

```text
60_Website/
  index.html
  styles.css
  script.js
  projects/
    robomaster-balancing-robot.html
    ai-intro-labs.html
  blogs/
    why-robotics.html
  assets/
    profile-photo.jpg
  robots.txt
  sitemap.xml
```

## Add A New Project

1. Copy an existing project page, for example:

   ```text
   projects/robomaster-balancing-robot.html
   ```

2. Rename it with a short lowercase filename:

   ```text
   projects/ros2-navigation-demo.html
   ```

3. Edit the new page:
   - `<title>`
   - meta description
   - canonical URL
   - project title
   - role
   - technical stack
   - result
   - future improvements
   - GitHub/demo/video links

4. Add a new project card to `index.html` inside:

   ```html
   <section id="projects" class="section">
   ```

5. Add the new project URL to `sitemap.xml`.
6. Upload the changed files to your hosting provider.
7. Test the new project link on your public website.

## Good Project Page Template

Each project page should answer:

- What problem did it solve?
- What was my exact role?
- What hardware/software stack did I use?
- What result proves it worked?
- What did I learn?
- What would I improve next?
- Where is the GitHub repo, demo video, or documentation?

For robotics companies, the most convincing evidence is:

- Demo video
- System diagram
- Code repository
- Debugging notes
- Metrics or test results
- Clear explanation of your own contribution

## Add A New Blog Or Reflection

1. Copy:

   ```text
   blogs/why-robotics.html
   ```

2. Rename it:

   ```text
   blogs/learning-ros2-notes.html
   ```

3. Update:
   - page title
   - meta description
   - canonical URL
   - article title
   - article content

4. Add a new writing item to `index.html` inside:

   ```html
   <section id="writing" class="section writing-section">
   ```

5. Add the blog URL to `sitemap.xml`.
6. Upload and test.

## Connect With GitHub

For each serious project:

1. Create a GitHub repository.
2. Write a clear `README.md`.
3. Add:
   - project goal
   - setup instructions
   - hardware/software stack
   - demo images or video link
   - what you implemented
   - known limitations
4. Link the GitHub repository from:
   - project detail page
   - homepage project card
   - resume

If the code is from a university course, check course policy before making it public.

## Update SEO Every Time

When adding a new page:

1. Use a specific `<title>`.
2. Use a specific meta description.
3. Add the page to `sitemap.xml`.
4. Link to the page from `index.html`.
5. Keep filenames readable:
   - good: `ros2-navigation-demo.html`
   - bad: `project1.html`

## Suggested Monthly Website Routine

Every month:

1. Add or improve one project page.
2. Add one short reflection or learning note.
3. Update your homepage project previews.
4. Push code or notes to GitHub.
5. Check all links still work.
6. Submit updated sitemap in Google Search Console if you added major pages.

## Simple Release Checklist

Before uploading:

- Homepage opens correctly.
- Photo appears correctly, or fallback initials look acceptable.
- All project links work.
- All blog links work.
- GitHub link works.
- Email link works.
- Domain in canonical links is correct.
- `robots.txt` uses the correct domain.
- `sitemap.xml` uses the correct domain.
- No private phone number, address, or course-restricted code is accidentally published.
