4.2 KiB
4.2 KiB
AGENTS.md - Developer Guidelines for ahmza.dad
Project Overview
This is a simple personal static website hosted at ahmza.dad. The site consists of:
index.md- Source markdown contentindex.html- Generated HTML (via pandoc)styles.css- Styling (retro terminal aesthetic with lime on black)nginx.conf- Nginx server configuration
Build Commands
Generate HTML from Markdown
pandoc index.md -s -o index.html --css styles.css
This single command regenerates index.html from the markdown source.
Development Workflow
- Edit
index.mdto change content - Run the pandoc command above to regenerate HTML
- Test locally by opening
index.htmlin a browser
Deployment
This is a static site served by nginx. The nginx.conf shows the configuration:
- Serves from
/usr/share/nginx/html - Uses
index.htmlas the default index - Has gzip compression enabled
- Caches static assets (images, CSS, JS) for 1 year
To deploy, copy the files to the nginx html directory:
# Copy files to nginx directory (adjust path as needed)
cp index.html styles.css /usr/share/nginx/html/
# Reload nginx
nginx -s reload
Code Style Guidelines
General Principles
- Keep it simple - this is a minimal static site
- No JavaScript required unless absolutely necessary
- No build tools, no frameworks
Markdown (index.md)
- Use standard Markdown syntax
- Front matter (YAML) goes at the top between
---delimiters - Keep paragraphs concise and readable
- Use minimal formatting - the site doesn't need complex markdown features
HTML (index.html)
This file is GENERATED by pandoc - DO NOT EDIT DIRECTLY. All changes should be made to index.md and then regenerated.
If you must hand-edit HTML:
- Use 2 spaces for indentation
- Lowercase tags and attributes
- Quote all attribute values
- Self-closing tags for void elements (
<meta />,<link />, etc.) - Keep attributes in consistent order:
class,id,src,alt,href, etc.
CSS (styles.css)
The existing style uses a retro terminal aesthetic:
- Background: black (
#000) - Text: lime green (
limeor#00FF00) - Font: Verdana/sans-serif, 14px base size
When modifying:
- Use 2 spaces for indentation
- One selector per line, properties on new lines
- Properties: value with space after colon
- Use hex colors or named colors (like
lime) - Group related styles together
- Keep specificity low - avoid overly specific selectors
Example:
body {
background: #000;
color: lime;
}
.title {
color: lime;
padding: 10px;
}
Naming Conventions
- Files: lowercase with hyphens (e.g.,
styles.css,index.html) - CSS classes: lowercase with hyphens (e.g.,
.title,.text) - IDs: lowercase with hyphens when needed
Error Handling
There is no error handling in this static site. If the page doesn't load:
- Check that
index.htmlexists and is valid - Verify
styles.cssis linked correctly - Check nginx error logs:
/var/log/nginx/error.log
File Structure
ahmza-dad/
├── index.md # SOURCE - edit this file
├── index.html # GENERATED - do not edit directly
├── styles.css # Stylesheet
├── nginx.conf # Nginx configuration
├── .gitignore # Git ignore rules
└── .gitea/
└── README.md # Project notes
Common Tasks
Adding a new page
- Create new markdown file (e.g.,
about.md) - Add front matter with title
- Run:
pandoc about.md -s -o about.html --css styles.css - Add to nginx.conf or link from existing pages
Adding images
- Place images in the same directory as
index.html - Reference with relative path:
<img src="image.png" alt="description"> - Images are cached for 1 year per nginx.conf
Changing the theme
Edit styles.css. The current theme is:
- Black background with lime green text
- Verdana font
- Centered content with padding
Notes for Agents
- This is a very simple project - no complexity is needed
- Always edit
index.mdnotindex.htmlfor content changes - Run the pandoc command after any markdown changes
- No tests exist - manual verification is sufficient
- No linting configured
- Commit messages should be clear but brief