Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions mkdocs-site/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
site
*.py
107 changes: 107 additions & 0 deletions mkdocs-site/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# CernVM-FS Documentation - MkDocs Site

This directory contains the modern MkDocs version of the CernVM-FS documentation, migrated from the original Sphinx/RST format.

## Quick Start

### Prerequisites
- Python 3.9 or higher
- pip package manager

### Installation

1. **Install dependencies:**
```bash
pip install -r requirements.txt
```

2. **Build the documentation:**
```bash
mkdocs build
```

3. **Serve locally for development:**
```bash
mkdocs serve
```

The site will be available at http://localhost:8000

## Features

### ✅ Professional Citation System
- **BibTeX Integration**: Academic references managed via `references.bib`
- **IEEE Citation Style**: Professional formatting for all citations
- **Automatic Processing**: Citations like `[@Thain05]` automatically converted to footnotes

### ✅ Modern Documentation Platform
- **ReadTheDocs Theme**: Professional appearance matching original Sphinx site
- **Fast Build Times**: ~1 second build performance
- **Live Reload**: Automatic updates during development
- **Zero Warnings**: Clean, professional build output

### ✅ Complete Content Migration
- **33 Documentation Files**: All content successfully migrated
- **Tables**: All RST grid tables converted to proper Markdown tables
- **Images & Assets**: All SVG diagrams and static assets preserved
- **Navigation**: Complete hierarchical navigation structure maintained

## File Structure

```
mkdocs-site/
├── mkdocs.yml # Main configuration file
├── requirements.txt # Python dependencies
├── references.bib # BibTeX bibliography database
├── docs/ # Documentation source files
│ ├── index.md # Homepage
│ ├── cpt-*.md # Chapter files
│ ├── apx-*.md # Appendix files
│ └── _static/ # Images, SVGs, CSS
└── site/ # Generated HTML output (after build)
```

## Configuration

### Main Configuration (`mkdocs.yml`)
- **Theme**: ReadTheDocs with custom styling
- **Plugins**: Mermaid diagrams, BibTeX citations, search
- **Navigation**: Hierarchical structure matching original documentation
- **Repository**: Links to GitHub repository for editing

### Citation Management (`references.bib`)
- **24 Academic References**: Complete bibliography in BibTeX format
- **IEEE Style**: Professional academic formatting
- **Automatic Processing**: Citations automatically linked to bibliography

## Development

### Adding Citations
1. Add new entries to `references.bib` in BibTeX format
2. Reference in documentation using `[@AuthorYear]` syntax
3. Citations automatically appear as footnotes with links to bibliography

### Adding Content
1. Create new `.md` files in the `docs/` directory
2. Add to navigation structure in `mkdocs.yml`
3. Use standard Markdown syntax with MkDocs extensions

### Building for Production
```bash
mkdocs build --clean
```

The generated site will be in the `site/` directory, ready for deployment.

## Migration Notes

This MkDocs version represents a complete modernization of the original Sphinx documentation:

- **Zero Technical Debt**: All RST artifacts removed, clean Markdown throughout
- **Enhanced Features**: Professional citation system, better table rendering
- **Improved Performance**: Faster builds, modern toolchain
- **Maintainable**: Standard Markdown format, modern Python ecosystem

## Support

For issues or questions about the documentation system, refer to the main repository or the migration report in the parent directory.
655 changes: 655 additions & 0 deletions mkdocs-site/docs/_static/concept-generic.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
108 changes: 108 additions & 0 deletions mkdocs-site/docs/_static/css/custom.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
/* modified from https://github.com/readthedocs/sphinx_rtd_theme/issues/295#issuecomment-560895037 */

.wy-nav-content {
max-width: 900px !important;
}

/* and fix wrap bug per https://rackerlabs.github.io/docs-rackspace/tools/rtd-tables.html */
.wy-table-responsive table td {
/* !important prevents the common CSS stylesheets from overriding
this as on RTD they are loaded after this stylesheet */
white-space: normal !important;
}

.wy-table-responsive {
overflow: visible !important;
}

/* Fix navigation button cutoff issue */
.rst-footer-buttons {
margin-bottom: 20px !important;
padding-bottom: 20px !important;
}

/* Ensure footer navigation has proper spacing */
footer {
margin-top: 30px !important;
padding-top: 20px !important;
}

/* Fix potential overflow issues with navigation buttons */
.btn {
margin-bottom: 10px !important;
word-wrap: break-word !important;
}

/* Better formatting for citation footnotes */
.footnote {
margin-bottom: 1em !important;
line-height: 1.5 !important;
}

.footnote p {
margin-bottom: 0.5em !important;
}

/* Ensure proper spacing between footnote entries */
.footnote + .footnote {
margin-top: 1em !important;
}

/* Fix any potential layout issues with long content */
.document {
margin-bottom: 50px !important;
}

/* Ensure proper spacing at bottom of pages */
.wy-nav-content {
max-width: 900px !important;
padding-bottom: 50px !important;
}

/* Better formatting for bibliography entries - definition lists */
dl {
margin: 1em 0 !important;
}

dt {
font-weight: bold !important;
margin-top: 1em !important;
margin-bottom: 0.2em !important;
}

dd {
margin-left: 0 !important;
margin-bottom: 1em !important;
padding-left: 0 !important;
line-height: 1.5 !important;
}

/* Style the reference anchors */
dt a[id] {
color: inherit !important;
text-decoration: none !important;
}

/* Improve spacing for references page */
#references + dl {
margin-top: 2em !important;
}

/* Ensure each reference appears as its own block (one per line) */
.csl-entry {
display: block;
margin: 0 0 0.5rem 0; /* adjust spacing as you prefer */
}

/* Optional: remove extra indentation if present */
.csl-bib-body {
padding-left: 0;
margin-left: 0;
}


.wy-side-nav-search .wy-dropdown > a img.logo,
.wy-side-nav-search > a img.logo {
width: 100px; /* Adjust to desired width */
height: auto; /* Maintains aspect ratio */
}
129 changes: 129 additions & 0 deletions mkdocs-site/docs/_static/cvmfs-blocks.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added mkdocs-site/docs/_static/cvmfs-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading