2023-01-25 17:54:44 +03:00
|
|
|
# [Noogle](https://noogle.dev)
|
|
|
|
|
2023-01-16 12:41:07 +03:00
|
|
|
![Website](https://img.shields.io/website?down_message=noogle.dev&up_message=noogle.dev&url=https%3A%2F%2Fnoogle.dev)
|
|
|
|
![GitHub top language](https://img.shields.io/github/languages/top/hsjobeki/noogle)
|
|
|
|
![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/hsjobeki/noogle/main.yml)
|
2023-06-18 19:03:24 +03:00
|
|
|
|
|
|
|
### Noogle is a Nix API search engine. It lets you search nix functions.
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2023-01-25 17:54:44 +03:00
|
|
|
## Current Features
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2023-01-25 17:54:44 +03:00
|
|
|
- [x] Beginners-friendly search for nix and nix-related functions
|
2023-06-18 19:03:24 +03:00
|
|
|
- Render documentation comments optimized for readability
|
2024-01-01 18:47:02 +03:00
|
|
|
- [x] Filter by **type** signatures.
|
|
|
|
- Function types are parsed and interpreted.
|
2023-06-18 19:03:24 +03:00
|
|
|
- [x] Noogle also knows stuff that is not officially documented.
|
|
|
|
- Types of builtins. (including builtins.derivation)
|
|
|
|
- Can be extended via markdown contributions to noogle.
|
|
|
|
- Always shows the latest docs based on the main branch of nixpkgs.
|
2024-01-01 18:47:02 +03:00
|
|
|
- [x] Outputs Pre-rendered static html that is indexable by other search engines.
|
|
|
|
- [x] Wasm based performant instant search.
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2023-01-25 17:54:44 +03:00
|
|
|
## Available data
|
2022-12-18 16:21:00 +03:00
|
|
|
|
2024-01-01 18:47:02 +03:00
|
|
|
There are the following subsets of nix functions available.
|
|
|
|
|
|
|
|
Recursively Indexed:
|
2022-12-18 16:21:00 +03:00
|
|
|
|
2024-01-01 18:47:02 +03:00
|
|
|
- lib
|
|
|
|
- pkgs.rustPackages
|
|
|
|
|
|
|
|
Normally Indexed:
|
|
|
|
|
|
|
|
- builtins
|
|
|
|
- pkgs.stdenv
|
|
|
|
- pkgs.dockerTools
|
|
|
|
- pkgs.writers
|
|
|
|
- pkgs.pythonPackages
|
|
|
|
- pkgs.haskell.lib
|
|
|
|
- pkgs.dockerTools
|
2022-12-18 16:21:00 +03:00
|
|
|
|
2022-12-06 12:58:48 +03:00
|
|
|
## Contribute
|
|
|
|
|
2024-01-01 18:47:02 +03:00
|
|
|
Contributions are very welcome just file a PR or issue.
|
|
|
|
Indexed data can be added very easily in ./pasta/src/eval.nix
|
|
|
|
|
|
|
|
> Note: Indexed data must evaluate!
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2022-11-26 12:51:42 +03:00
|
|
|
### Build this page
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2022-11-26 12:51:42 +03:00
|
|
|
`nix build .#`
|
2022-11-26 12:36:08 +03:00
|
|
|
|
2022-11-26 12:51:42 +03:00
|
|
|
### Develop
|
2022-11-26 12:36:08 +03:00
|
|
|
|
|
|
|
`nix develop`
|
|
|
|
|
2023-01-25 17:54:44 +03:00
|
|
|
This command creates the node_modules folder
|
|
|
|
with all needed dependencies based on dream2nix.
|