pursuit, 用于托管和搜索 PureScript API文档的网站

分享于 

4分钟阅读

GitHub

  繁體 雙語
Search engine for PureScript functions
  • 源代码名称:pursuit
  • 源代码网址:http://www.github.com/purescript/pursuit
  • pursuit源代码文档
  • pursuit源代码下载
  • Git URL:
    git://www.github.com/purescript/pursuit.git
    Git Clone代码到本地:
    git clone http://www.github.com/purescript/pursuit
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/purescript/pursuit
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    追踪

    Build Status

    用于PureScript软件包的跟踪主机API文档。 它允许你按包。MODULE 和函数名进行搜索,以及近似类型签名。

    追踪目前已经部署在 https://pursuit.purescript.org

    软件包作者信息可以在 https://pursuit.purescript.org/help 找到。

    插件开发

    建议使用 stack: http://docs.haskellstack.org

    插件生成

    要在开发模式中进行构建,请执行以下操作:

     
    $ stack build
    
    
    
     

    要在生产模式下构建:

    
    $ stack build --flag pursuit:-dev
    
    
    
    

    插件开发

    要在开发过程中快速迭代,可以使用 ghci:

     
    $ stack ghci
    
    
    
     

    加载加载项之后,可以重新加载代码,然后更新web服务器:

    
    > :l DevelMain
    
    
    > update
    
    
    
    

    Web服务器

    要在 http://localhost:3000 上运行web服务器,请执行以下操作:

    
    $ stack exec pursuit
    
    
    
    

    你可能想向数据库( 请参阅数据库 ) 添加一些内容,否则你将无法浏览任何软件包。 在服务器开始侦听之前,数据库将从该数据源重新生成;这可能需要很短的时间,取决于你有多少数据。

    数据库

    查询当前使用 文件系统 作为数据库,因为它不需要安装,因这里使用Git和GitHub备份数据库变得容易。 数据目录是通过环境变量( 请参见配置,缺省为 data ) 设置的。

    在使用示例包时,可以克隆追踪备份插件,并复制想要的包到 verified/ 目录。 这比手动上传每个软件包更方便。

    数据库结构

    数据库结构如下所示:

    
    /
    
    
     cache/
    
    
     packages/
    
    
     purescript-prelude/
    
    
     0.1.0/
    
    
     index.html
    
    
     docs/
    
    
     Prelude/
    
    
     index.html
    
    
     verified/
    
    
     purescript-prelude/
    
    
     0.1.0.json
    
    
     0.1.1.json
    
    
    
    

    cache/ 目录有镜像web应用程序URL结构的文件,并且包含不改变并可以将请求转发到Yesod应用程序的文件。 有关详细信息,请参阅 Handler.Caching。

    verified/ 目录存储上传的软件包。 每个包都有自己的目录,然后每个版本都有一个JSON文件。 这些JSON文件都包含序列化的Package GithubUser ;有关这些类型的详细信息,请参见编译器中的Language.PureScript.Docs.Types。

    备份过程只是将目录中的所有内容都包含到git存储库中,进行提交,并将它的推到 GitHub。

    配置

    所有配置都在启动时通过 环境变量 完成。 相关代码在设置模块中。

    所有配置变量名称以 PURSUIT_ ( 例如 PURSUIT_APPROOT ) 开头。 所有配置变量都是可选的;对于开发,只需运行 stack exec pursuit 就可以将它们全部。

    有关详细信息,请参阅 src/Settings.hs

    资产

    static/favicon 中的favicon资产取自 Purescript logo 存储库。


    WEB  API  DOC  网站  搜索  HOST  
    相关文章