Open
Description
There are a few issues with the current elm-oracle program:
- Requires an internet connection + time to download documentation.json files, which might not always work and currently doesn't work behind a proxy.
- Can only use information and data provided in documentation.json files, so no file position for 'jump to navigation', etc.
- It is currently impossible to provide insight into the user's local codebase at all, only packages in elm-stuff.
- Every time elm-oracle is queried, it rebuilds data from scratch without using a cache.
- Loading up a node vm for each query can be a bit slow.
- Other functionality, like previewing docs, might make sense in a tool that is meant to provide insight into an elm codebase.
- Parse elm files instead of downloading documentation.json files.
- Parse module (name, comment, location)
- Parse imports (name, alias, exposing, location)
- Parse functions (name, type, comment, location)
- Parse types (name, args, cases, comment, location)
- Parse aliases (name, args, type, comment, location)
- Filter out all private values unless they are in the user's local project.
- Parse elm-package.json files
- Use "source-directories" to gather the correct .elm files to parse
- Also parse the project's elm-package.json file so we can provide data on the user's local code
- Store gathered data in a time-accessed based cache
- Using the cache + the imports data of the current file, generate needed data.
- Add a daemon mode that keeps running and responds to queries
- Add a command that will generate a docs preview of your project that can be opened in your browser
- Using the cache, generate tags files
- ctags
- etags
Metadata
Metadata
Assignees
Labels
No labels