11import os
22import sys
33# Ensure Sphinx can find the source code
4- sys .path .insert (0 , os .path .abspath ('../src' ))
4+ sys .path .insert (0 , os .path .abspath ("../src" ))
5+
6+
7+ def get_project_metadata ():
8+ import pathlib
9+ import sys
10+
11+ pyproject_path = pathlib .Path (__file__ ).parents [2 ] / "pyproject.toml"
12+ if sys .version_info >= (3 , 11 ):
13+ import tomllib
14+
15+ with open (pyproject_path , "rb" ) as f :
16+ data = tomllib .load (f )
17+ else :
18+ try :
19+ import tomli
20+
21+ with open (pyproject_path , "rb" ) as f :
22+ data = tomli .load (f )
23+ except ImportError :
24+ return {}
25+ project = data .get ("project" , {})
26+ author = project .get ("authors" , [{}])[0 ].get ("name" , "" )
27+ copyright_year = re .search (r"\\d{4}" , project .get ("version" , "" ))
28+ copyright_str = f"{ copyright_year .group (0 ) if copyright_year else '' } , { author } "
29+ return {
30+ "project" : project .get ("name" , "SheetWise" ),
31+ "author" : author ,
32+ "release" : project .get ("version" , "0.0.0" ),
33+ "copyright" : copyright_str ,
34+ }
35+
36+
37+ meta = get_project_metadata ()
538
639project = 'Tether'
740copyright = '2025, Khushiyant'
8- author = ' Khushiyant'
9- release = '0.0.1'
41+ author = meta . get ( "author" , " Khushiyant" )
42+ release = meta . get ( "release" , "0.6.0" )
1043
1144extensions = [
1245 'sphinx.ext.autodoc' , # Core library for html generation from docstrings
2053templates_path = ['_templates' ]
2154exclude_patterns = ['_build' , 'Thumbs.db' , '.DS_Store' ]
2255
23- # Use the Read the Docs theme
24- html_theme = 'sphinx_rtd_theme'
25- html_static_path = ['_static' ]
56+ html_static_path = ["_static" ]
57+ html_theme = "furo"
2658
27- # Napoleon settings to handle your current docstring style
28- napoleon_google_docstring = False
29- napoleon_numpy_docstring = True
59+ # Optional: Furo specific customization
60+ html_theme_options = {
61+ "source_repository" : "https://github.com/Khushiyant/tenso" ,
62+ "source_branch" : "main" ,
63+ "source_directory" : "docs/source/" ,
64+ }
0 commit comments