Tool to generate React container and/or components from the terminal
Opentelemetry resource detector to get container resource attributes
Container Helper for Victory
Common Utils For React Component
Check if the process is running inside a container (Docker/Podman)
A plugin for Tailwind CSS v3.2+ that provides utilities for container queries.
vaadin-input-container
Common Utils For React Component
Check if the process is running inside a Docker container
@usewaypoint/document compatible Container component
View component and transforms for Vega visualizations.
Wrapper component that detects element resize and passes new dimensions down the tree. Based on [element-resize-detector](https://github.com/wnr/element-resize-detector)
emotion's cache
@usewaypoint/document compatible ColumnsContainer component
Useful components and hooks for react-konva
Plugin to create block-level custom containers for markdown-it markdown parser
A virtual scroll React component for efficiently rendering large scrollable lists, grids, tables, and feeds
JavaScript package for DocSearch, the best search experience for docs.
Official Sentry SDK for React.js
Universal Drag-and-Drop Component Supporting both Vue 3 and Vue 2
Dev Containers CLI
utility to return a react components display name
Render text with WebGL
emotion's stylesheet
Complete setup for React and Redux into Rails 5.1 pipeline or later. Includes initial Install generator, Pack generator for creating additional React apps in your Rails pipeline. Component and Container generators for adding new presentational components and container components anywhere in your project. Full description of install located at "https://github.com/Luke-Popwell/redux_rails"
This gem contains the base class used to create Banyan compatible components requiring connection to a single Banyan backplane. In addition to the base class, executables for rb_backplane and rb_monitor are installed on the executable path.
Contains resuable components extracted from the 18F Hub implementation for creating a team hub using Jekyll. See the 18F Public Hub for a running example: https://18f.gsa.gov/hub/ The 18F Hub repository is: https://github.com/18F/hub
Adds a component and container generator to better manage your projects and creates an easy system to re-use code in between projects. This gem sits on top of React_on_Rails and still has all of their functionality full read me at: https://github.com/Luke-Popwell/redux-rails-gem
Guilded is a framework for building web based components centered around current web standards and best practices. The current framework is written in ruby, but could be ported to other languages. Guilded intends to provide a toolset for creating and consuming reusable web components. Currently, this problem domain is filled with JavaScript frameworks. These frameworks are wonderful and work very well. However, they do not degrade gracefully and are not accessible. Guilded seeks to provide the same level of "componentization" and ease of use without sacrificing degradability and accessibility. Guilded will achieve these goals by applying each technology at our disposal to do what it was intended. XHTML will be employed for content. CSS used for layout and styling. Behavior will be added to a component with JavaScript through progressive enhancement. The user will have the best experience with a Guilded component when CSS and JavaScript are enabled in their browser, but will still be able to use the component when CSS and JavaScript are disabled. Guilded will use jQuery as it's base JavaScript framework. jQuery was chosen because it lends itself to progressive enhancement due to the way it was authored. In addition, the tight integration of jQuery's selectors with CSS selectors is also highly desirable. When authoring a Guilded component, it is encouraged to write the behavior code as a jQuery plugin. This will allow the jQuery plugin to be used outside of the Guilded project, if desired. Guilded also seeks to provide a standardized CSS framework for creating layouts that are reusable and predictable. Guilded will utilize the currently existing RubyGems system to package its components. A new Guilded component will be packaged in a Gem and have a dependency on the Guilded gem. The Guilded gem contains the framework to build Guilded components. Update: Due to the quality components, etc. being generated by the MooTools community and the general quality of the library, we have decided to include support for it in Guilded as of release 0.3.0.
IN ACTIVE DEVELOPMENT. High-performance Ruby game framework strongly influenced by the RPG Maker series by Enterbrain. The library contains multiple levels of abstraction, leveraging the power of modern OpenGL (C bindings built-in) and shaders, but building upon these low-level abstractions to create the user-friendly components that are to be expected in a 2D game framework, including sprites, textures, fonts, colors, etc. Those experienced with low-level graphics APIs have all the tools at their fingertips already built-in (OpenGL, GLFW, OpenAL, sound/font/image decoding, etc) and ready to build their own engine from, while those who have no interest in such can get started right away with powerful higher-level abstractions. While the library's API surface similar in many ways to RPG Maker XP/VX/VXA, bear in mind that it is merely incluenced by those, and liberal design changes have been taken to not limit the API or add restriction.
# Footman This gem is still growing. ## Installation Depends upon having reprepro tool installed (if debian based) or createrepo installed (if red hat based). Ruby 1.9.+ is required to use this gem. 'createrepo' (rpm) tool does not require any pre-setup to the repository or watched directory. - - - 'reprepro' (deb) tool requires pre-setup. The repository directory for deb files must contain: <pre><code> conf/ conf/distributions conf/options conf/override.precise </pre></code> options file is empty, but needed to make reprepro happy distributions file will contain: <pre><code>Origin: Tyler Label: Tyler's Personal Debs Codename: precise Architectures: i386 amd64 source lpia Components: main Description: Tylers Personal Debian Repository DebOverride: override.precise DscOverride: override.precise Origin: Tyler Label: Tyler's Personal Debs Codename: lenny Architectures: i386 amd64 source lpia Components: main Description: Tylers Personal Debian Repository DebOverride: override.lenny DscOverride: override.lenny </code></pre> Note that the code name is for each distribution repository you support. for each distribtuion repository you support there must be an override file. override file can be left empty, footman will fill it out when a new package is added. The watched directory must have sub directorys named after each of the distribution repositories you support. For example my watched directory at /path/ will have two subdirectories: <pre><code>/path/lenny/ /path/precise/</code></pre> Packages must be dropped into the subdirectory that corrosponds with the distribution they were built on. - - - Add this line to your application's Gemfile: gem 'footman' And then execute: $ bundle Or install it yourself as: $ gem install footman Or locally: $ gem build footman.gemspec $ gem install footman --local ## Usage footman path/to/watch path/to/repo ## Contributing 1. Fork it 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 new Pull Request
# COM # COM is an object-oriented wrapper around WIN32OLE. COM makes it easy to add behavior to WIN32OLE objects, making them easier to work with from Ruby. ## Usage ## Using COM is rather straightforward. There’s basically four concepts to keep track of: 1. COM objects 2. Instantiable COM objects 3. COM events 4. COM errors Let’s look at each concept separately, using the following example as a base. module Word end class Word::Application < COM::Instantiable def without_interaction with_properties('displayalerts' => Word::WdAlertsNone){ yield } end def documents Word::Documents.new(com.documents) end def quit(saving = Word::WdDoNotSaveChanges, *args) com.quit saving, *args end end ### COM Objects ### A COM::Object is a wrapper around a COM object. It provides error specialization, which is discussed later and a few utility methods. You typically use it to wrap COM objects that are returned by COM methods. If we take the example given in the introduction, Word::Documents is a good candidate: class Word::Documents < COM::Object DefaultOpenOptions = { 'confirmconversions' => false, 'readonly' => true, 'addtorecentfiles' => false, 'visible' => false }.freeze def open(path, options = {}) options = DefaultOpenOptions.merge(options) options['filename'] = Pathname(path).to_com Word::Document.new(com.open(options)) end end Here we override the #open method to be a bit easier to use, providing sane defaults for COM interaction. Worth noting is the use of the #com method to access the actual COM object to invoke the #open method on it. Also note that Word::Document is also a COM::Object. COM::Object provides a convenience method called #with_properties, which is used in the #without_interaction method above. It lets you set properties on the COM::Object during the duration of a block, restoring them after it exits (successfully or with an error). ### Instantiable COM Objects ### Instantiable COM objects are COM objects that we can connect to and that can be created. The Word::Application object can, for example, be created. Instantiable COM objects should inherit from COM::Instantiable. Instantiable COM objects can be told what program ID to use, whether or not to allow connecting to an already running object, and to load its associated constants upon creation. The program ID is used to determine what instantiable COM object to connect to. By default the name of the COM::Instantiable class’ name is used, taking the last two double-colon-separated components and joining them with a dot. For Word::Application, the program ID is “Word.Application”. The program ID can be set by using the .program_id method: class IDontCare::ForConventions < COM::Instantiable program_id 'Word.Application' end The program ID can be accessed with the same method: Word::Application.program_id # ⇒ 'Word.Application' Connecting to an already running COM object is not done by default, but is sometimes desirable: the COM object might take a long time to create, or some common state needs to be accessed. If the default for a certain instantiable COM object should be to connect, this can be done using the .connect method: class Word::Application < COM::Instantiable connect end If no running COM object is available, then a new COM object will be created in its stead. Whether or not a class uses the connection method can be queried with the .connect? method: Word::Application.connect? # ⇒ true Whether or not to load constants associated with an instantiable COM object is set with the .constants method: class Word::Application < COM::Instantiable constants true end and can similarly be checked: Word::Application.constants? # ⇒ true Constants are loaded by default. When an instance of the instantiable COM object is created, a check is run to see if constants should be loaded and whether or not they already have been loaded. If they should be loaded and they haven’t already been loaded, they’re, you guessed it, loaded. The constants are added to the module containing the COM::Instantiable. Thus, for Word::Application, the Word module will contain all the constants. Whether or not the constants have already been loaded can be checked with .constants_loaded?: Word::Application.constants_loaded # ⇒ false That concludes the class-level methods. Let’s begin with the #connected? method among the instance-level methods. This method queries whether or not this instance connected to an already running COM object: Word::Application.new.connected? # ⇒ false This can be very important in determining how shutdown of a COM object should be done. If you connected to an already COM object it might be foolish to shut it down if someone else is using it. The #initialize method takes a couple of options: * connect: whether or not to connect to a running instance * constants: whether or not to load constants These options will, when given, override the class-level defaults. ### Events ### COM events are easily dealt with: class Word::Application < COM::Instantiable def initialize(options = {}) super @events = COM::Events.new(com, 'ApplicationEvents', 'OnQuit') end def quit(saving = Word::WdDoNotSaveChanges, *args) @events.observe('OnQuit', proc{ com.quit saving, *args }) do yield if block_given? end end end To tell you the truth this API sucks and will most likely be rewritten. The reason that it is the way it is is that WIN32OLE, which COM wraps, sucks. It’s event API is horrid and the implementation is buggy. It will keep every registered event block in memory for ever, freeing neither the blocks nor the COM objects that yield the events. ### Errors ### All errors generated by COM methods descend from COM::Error, except for those cases where a Ruby error already exists. The following HRESULT error codes are turned into Ruby errors: HRESULT Error Code | Error Class -------------------|------------ 0x80004001 | NotImplementedError 0x80020005 | TypeError 0x80020006 | NoMethodError 0x8002000e | ArgumentError 0x800401e4 | ArgumentError There are also a couple of other HRESULT error codes that are turned into more specific errors than COM::Error: HRESULT Error Code | Error Class -------------------|------------ 0x80020003 | MemberNotFoundError 0x800401e3 | OperationUnavailableError Finally, when a method results in any other error, a COM::MethodInvocationError will be raised, which can be queried for the specifics, specifically #message, #method, #server, #code, #hresult_code, and #hresult_message. ### Pathname ### The Pathname object receives an additional method, #to_com. This method is useful for when you want to pass a Pathname object to a COM method. Simply call #to_com to turn it into a String of the right encoding for COM: Word::Application.new.documents.open(Pathname('a.docx').to_com) # ⇒ Word::Document ## Installation ## Install COM with % gem install com ## License ## You may use, copy and redistribute this library under the same [terms][1] as Ruby itself. [1]: http://www.ruby-lang.org/en/LICENSE.txt ## Contributors ## * Nikolai Weibull
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.