# Made in France - Static Archive

[![Static Site](https://img.shields.io/badge/Static-Site-blue.svg)](https://madeinfrance.fidh.org)
[![Archive](https://img.shields.io/badge/Status-Archive-orange.svg)](https://madeinfrance.fidh.org)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)

**This is a static archive.** Content is no longer updated.

## Overview

Made in France is a **static HTML archive** of the FIDH (International Federation for Human Rights) and LDH (Ligue des Droits de l'Homme) campaign **"En Égypte, exportons nos valeurs, pas nos armes"**. This campaign aimed to raise awareness about French arms exports to Egypt under Abdel Fattah al-Sissi's regime, highlighting the complicity of French weapons in human rights violations including arbitrary detentions, torture, and forced disappearances.

> **📁 ARCHIVE NOTICE**: This is a static archive from 2018-2019. The content is preserved for historical reference and is no longer actively maintained or updated.

## Languages

The site is available in the following languages:
- **French** - `/`

## Project Structure

```
.
├── index.html             # Main entry point
├── css/                  # Stylesheets
│   └── main.css          # CSS
├── js/                   # JavaScript files
│   ├── bundle.js         # JavaScript bundle (GSAP 2.0.1, Masonry 4.2.1, etc.)
│   ├── jquery-3.7.1.js   # jQuery library (local copy)
│   └── cookie-consent.js # Cookie consent for YouTube embed
├── fonts/                # Custom fonts (Graphik, icomoon)
│   ├── Graphik-*.eot
│   ├── Graphik-*.woff
│   ├── Graphik-*.woff2
│   ├── icomoon.eot
│   ├── icomoon.ttf
│   ├── icomoon.svg
│   └── icomoon.woff
├── img/                  # Image assets
│   ├── data/             # Campaign images (FIDH01-FIDH08)
│   │   ├── FIDH01.jpg
│   │   ├── FIDH02.jpg
│   │   ├── ...
│   │   └── FIDH08.jpg
│   ├── background.png
│   ├── background.svg
│   ├── ephilippe.jpg
│   ├── fparly.jpg
│   ├── jjbridey.jpg
│   ├── jyledrian.jpg
│   ├── ldh.jpg
│   ├── logobsarm.jpg
│   ├── mdesarnez.jpg
│   ├── og.png            # Open Graph image
│   ├── favicon.png       # Favicon
│   ├── logo_fidh.svg     # FIDH logo
│   └── reportage.mp4     # Campaign video
├── data/                 # Downloadable files
│   └── rapport.pdf       # Campaign report
├── robots.txt            # Crawler instructions
├── sitemap.xml           # Sitemap
├── AI.txt                # AI crawler instructions
├── SECURITY.md           # Security contacts (RFC 9116)
├── .htaccess             # Apache configuration
├── .editorconfig         # Editor configuration
├── .gitignore            # Git ignore rules
├── .pre-commit-config.yaml # Pre-commit hooks configuration
├── README.md             # This file
├── LICENSE               # License information
├── SECURITY.md           # Security vulnerability reporting
├── CONTRIBUTING.md       # Contribution guidelines
└── CODE_OF_CONDUCT.md    # Code of conduct
```

## Security Features

This site implements comprehensive security best practices:

### HTTP Security Headers

- **Content Security Policy (CSP)**: Restricts sources for scripts, styles, and other resources
- **X-XSS-Protection**: Enables browser XSS filtering
- **X-Content-Type-Options**: Prevents MIME type sniffing
- **X-Frame-Options**: Prevents clickjacking attacks
- **Referrer-Policy**: Controls referrer information
- **Permissions-Policy**: Restricts browser features
- **Cross-Origin Policies**: COEP, COOP, CORP for security isolation

### Server Configuration

- Blocked access to sensitive files and directories
- Disabled directory listing
- Disabled server signature
- Protection against common web exploits
- Hotlinking protection
- Proper MIME types configuration

### Privacy

- **No tracking**: No analytics or tracking scripts
- **Cookie consent**: YouTube embeds require user consent before loading (GDPR compliant)
- **GDPR compliant**: No personal data collection
- **Archive status**: Clearly marked as static archive with no active processing

## Development

### Prerequisites

- Any web server (Apache 2.4+ recommended for .htaccess support)
- No build step required - static files only

### Installation

1. Clone the repository:
   ```bash
   git clone https://github.com/fidh/madeinfrance.git
   cd madeinfrance
   ```

2. Point your web server document root to the repository root directory.

3. Ensure your web server is configured with the following Apache modules enabled (recommended):
   - `mod_headers` (for security headers)
   - `mod_expires` (for caching)
   - `mod_deflate` (for compression)
   - `mod_rewrite` (for URL rewriting)

### Local Development

For local testing, you can use one of these methods:

```bash
# Python 3
python3 -m http.server 8000

# Node.js (with http-server)
npx http-server -p 8000

# PHP built-in server (if available)
php -S localhost:8000
```

Then open `http://localhost:8000` in your browser.

### Version Control

This project uses [pre-commit](https://pre-commit.com) for code quality checks:

1. Install pre-commit:
   ```bash
   pip install pre-commit
   ```

2. Install the hooks:
   ```bash
   pre-commit install
   ```

3. Run manually on all files:
   ```bash
   pre-commit run --all-files
   ```

The hooks include:
- JSON validation
- YAML validation
- Trailing whitespace removal
- End-of-file fixer
- Mixed line ending detection
- Large file detection
- Merge conflict detection
- Custom hooks (no console.log, no debugger, TODO checks, no IE compatibility)

### Commit Message Format

This project follows [Conventional Commits](https://www.conventionalcommits.org/) standard. Use one of these prefixes:
- `feat:` - New feature
- `fix:` - Bug fix
- `docs:` - Documentation changes
- `refactor:` - Code refactoring
- `chore:` - Maintenance tasks
- `style:` - Formatting changes
- `test:` - Adding tests

## Deployment

This is a static archive website. Deployment options include:

### Manual Deployment
1. Ensure all changes are committed to the repository
2. Pull changes on the production server
3. Point web server to the repository root

### Hosting Options
- Any standard web server (Apache, Nginx, etc.)
- GitHub Pages
- Netlify
- Vercel
- Shared hosting with PHP support

## SEO & Crawlers

### robots.txt

The `robots.txt` file includes:
- Standard crawler instructions
- Blocked sensitive paths (admin, private, backup files)
- Sitemap location
- Crawl delay configuration
- Clean tracking parameter handling

### sitemap.xml

The sitemap includes all public pages with their:
- Priorities
- Change frequencies
- Last modification dates

### AI Crawlers

AI bots (ChatGPT, Google-Extended, Claude, Claud Code, etc.) are instructed via:
- `robots.txt` User-agent rules
- `AI.txt` file with specific crawl instructions and guidelines

## Browser Support

The site is designed to work on modern browsers:
- Chrome (latest 2 versions)
- Firefox (latest 2 versions)
- Safari (latest 2 versions)
- Edge (latest 2 versions)
- Mobile browsers (iOS Safari, Chrome for Android)

**Note**: The site uses modern JavaScript features (ES6+) and requires jQuery 3.7.1 for legacy browser compatibility with the animation and interactive features. jQuery is loaded locally from `scripts/jquery-3.7.1.js`.

## Accessibility

This site follows accessibility best practices:
- Semantic HTML structure
- ARIA landmarks where appropriate
- Keyboard navigation support
- Color contrast considerations (minimum 4.5:1)
- Alt text for all images
- Proper heading hierarchy

## Performance

The site is optimized for performance:
- Static HTML (no server-side processing)
- CSS and JavaScript minification (for production)
- Image optimization
- Browser caching configured via .htaccess
- Compression enabled (gzip/deflate)

## Contributing

As this is a static archive, contributions are limited to:
1. Security fixes
2. Accessibility improvements
3. Documentation updates
4. Bug fixes for display issues
5. Content corrections (typos, broken links)

For contribution guidelines, see [CONTRIBUTING.md](CONTRIBUTING.md).

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

The MIT License applies to the code and structure of this repository. The content (text, images, campaign materials) remains the property of FIDH and its partners, with all rights reserved unless otherwise specified in the content itself.

## Campaign Details

### Key Messages
1. **Stop French arms exports to Egypt** - France must respect its international commitments and immediately halt exports of surveillance equipment to Egypt
2. **Social media posts should not be a crime** - Defend freedom of expression online and offline
3. **Freedom of expression must be protected** - Support human rights defenders imprisoned for their activism
4. **Made in France - Export our values, not our weapons** - Demand justice and accountability for complicity in human rights violations

### Campaign Period
- **Original Campaign**: 2018-2019
- **Archive Status**: Content frozen since 2019
- **Last Active Updates**: July 2018 (report publication)

### Partners
- **FIDH** (International Federation for Human Rights): [www.fidh.org](https://www.fidh.org)
- **LDH** (Ligue des Droits de l'Homme): [www.ldh-france.org](https://www.ldh-france.org)
- **Observatoire des Armes**: [observatoire-des-armements.org](http://observatoire-des-armements.org)
- **Cairo Institute for Human Rights Studies**

## Contact

For questions or concerns about this archive:
- **Security issues**: See [SECURITY.md](SECURITY.md) for vulnerability reporting
- **General inquiries**: it@fidh.org
- **FIDH Website**: [www.fidh.org](https://www.fidh.org)

---

**📁 ARCHIVE**: This is a static archive from 2018-2019. Content is preserved for historical reference and is no longer updated.

*Campaign: "En Égypte, exportons nos valeurs, pas nos armes"*
*Archive: Made in France - FIDH/LDH Campaign*
