Skip to content

Commit 304f625

Browse files
committed
add docs
1 parent b96bb07 commit 304f625

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+5798
-0
lines changed

docs/README.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Surfaces Documentation
2+
3+
This directory contains the Sphinx documentation for the Surfaces library.
4+
5+
## Building the Documentation
6+
7+
### Prerequisites
8+
9+
Install the documentation dependencies:
10+
11+
```bash
12+
pip install -r requirements.txt
13+
```
14+
15+
### Building HTML Documentation
16+
17+
From the `docs/source` directory:
18+
19+
```bash
20+
make html
21+
```
22+
23+
The built documentation will be in `docs/build/html/`.
24+
25+
### Live Preview
26+
27+
For development with auto-rebuild:
28+
29+
```bash
30+
make livehtml
31+
```
32+
33+
This starts a server at `http://127.0.0.1:8000` that auto-rebuilds on changes.
34+
35+
### Cleaning Build Artifacts
36+
37+
```bash
38+
make clean
39+
```
40+
41+
## Structure
42+
43+
```
44+
docs/
45+
├── build/ # Built documentation output
46+
├── requirements.txt # Documentation dependencies
47+
├── README.md # This file
48+
└── source/ # Documentation source files
49+
├── conf.py # Sphinx configuration
50+
├── index.rst # Main page
51+
├── _static/ # Static files (CSS, images)
52+
├── _templates/ # Custom templates
53+
├── api_reference/ # API documentation
54+
├── examples/ # Code examples
55+
└── user_guide/ # User guide pages
56+
```
57+
58+
## Theme
59+
60+
The documentation uses the pydata-sphinx-theme with a custom dark pastel red color scheme. Custom CSS is in `source/_static/css/custom.css`.

docs/requirements.txt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Requirements for building Surfaces documentation
2+
3+
# Core Sphinx and extensions
4+
sphinx>=7.0.0
5+
sphinx-autobuild
6+
sphinx-copybutton
7+
sphinx-design
8+
sphinx-issues
9+
myst-parser
10+
numpydoc
11+
12+
# Theme
13+
pydata-sphinx-theme
14+
15+
# For intersphinx linking
16+
# These need to be importable to build docs
17+
numpy
18+
pandas
19+
scikit-learn
20+
matplotlib
21+
plotly

docs/source/Makefile

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Makefile for Sphinx documentation
2+
3+
# You can set these variables from the command line, and also
4+
# from the environment for the first two.
5+
SPHINXOPTS ?=
6+
SPHINXBUILD ?= sphinx-build
7+
SOURCEDIR = .
8+
BUILDDIR = ../build
9+
10+
# Put it first so that "make" without argument is like "make help".
11+
help:
12+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
13+
14+
.PHONY: help Makefile
15+
16+
# Catch-all target: route all unknown targets to Sphinx using the new
17+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
18+
%: Makefile
19+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
20+
21+
# Custom targets
22+
livehtml:
23+
sphinx-autobuild "$(SOURCEDIR)" "$(BUILDDIR)/html" $(SPHINXOPTS) $(O)
24+
25+
clean:
26+
rm -rf $(BUILDDIR)/*

0 commit comments

Comments
 (0)