Blockchain event indexer powered by @lynx-core/indexer
Verdaccio Search Indexer
Generate Lunr indices for Hugo static sites by parsing front matter.
indexer sub-package for Sequence
Index Algolia with Storyblok content
CKB Indexer
A package by Video Indexer in order to embed Video Indexer insights widget in the customer service and customize it's style and data.
A handy Sass helper for managing z-index layers
React hooks and client for querying the Provex indexer (deposits, intents, events). Ships with the Provex indexer schema bundled; swap schema or URL via createProvexIndexerClient.
Minimal Typescript indexer for Store
Core indexing, retrieval, and graph engine for Mneme
A latency and sync speed optimized, developer friendly blockchain data indexer.
Client for communicating with the Midnight indexer service.
A latency and sync speed optimized, developer friendly blockchain data indexer.
TODO
Router package for Morpho protocol
Manage child views in a Backbone.View
An asciidoctor extension for Antora, querying the Antora content catalog and reporting the results in various formats.
Common script support in lumos
Azure client library to use AI Search for node.js and browser.
Generate an AST from a string template.
Portable React buy-flow component and hooks for the Provex protocol
Catalog plane foundation for Voyant. The shared cross-cutting infrastructure that vertical modules — `products`, `cruises`, `accommodations`, `charters`, `extras` — adopt to participate in a normalized discovery / overlay / snapshot / search surface.
Implementation of public data provider based on the Midnight Pub-sub indexer
Secateurs is a tool to manage Elasticsearch Index Template.
A Jekyll plugin to generate custom category index pages. Bring your own template.
Babel is an RDoc formatter producing HTML documentation. The default template is +ruby-lang+: - Look and feel inspired from https://www.ruby-lang.org/. - Dual-frame output, with indexes on the left. - Search boxes for classes and methods. - Links to undocumented classes/methods are grayed. - Highlights target methods, attributes and constants. - Adds links to ancestor methods/attributes.
deplate is a ruby based tool for converting documents written in an unobtrusive, wiki-like markup to LaTeX, HTML, "HTML slides", or docbook. It supports page templates, embedded LaTeX code, footnotes, citations, bibliographies, automatic generation of an index, table of contents etc. It can be used to create web pages and (via LaTeX or Docbook) high-quality printouts from the same source. deplate probably isn't suited for highly technical documents or documents that require a sophisticated graphical layout. For other purposes it should work fine. deplate aims to be modular and easily extensible. It is the accompanying converter for the Vim viki plugin. In the family of wiki engines, the choice of markup originated from the emacs-wiki.
GuerrillaRotate ============== This plugin lets you have multiple view pages for the one action, so that you can rotate through different views in order to test which one is the most effective. This is known as A/B testing, split testing or side-by-side testing. It will automatically switch between the different views for different web requests (uses .rand so is pseudo random, not round-robin or anything). The particular view is sticky for a (rails) session, so that once that view has been chosen for that visitor they will see the same, consistent view each time. It integrates automagically into [Rubaidh::GoogleAnalytics](http://github.com/rubaidh/google_analytics) by setting the override_trackpageview to the name of the unique view file (instead of the action-based URL) so you can track it easily in Google Analytics. Without that you'll want to track it by putting different tracking codes in each of your view templates. Example ------- So, in your views you will create some new templates with something (can be anything including nothing) between the template name and the first part of the extension. So you might have the following files for the products/index action: app/views/products/index.html.erb app/views/products/index_alt.html.erb app/views/products/index_new.html.erb Then all you need to do is tell your controller to rotate for that action: ### app/controllers/products_controller.rb class ProductsController < ApplicationController guerrilla_rotate :index, :show # etc.. end NB: guerrilla_rotate is also aliased as guerilla_rotate for the alternative spelling and typos. Copyright © 2009 Jason King, released under the MIT license
Proper related posts plugin for Jekyll - uses document correlation matrix on TF-IDF (optionally with Latent Semantic Indexing). Each document is tokenized and stemmed, every word found is treated as keyword for analysis (except for some stop words). TF-IDF matrix for the whole site is calculated (including extra provided weights), then if given accuraccy is lower than 1.0, LSI algorithm is used to compute new simplified vector space. Document correlation matrix is created using dot product of the matrix and its transpose. For each of the post' related documents are inserted into priority queue (sorted by score from document correlation matrix), assuming the score is greater than minimal required score. Selected few bests related posts are retrieven from the queue. Liquid template for each post is rendered and <related-posts /> is replaced with the outcomes of algorithm.
Graphviz wrapper for Ruby. This can be used as a common library, a rails plugin and a command line tool. == FEATURES/PROBLEMS: GraphvizR is graphviz adapter for Ruby, and it can: * generate a graphviz dot file, * generate an image file by means of utilizing graphviz, * interprete rdot file and generate an image file, * and, generate a graph image file in rails application as a rails plugin. == SYNOPSYS: === Command Line: bin/graphviz_r sample/record.rdot === In Your Code: This ruby code: gvr = GraphvizR.new 'sample' gvr.graph [:label => 'example', :size => '1.5, 2.5'] gvr.beta [:shape => :box] gvr.alpha >> gvr.beta (gvr.beta >> gvr.delta) [:label => 'label1'] gvr.delta >> gvr.gamma gvr.to_dot replies the dot code: digraph sample { graph [label = "example", size = "1.5, 2.5"]; beta [shape = box]; alpha -> beta; beta -> delta [label = "label1"]; delta -> gamma; } To know more detail, please see test/test_graphviz_r.rb === On Rails : <b>use _render :rdot_ in controller</b> def show_graph render :rdot do graph [:size => '1.5, 2.5'] node [:shape => :record] node1 [:label => "<p_left> left|<p_center>center|<p_right> right"] node2 [:label => "left|center|right"] node1 >> node2 node1(:p_left) >> node2 node2 >> node1(:p_center) (node2 >> node1(:p_right)) [:label => 'record'] end end <b>use rdot view template</b> class RdotGenController < ApplicationController def index @label1 = "<p_left> left|<p_center>center|<p_right> right" @label2 = "left|center|right" end end # view/rdot_gen/index.rdot graph [:size => '1.5, 2.5'] node [:shape => :record] node1 [:label => @label1] node2 [:label => @label2] node1 >> node2 node1(:p_left) >> node2 node2 >> node1(:p_center) (node2 >> node1(:p_right)) [:label => 'record'] == DEPENDENCIES: * Graphviz (http://www.graphviz.org) == TODO: == INSTALL: * sudo gem install graphviz_r * if you want to use this in ruby on rails * script/plugin install http://technohippy.net/svn/repos/graphviz_r/trunk/vendor/plugins/rdot == LICENSE: (The MIT License)
== README.md: #ScheduledResource This gem is for displaying how things are used over time -- a schedule for a set of "resources". You can configure the elements of the schedule and there are utilities and protocols to connect them: - Configuration (specification and management), - Query interfaces (a REST-like API and internal protocols to query the models), and - A basic Rails controller implementation. We have a way to configure the schedule, internal methods to generate the data, and a way to retrieve data from the client. However this gem is largely view-framework agnostic. We could use a variety of client-side packages or even more traditional Rails view templates to generate HTML. In any case, to get a good feel in a display like this we need some client-side code. The gem includes client-side modules to: - Manage <b>time and display geometries</b> with "infinite" scroll along the time axis. - <b>Format display cells</b> in ways specific to the resource models. - <b>Update text justification</b> as the display is scrolled horizontally. ## Configuration A **scheduled resource** is something that can be used for one thing at a time. So if "Rocky & Bullwinkle" is on channel 3 from 10am to 11am on Saturday, then 'channel 3' is the <u>resource</u> and that showing of the episode is a <u>resource-use</u> block. Resources and use-blocks are typically Rails models. Each resource and its use-blocks get one row in the display. That row has a label to the left with some timespan visible on the rest of the row. Something else you would expect see in a schedule would be headers and labels -- perhaps one row with the date and another row with the hour. Headers and labels also fit the model of resources and use-blocks. Basic timezone-aware classes (ZTime*) for those are included in this gem. ### Config File The schedule configuration comes from <tt>config/resource_schedule.yml</tt> which has three top-level sections: - ResourceKinds: A hash where the key is a Resource and the value is a UseBlock. (Both are class names), - Resources: A list where each item is a Resource Class followed by one or more resource ids, and - visibleTime: The visible timespan of the schedule in seconds. The example file <tt>config/resource_schedule.yml</tt> (installed when you run <tt>schedulize</tt>) should be enough to display a two-row schedule with just the date above and the hour below. Of course you can monkey-patch or subclass these classes for your own needs. ### The schedule API The 'schedule' endpoint uses parameters <tt>t1</tt> and <tt>t2</tt> to specify a time interval for the request. A third parameter <tt>inc</tt> allows an initial time window to be expanded without repeating blocks that span those boundaries. The time parameters _plus the configured resources_ define the data to be returned. ### More About Configuration Management The <b>ScheduledResource</b> class manages resource and use-block class names, id's and labels for a schedule according to the configuration file. A ScheduledResource instance ties together: 1. A resource class (eg TvStation), 2. An id (a channel number in this example), and 3. Strings and other assets that will go into the DOM. The id is used to - select a resource _instance_ and - select instances of the _resource use block_ class (eg Program instances). The id _could_ be a database id but more often is something a little more suited to human use in the configuration. In any case it is used by model class method <tt>(resource_use_block_class).get_all_blocks()</tt> to select the right use-blocks for the resource. A resource class name and id are are joined with a '_' to form a tag that also serves as an id for the DOM. Once the configuration yaml is loaded that data is maintained in the session structure. Of course having a single configuration file limits the application's usefulness. A more general approach would be to have a user model with login and configuration would be associated with the user. ## Installation Add this line to your application's Gemfile: ```ruby gem 'scheduled_resource' ``` And then execute: $ bundle Or install it yourself as: $ gem install scheduled_resource Then from your application's root execute: $ schedulize . This will install a few image placeholders, client-side modules and a stylesheet under <tt>vendor/assets</tt>, an example configuration in <tt>config/resource_schedule.yml</tt> and an example controller in <tt>app/controllers/schedule_controller.rb</tt>. Also, if you use $ bundle show scheduled_resource to locate the installed source you can browse example classes <tt>lib/z_time_*.rb</tt> and the controller helper methods in <tt>lib/scheduled_resource/helper.rb</tt> ## Testing This gem also provides for a basic test application using angularjs to display a minimal but functional schedule showing just the day and hour headers in two different timezones (US Pacific and Eastern). Proceed as follows, starting with a fresh Rails app: $ rails new test_sr As above, add the gem to the Gemfile, then $ cd test_sr $ bundle $ schedulize . Add lines such as these to <tt>config/routes.rb</tt> get "/schedule/index" => "schedule#index" get "/schedule" => "schedule#schedule" Copy / merge these files from the gem source into the test app: $SR_SRC/app/views/layouts/application.html.erb $SR_SRC/app/views/schedule/index.html.erb $SR_SRC/app/assets/javascripts/{angular.js,script.js,controllers.js} and add <tt>//= require angular</tt> to application.js just below the entries for <tt>jquery</tt>. After you run the server and browse to http://0.0.0.0:3000/schedule/index you should see the four time-header rows specified by the sample config file. ## More Examples A better place to see the use of this gem is at [tv4](https://github.com/emeyekayee/tv4). Specifically, models <tt>app/models/event.rb</tt> and <tt>app/models/station.rb</tt> give better examples of implementing the ScheduledResource protocol and adapting to a db schema organized along somewhat different lines. ## Contributing 1. Fork it ( https://github.com/emeyekayee/scheduled_resource/fork ) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request
Contentful API wrapper library exposing an ActiveRecord-like interface