A comprehensive MkDocs-based learning platform for modern technologies. Learn PyTorch, Docker, Kubernetes, and more through structured, hands-on courses.
- 📚 Multiple Courses: Structured courses on PyTorch, Docker, Kubernetes, and more
- 🎨 Material Theme: Beautiful, modern UI with dark mode support
- 📝 Markdown-Based: Easy to write and maintain course content
- 🔍 Search: Full-text search across all courses
- 📱 Responsive: Works on desktop, tablet, and mobile devices
- 🚀 GitHub Ready: Easy to deploy to GitHub Pages
- Python 3.7 or higher
- pip (Python package manager)
- Clone the repository:
git clone https://github.com/yourusername/mindstack.git
cd mindstack- Install dependencies:
pip install -r requirements.txt- Serve the documentation locally:
mkdocs serve- Open your browser and navigate to
http://127.0.0.1:8000
To build a static site:
mkdocs buildThe site will be generated in the site/ directory.
mindstack/
├── docs/
│ ├── index.md # Homepage
│ └── courses/
│ ├── pytorch/
│ │ ├── 01-intro.md
│ │ ├── 02-tensors.md
│ │ └── 03-autograd.md
│ ├── docker/
│ │ ├── 01-intro.md
│ │ ├── 02-containers.md
│ │ └── 03-images.md
│ └── kubernetes/
│ ├── 01-intro.md
│ ├── 02-pods.md
│ └── 03-deployments.md
├── mkdocs.yml # MkDocs configuration
├── requirements.txt # Python dependencies
└── README.md # This file
- Create a new directory under
docs/courses/:
mkdir -p docs/courses/<course_name>- Create sequentially numbered lesson files:
touch docs/courses/<course_name>/01-intro.md
touch docs/courses/<course_name>/02-lesson-name.md
# ... and so on- Update
mkdocs.ymlto include the new course in the navigation:
nav:
- Courses:
- New Course:
- courses/<course_name>/01-intro.md
- courses/<course_name>/02-lesson-name.md- Write your course content in Markdown format.
The platform supports various Markdown extensions:
- Code highlighting: Syntax highlighting for code blocks
- Admonitions: Info boxes, warnings, tips, etc.
- Tabs: Tabbed content sections
- Mermaid diagrams: Flowcharts, sequence diagrams, etc.
- Task lists: Checkbox lists
- Tables: Markdown tables
!!! tip "Tip"
This is a helpful tip.
!!! warning "Warning"
This is a warning message.
!!! note "Note"
This is a note.=== "Python"
```python
print("Hello, World!")
```
=== "JavaScript"
```javascript
console.log("Hello, World!");
```This repository includes a GitHub Actions workflow that automatically builds and deploys your site to GitHub Pages whenever you push to the main or master branch.
- Push your code to GitHub:
git init
git add .
git commit -m "Initial commit"
git branch -M main
git remote add origin https://github.com/yourusername/mindstack.git
git push -u origin main-
Enable GitHub Pages:
- Go to your repository on GitHub
- Navigate to Settings → Pages
- Under Source, select GitHub Actions
- Save the settings
-
Update repository URL (if needed):
- Edit
mkdocs.ymland update therepo_urlwith your actual GitHub repository URL:
repo_url: https://github.com/yourusername/mindstack
- Edit
-
Push to trigger deployment:
git add .
git commit -m "Configure GitHub Pages"
git pushThe GitHub Actions workflow (.github/workflows/ci.yml) will automatically:
- Build your MkDocs site
- Deploy it to GitHub Pages
- Make it available at
https://yourusername.github.io/mindstack
If you prefer manual deployment:
- Build the site:
mkdocs build- Deploy to GitHub Pages:
mkdocs gh-deployThis creates a gh-pages branch and deploys the site manually.
The generated site/ directory can be deployed to any static hosting service:
- Netlify
- Vercel
- AWS S3
- Azure Static Web Apps
Contributions are welcome! To contribute:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is open source and available under the MIT License.
For issues, questions, or suggestions, please open an issue on GitHub.
Built with MkDocs and Material for MkDocs.