Skip to content

Commit decd97a

Browse files
committed
docs: Switch from Sphinx to MkDocs for ReadTheDocs
- Create mkdocs.yml with Material theme configuration - Update .readthedocs.yaml to use MkDocs instead of Sphinx - Update docs/requirements.txt for MkDocs dependencies - Add version info (2025) prominently in docs/index.md - Create custom stylesheet for documentation - Remove PDF/EPUB formats (not supported by MkDocs) This will make ReadTheDocs show the 2025 version
1 parent f33ec7a commit decd97a

File tree

5 files changed

+170
-15
lines changed

5 files changed

+170
-15
lines changed

.readthedocs.yaml

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,20 @@ build:
1212
commands:
1313
# Install the package
1414
- pip install -e .
15-
# Build the documentation
16-
- cd docs && make html
1715

1816
# Build documentation in the docs/ directory with Sphinx
19-
sphinx:
20-
configuration: docs/conf.py
21-
builder: html
22-
fail_on_warning: false
17+
#sphinx:
18+
# configuration: docs/conf.py
19+
# builder: html
20+
# fail_on_warning: false
2321

2422
# Build documentation with MkDocs
25-
#mkdocs:
26-
# configuration: mkdocs.yml
23+
mkdocs:
24+
configuration: mkdocs.yml
2725

2826
# Optionally build your docs in additional formats such as PDF
29-
formats:
30-
- pdf
31-
- epub
27+
# Note: MkDocs doesn't support PDF/EPUB formats
28+
formats: []
3229

3330
# Optionally declare the Python requirements required to build your docs
3431
python:

docs/index.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66

77
**The Ultimate Python Library for Spotify Data Extraction**
88

9+
**Version 2.0.0 | © 2025 Ali Akhtari**
10+
911
[![PyPI version](https://badge.fury.io/py/spotifyscraper.svg)](https://badge.fury.io/py/spotifyscraper)
1012
[![Python Support](https://img.shields.io/pypi/pyversions/spotifyscraper.svg)](https://pypi.org/project/spotifyscraper/)
1113
[![Documentation Status](https://readthedocs.org/projects/spotifyscraper/badge/?version=latest)](https://spotifyscraper.readthedocs.io/en/latest/?badge=latest)
@@ -231,10 +233,12 @@ This library is for educational and personal use. Always respect Spotify's Terms
231233
---
232234

233235
<div align="center">
236+
<p><strong>SpotifyScraper v2.0.0 - Documentation Last Updated: May 2025</strong></p>
234237
<p>Built with ❤️ by <a href="https://github.com/AliAkhtari78">Ali Akhtari</a> and contributors</p>
235238
<p>
236239
<a href="https://github.com/AliAkhtari78/SpotifyScraper">GitHub</a> •
237240
<a href="https://pypi.org/project/spotifyscraper/">PyPI</a> •
238241
<a href="https://spotifyscraper.readthedocs.io">Documentation</a>
239242
</p>
243+
<p><small>© 2025 Ali Akhtari. Licensed under MIT.</small></p>
240244
</div>

docs/requirements.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Documentation dependencies
2-
sphinx>=8.0
3-
sphinx-rtd-theme>=3.0
4-
recommonmark>=0.7.1
5-
myst-parser>=4.0.0
2+
mkdocs>=1.5.0
3+
mkdocs-material>=9.0.0
4+
mkdocstrings[python]>=0.24.0
5+
pymdown-extensions>=10.0

docs/stylesheets/extra.css

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
/* Custom styles for SpotifyScraper documentation */
2+
3+
/* Version highlight */
4+
.md-header__title {
5+
font-size: 1.2rem;
6+
}
7+
8+
/* Footer styling */
9+
.md-footer-meta {
10+
background-color: var(--md-footer-bg-color);
11+
}
12+
13+
/* Grid layout for cards */
14+
.grid {
15+
display: grid;
16+
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
17+
gap: 1rem;
18+
margin: 2rem 0;
19+
}
20+
21+
.card {
22+
border: 1px solid var(--md-default-fg-color--lightest);
23+
border-radius: 4px;
24+
padding: 1.5rem;
25+
text-align: center;
26+
}
27+
28+
.card h3 {
29+
margin-top: 0;
30+
}
31+
32+
.button {
33+
display: inline-block;
34+
padding: 0.5rem 1rem;
35+
background-color: var(--md-primary-fg-color);
36+
color: var(--md-primary-bg-color);
37+
text-decoration: none;
38+
border-radius: 4px;
39+
margin-top: 0.5rem;
40+
}
41+
42+
.button:hover {
43+
opacity: 0.8;
44+
}

mkdocs.yml

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
site_name: SpotifyScraper Documentation
2+
site_author: Ali Akhtari
3+
site_description: The Ultimate Python Library for Spotify Data Extraction
4+
site_url: https://spotifyscraper.readthedocs.io/
5+
repo_url: https://github.com/AliAkhtari78/SpotifyScraper
6+
repo_name: AliAkhtari78/SpotifyScraper
7+
copyright: Copyright &copy; 2025 Ali Akhtari
8+
9+
theme:
10+
name: material
11+
palette:
12+
- scheme: default
13+
primary: green
14+
accent: light-green
15+
toggle:
16+
icon: material/brightness-7
17+
name: Switch to dark mode
18+
- scheme: slate
19+
primary: green
20+
accent: light-green
21+
toggle:
22+
icon: material/brightness-4
23+
name: Switch to light mode
24+
features:
25+
- navigation.tabs
26+
- navigation.tabs.sticky
27+
- navigation.sections
28+
- navigation.expand
29+
- navigation.path
30+
- navigation.indexes
31+
- navigation.top
32+
- search.suggest
33+
- search.highlight
34+
- content.tabs.link
35+
- content.code.annotation
36+
- content.code.copy
37+
language: en
38+
icon:
39+
repo: fontawesome/brands/github
40+
41+
markdown_extensions:
42+
- pymdownx.highlight:
43+
anchor_linenums: true
44+
- pymdownx.inlinehilite
45+
- pymdownx.snippets
46+
- pymdownx.superfences
47+
- pymdownx.details
48+
- pymdownx.tabbed:
49+
alternate_style: true
50+
- admonition
51+
- tables
52+
- attr_list
53+
- md_in_html
54+
- toc:
55+
permalink: true
56+
57+
plugins:
58+
- search
59+
- mkdocstrings:
60+
handlers:
61+
python:
62+
paths: [src]
63+
options:
64+
show_source: true
65+
show_root_heading: true
66+
67+
nav:
68+
- Home: index.md
69+
- Getting Started:
70+
- Installation: getting-started/installation.md
71+
- Quick Start: guide/basic-usage.md
72+
- User Guide:
73+
- Overview: guide/index.md
74+
- Examples:
75+
- Overview: examples/index.md
76+
- Quick Start Examples: examples/quickstart.md
77+
- CLI Examples: examples/cli.md
78+
- Advanced Usage: examples/advanced.md
79+
- API Reference:
80+
- Overview: api/index.md
81+
- Client: api/client.md
82+
- Extractors: api/extractors.md
83+
- Exceptions: api/exceptions.md
84+
- Media: api/media.md
85+
- Utils: api/utils.md
86+
- Advanced Topics:
87+
- Architecture: advanced/architecture.md
88+
- Custom Extractors: advanced/custom-extractors.md
89+
- Performance: advanced/performance.md
90+
- Scaling: advanced/scaling.md
91+
- Additional Resources:
92+
- Features: features.md
93+
- FAQ: faq.md
94+
- Troubleshooting: troubleshooting.md
95+
- Migration Guide: migration.md
96+
- Changelog: changelog.md
97+
98+
extra:
99+
version:
100+
provider: mike
101+
default: latest
102+
social:
103+
- icon: fontawesome/brands/github
104+
link: https://github.com/AliAkhtari78/SpotifyScraper
105+
- icon: fontawesome/brands/python
106+
link: https://pypi.org/project/spotifyscraper/
107+
generator: false
108+
109+
extra_css:
110+
- stylesheets/extra.css

0 commit comments

Comments
 (0)