Offline-docs
A collection of scripts to build offline documentation for your favourite frameworks/libraries. Simply search, copy/paste the commands and enjoy.
Available tools
Currently 27 tools available
- Backend
- Blockchain
- Build tools
- CSS frameworks/libraries
- Cross platform app development
- Frontend javascript frameworks/libraries
- Javascript testing libraries
- Python
- SSG, SSR
- Other
But why? / Motivation
Learning or working on a new language often requires referring to the official docs multiple times. With the rise of Static Site Generation (SSG) many documentation sites are now open-source and can be built for offline usage. This project aims to collect all such websites and the build commands to have a knowledge of widely used SSG tools.
How to contribute
project_groups.yml
file contains categories of websites anddata_file
pointing to a file inprojects
directory which contains a list of projects belonging to the corresponding group.- Every file in
projects
directory is a list of projects with each project consisting of following information.- name, website, description, repo, commands, output_dir, last_tested, note, license
- Modify suitable file in
projects
directory and add all information for a new project. - If the project doesn't suits any existing category, add information about new category in
project_groups.yml
file.
How to complain about faulty scripts
Open an issue with as detailed error messages as possible.
Disclaimer
All the content generated using the scripts mentioned in this repository are copyright of the owners of the repo from which the documentation is generated. Only use the generated content for personal use. Terms and conditions for sharing/modifying/distributing the generated content will be applicable as per the license terms of the original repo.
How to use this repo
- Find the framework/library/tool for which you want to build the documentation (you can search in the Available Tools or with Ctrl+F)
- Open a new terminal
- Copy paste the commands shown
- Open the output dir as mentioned in the last command (or) unarchive the .tar.gz file in your preferred location and rename the folder
- Use any static site serving tools like serve (npm package) or simply
python -m http.server
. (We recommend using serve package)
Backend
nodejs
Javascript runtime built on Chrome's V8 JavaScript engine
git clone --depth=1 https://github.com/nodejs/node
cd node
./configure
mkdir out/Release
# Find out the location of the installed node binary
which node
# Copy the node binary to out/Release folder
cp node out/Release
make test-doc
cd ..
tar czf "nodejs.tar.gz" node/out/doc/api
Last tested on: 2022-04-23
Requires python and node installed.
Blockchain
Tools, projects, frameworks related to blockchain development
ethereum
Ethereum is a technology that's home to digital money, global payments, and applications.
git clone --depth=1 https://github.com/ethereum/ethereum-org-website
cd ethereum-org-website
npm install
npx gatsby build
cd ..
tar czf "ethereum.tar.gz" ethereum-org-website/public
Last tested on: 2022-04-15 (unable to completely build)
ethereum.org is really a very big website and statically building it will require lot of CPU resouces as well as deep node_modules folder.
hardhat
Ethereum development environment for professionals.
git clone --depth=1 https://github.com/NomicFoundation/hardhat
cd hardhat
yarn install
cd docs/
sh build-site.sh
cd ..
cd ..
tar czf "hardhat.tar.gz" hardhat/docs/.vuepress/dist
Last tested on: 2022-04-15
solidity
Solidity is an object-oriented, high-level language for implementing smart contracts. Smart contracts are programs which govern the behaviour of accounts within the Ethereum state.
git clone --depth=1 https://github.com/ethereum/solidity
cd solidity
cd docs
pip install -r requirements.txt
make html
cd ..
cd ..
tar czf "solidity.tar.gz" solidity/docs/dist/html
Direct links
Last tested on: 2022-04-19
waffle
The most advanced framework for testing smart contracts. Sweeter, simpler and faster.
git clone --depth=1 https://github.com/EthWorks/Waffle
cd Waffle
cd docs
pip install -r requirements.txt
make html
cd ..
cd ..
tar czf "waffle.tar.gz" Waffle/docs/dist/html
Direct links
Last tested on: 2022-04-19
Build tools
vite
vite: Next Generation Frontend Tooling
git clone --depth=1 https://github.com/vitejs/vite
cd vite
npm i -g pnpm
npx pnpm i --store=node_modules/.pnpm-store && npm run ci-docs
cd ..
tar czf "vite.tar.gz" vite/docs/.vitepress/dist
Last tested on: 2022-04-23
CSS frameworks/libraries
bootstrap 5
The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web.
git clone --depth=1 https://github.com/twbs/bootstrap
cd bootstrap
npm install
npm run docs-build
cd ..
tar czf "bootstrap 5.tar.gz" bootstrap/_site
Last tested on: 2022-04-23
Website of a css framework has broken css, I don't know?
daisyui
The most popular, free and open-source Tailwind CSS component library
git clone --depth=1 https://github.com/saadeghi/daisyui
cd daisyui
cd src/docs/
npm install
npm run build
cd ../..
cd ..
tar czf "daisyui.tar.gz" daisyui/src/docs/build
Last tested on: 2022-04-15
material ui
MUI offers a comprehensive suite of UI tools to help you ship new features faster.
git clone --depth=1 https://github.com/mui/material-ui/
cd material-ui
yarn
yarn docs:build && yarn docs:export
cd ..
tar czf "material ui.tar.gz" material-ui/docs/export
Last tested on: 2022-04-15
tailwindcss
Rapidly build modern websites without ever leaving your HTML. tailwindcss is a utility first CSS framework.
git clone --depth=1 https://github.com/tailwindlabs/tailwindcss.com
cd tailwindcss.com
yarn install
yarn export
cd ..
tar czf "tailwindcss.tar.gz" tailwindcss.com/out
Last tested on: 2022-04-15
windicss
Next generation utility-first CSS framework.
git clone --depth=1 https://github.com/windicss/docs
cd docs
npm install pnpm
npx pnpm i --store=node_modules/.pnpm-store
npm run build
cd ..
tar czf "windicss.tar.gz" docs/.vitepress/dist
Last tested on: 2022-04-19
Cross platform app development
Tools useful for development of crossplatform apps
React Native
Create native apps for Android and iOS using React
git clone --depth=1 https://github.com/facebook/react-native-website
cd react-native-website
yarn install
cd website
yarn build
cd ..
cd ..
tar czf "React Native.tar.gz" react-native=website/website/build
Last tested on: 2022-05-01
Frontend javascript frameworks/libraries
react-redux
Official React bindings for Redux
git clone --depth=1 https://github.com/reduxjs/react-redux
cd react-redux
cd website
npm install
npm run build
cd ..
cd ..
tar czf "react-redux.tar.gz" react-redux/website/build
Last tested on: 2022-04-30
reactjs
Do you really need an introduction to reactjs?
git clone --depth=1 https://github.com/reactjs/reactjs.org
cd reactjs.org
yarn install
yarn build
cd ..
tar czf "reactjs.tar.gz" reactjs.org/public
Last tested on: 2022-04-15
redux
Redux is a predictable state container for JavaScript apps.
git clone --depth=1 https://github.com/reduxjs/redux
cd redux
cd website
npm install
npm run build
cd ..
cd ..
tar czf "redux.tar.gz" redux/website/build
Last tested on: 2022-04-29
redux toolkit
The official, opinionated, batteries-included toolset for efficient Redux development.
git clone --depth=1 https://github.com/reduxjs/redux-toolkit
cd redux-toolkit
cd website
npm install
npm run build
cd ..
cd ..
tar czf "redux toolkit.tar.gz" redux-toolkit/website/build
Last tested on: 2022-04-30
vuejs V3
The Progressive JavaScript Framework. An approachable, performant and versatile framework for building web user interfaces.
git clone --depth=1 https://github.com/vuejs/docs
cd docs
npm i -g pnpm
npx pnpm i --store=node_modules/.pnpm-store && npm run ci-docs
cd ..
tar czf "vuejs V3.tar.gz" docs/.vitepress/dist
Last tested on: 2022-04-15
Javascript testing libraries
chaijs
Chai is a BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.
git clone --depth=1 https://github.com/chaijs/chaijs.github.io
cd chaijs.github.io
npm install
gem install bundler:1.16.1
bundle --update bundler
bundle install
make generated_data
bundle exec jekyll build
cd ..
tar czf "chaijs.tar.gz" chaijs.github.io/_site
Last tested on: 2022-04-15
mochajs
Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple and fun.
git clone --depth=1 https://github.com/mochajs/mocha
cd mocha
npm install
npm run start docs.production
cd ..
tar czf "mochajs.tar.gz" mocha/docs/_site
Last tested on: 2022-04-15
Python
All python related libraries
fastapi
FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.
git clone --depth=1 https://github.com/tiangolo/fastapi
cd fastapi
pip install flit
flit install --user --extras doc
sh scripts/build-docs.sh
cd ..
tar czf "fastapi.tar.gz" fastapi/site
Last tested on: 2022-04-23
pydantic
pydantic enforces type hints at runtime, and provides user friendly errors when data is invalid.
git clone --depth=1 https://github.com/samuelcolvin/pydantic
cd pydantic
make install-docs
# Run the following line in case of errors with 'make docs'
echo "def exec_examples(): return 0" > docs/build/exec_examples.py
make docs
cd ..
tar czf "pydantic.tar.gz" pydantic/site
Last tested on: 2022-04-23
typer
Typer is a library for building CLI applications that users will love using and developers will love creating. Based on Python 3.6+ type hints.
git clone --depth=1 https://github.com/tiangolo/typer
cd typer
pip install flit
flit install --user --extras doc
sh scripts/build-docs.sh
cd ..
tar czf "typer.tar.gz" typer/site
Last tested on: 2022-04-23
SSG, SSR
Frameworks like nextjs, nuxtjs used for generating static sites
Nuxtjs
The Intuitive Vue Framework. Build your next Vue.js application with confidence using Nuxt. An open source framework making web development simple and powerful.
git clone --depth=1 https://github.com/nuxt/nuxtjs.org
cd nuxtjs.org
yarn install
yarn build
cd ..
tar czf "Nuxtjs.tar.gz" nuxtjs.org/dist
Last tested on: 2022-04-29
Due to the file name restrictions on windows, the build may not work properly with client side hydration. Disable the javascript for best experience.
Nuxtjs V3
The Intuitive Vue Framework. Build your next Vue.js application with confidence using Nuxt. An open source framework making web development simple and powerful.
git clone --depth=1 https://github.com/nuxt/framework
cd framework
cd docs
yarn install
yarn build:ci
cd ..
cd ..
tar czf "Nuxtjs V3.tar.gz" framework/docs/dist
Last tested on: 2022-04-29
Due to the file name restrictions on windows, the build may not work properly with client side hydration. Disable the javascript for best experience.
Other
All other uncategorized tools
eslint
Find and fix problems in your JavaScript code
git clone --depth=1 https://github.com/eslint/website
cd website
npm install
npm run build
cd ..
tar czf "eslint.tar.gz" website/_site
Last tested on: 2022-04-15
prettier
Opinionated code formatter
git clone --depth=1 https://github.com/prettier/prettier
cd prettier
yarn install
yarn build:website
cd ..
tar czf "prettier.tar.gz" prettier/website/build
Last tested on: 2022-04-23
typescript
TypeScript is JavaScript with syntax for types.
git clone --depth=1 https://github.com/microsoft/TypeScript-Website
cd TypeScript-Website
yarn install
yarn bootstrap
yarn build-site
cd ..
tar czf "typescript.tar.gz" TypeScript-Website/docs/build
Last tested on: 2022-04-23
Requires node >=13 and node < 15 for building
Todo
- Auto update of README.md on push to main
- Mozilla Developer Network
Visit my blog for latest articles related to web development https://naveennamani.github.io/blog and for projects like this.
Follow me on dev.to/naveennamani.