Skip to content

Instantly share code, notes, and snippets.

@chrise86
chrise86 / active_link_to.rb
Created March 28, 2023 09:03 — forked from dcyoung-dev/active_link_to.rb
An `active_link_to` helper that adds the `.active` class and sets `aria-current="page"`
View active_link_to.rb
@chrise86
chrise86 / generators-service-USAGE
Created June 22, 2022 08:30 — forked from RobinDaugherty/generators-service-USAGE
Rails generator for services and lib objects
View generators-service-USAGE
Description:
Stubs a new Service object in the `lib` folder and a spec for it.
Providing a list of argument names will set up the initializer to accept them
and create private accessors for each of them.
To create a service within a module, specify the service name as a
path like 'parent_module/service_name' or 'ParentModule::ServiceName'.
Example:
@chrise86
chrise86 / Confetti.tsx
Created April 9, 2020 07:16 — forked from ShopifyEng/Confetti.tsx
Building Arrive's Confetti in React Native with Reanimated - Confetti Final
View Confetti.tsx
import React, {useMemo} from 'react'
import Animated from 'react-native-reanimated'
import {View, Dimensions, StyleSheet} from 'react-native'
import FastImage from 'react-native-fast-image'
import ConfettiImage from 'assets/images/confetti.png'
const NUM_CONFETTI = 100
const COLORS = ['#00e4b2', '#09aec5', '#107ed5']
const CONFETTI_SIZE = 16
View userChrome.css
/* Fixing back button in normal density */
:root:not([uidensity=compact]) #back-button {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
:root:not([uidensity=compact]) #back-button > .toolbarbutton-icon {
background-color: unset !important;
border: none !important;
}
@chrise86
chrise86 / call_template.rb
Last active March 2, 2018 11:30 — forked from juggy/call_template.rb
Render a complete page in rails 5 without controller
View call_template.rb
# create the template
template = PageOfflineTemplate.new
template.quote = quote
template.pages = quote.build_pages
# Here I render a template with layout to a string then a PDF
pdf = PDFKit.new template.render_to_string(:template=>"quotes/review.html.haml")
@chrise86
chrise86 / rails_api_token_auth_with_tiddle.md
Created January 18, 2018 11:01 — forked from brunofacca/rails_api_token_auth_with_tiddle.md
Rails API token authentication with Tiddle gem in apps with web views
View rails_api_token_auth_with_tiddle.md

This gist attempts to explain how to implement token authentication in Rails, using Devise and Tiddle. Tiddle was designed to provide token auth for API-only Rails apps. However, the following instructions will enable you to use it in Rails apps which have both APIs and web views.

##Why Tiddle?

Devise is the obvious choice for authentication on Rails. However, token authentication was

@chrise86
chrise86 / application_helper.rb
Last active November 18, 2017 09:49 — forked from dnagir/application_helper.rb
Render a different variant in rails
View application_helper.rb
module ApplicationHelper
def with_variant(new_variant, &block)
old_variants = lookup_context.variants
begin
lookup_context.variants = [new_variant]
return block.call
ensure
lookup_context.variants = old_variants
end
end
@chrise86
chrise86 / pundit_namespaces.rb
Created July 25, 2017 19:39 — forked from spieker/pundit_namespaces.rb
Namespaces for Pundit policies
View pundit_namespaces.rb
# This concern enables namespaces in Pundit. In order to use it, put this
# module into the `app/controllers/concerns` folder of your project and then
# include the module into the controller you want to namespace the policies in
# after the include of Pundit.
#
# To secify the namespace to use, overwrite the `pundit_namespace` method on
# your controller then.
#
# Example
# =======
@chrise86
chrise86 / after.rb
Created July 25, 2017 13:22 — forked from mperham/after.rb
Thread-friendly shared connection
View after.rb
class ActiveRecord::Base
mattr_accessor :shared_connection
@@shared_connection = nil
def self.connection
@@shared_connection || ConnectionPool::Wrapper.new(:size => 1) { retrieve_connection }
end
end
ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection
@chrise86
chrise86 / ruby_boolean.rb
Created July 12, 2017 12:39
How to implement a Boolean-Class for Ruby.
View ruby_boolean.rb
#
# DO NOT EXPECT THIS WILL RUN AS SHOWN HERE!
# This is an extract from https://github.com/iboard/yarb
# The specs will work only in the full environment of the application.
#
# Anyhow, this example should show you how to define a Boolean-value
# for ruby.
#
# Because HTML-Forms will post checkbox-values as "0"/"1" rather than false/true
# this class will handle 0,"0",false as FalseValue, and 1,"1",true as TrueValue