text:
# Archivematica test_instance docker-compose

This  [docker-compose.yml](https://github.com/ualibraries/archivematica/blob/master/compose/test_instance/docker-compose.yml) example creates an instance of archivematica to quickly test with, where all settings and data are intended to be thrown away.

## Pre-requisites

### Email Settings

Archivematica sends emails on processing status. The docker-compose uses the following settings, which should be changed to match your organization's email setup.

* SMTP_DOMAIN=gmail.com
* SMTP_SERVER=smtp.gmail.com:587
*<EMAIL_ADDRESS>*<EMAIL_ADDRESS>
### Incoming directory

Archivematica's default directory for transferring in content to process is the /home directory within the container. This should get externally mounted to the host system in order to provide content for archivematica to process. The docker-compose file currently sets the incoming directory to a locally created ./incoming dir when the container is created

```
   volumes:
      - ./incoming:/home
```

### Shell script

An equivalent shell script to the [docker-compose.yml](https://github.com/ualibraries/archivematica/blob/master/compose/test_instance/docker-compose.yml) file is:

```sh

    #!/bin/sh

    AMATICA_INCOMING_DIR=./incoming

    mkdir -p "$AMATICA_INCOMING_DIR"

    docker run -d \
           --restart=unless-stopped \
           -p 80:80 \
           -p 8000:8000 \
           -e SMTP_DOMAIN=gmail.com \
           -e SMTP_SERVER=smtp.gmail.com:587 \
           -e<EMAIL_ADDRESS>\
           -e<EMAIL_ADDRESS>\
           -v $AMATICA_INCOMING_DIR:/home \
           --name amatica \
           uazlibraries/archivematica:1.6.1-beta1

```

repository: ualibraries/archivematica

repo_name: ualibraries/archivematica


text:
crminer 0.2.0
=============

### NEW FEATURES

* `crm_cache$cache_path_set()` gains ability to set the full cache path directly via its `full_path` parameter via an update to package `hoardr`   (#27)

### MINOR IMPROVEMENTS

* add `raw` as another parameter in `crm_extract()` to allow raw byte extraction from a pdf (#24)
* add intended application (from crossref) to output of `crm_links()` to allow filtering on the intended application (#28)

crminer 0.1.4
=============

### BUG FIXES

* Fixed failing tests due to Crossref changing what they give
back for links - made tests robust to those changes (#21)

crminer 0.1.2
=============

### NEW FEATURES

* New object `crm_cache` for managing cached files, see `?crm_cache`
after installation (#19)

### MINOR IMPROVEMENTS

* Now using `hoardr` for managing cached files (#19)
* `crm_pdf()` and `crm_text()` lose the parameter `path` - instead cache
directory managed through `crm_cache`

crminer 0.1.0
=============

### NEW FEATURES

* Released to CRAN

license: MIT

branch_name: refs/heads/master

extension: md

license_type: permissive


text:
# Additional Joy Objects - Paintings
![version](https://img.shields.io/badge/RimWorld-1.2-brightgreen.svg) ![version](https://img.shields.io/badge/Status-Released-brightgreen.svg) [![steamlink](https://raster.shields.io/steam/downloads/2067489184.png?color=blue&label=Workshop&logo=steam)](https://steamcommunity.com/sharedfiles/filedetails/?id=2067489184)

Mod originally by Cupro, updated to ~~B19~~ ~~1.0~~ ~~1.1~~ 1.2 by dninemfive with permission.

This mod adds paintings and an easel to the game. Paintings are works of art, and the easel is used to make them or just to doodle.

Requires [D9 Framework](https://github.com/dninemfive/d9framework/releases).

## Details
- Adds spectago, a beautiful plant which produces useful leaves;
- Spectago tea, brewed at a stove, providing a minor but non-addictive bonus;
- Painting supplies, made with Spectago and any leaves at a stove;
- And an easel, a workbench used to produce paintings as well as a joy source as pawns like to doodle there.

repository: dninemfive/ajocollection

path: /AJO - Paintings/README.md

repo_name: dninemfive/ajocollection


text:
---
author: Haquor
date: 2019-10-21 23:53:51+00:00
draft: false
title: Password Recovery Questions Are a Horrible Idea
type: post
url: /2019/10/21/why-your-security-answer-shouldnt-be-honest/
---

Ever sign up for your favorite site? Fill out all your info, set your password.

1. What's your favorite undersea mollusk?
2. How many pets have you had?
3. What's color is your mother's brother's hair?

You answer them honestly, because only you would know the answers....**right?**

Wrong. Security questions are one of the most common (and easiest) methods for hacking into an account.
<!--more-->

Now, many companies are switching from asking for _only_ the security question to grant account access. Many are only using it as 1 layer of a multi-layer password reset procedure. However, many still let you reset your password with just the security question.

Out of all the "Forgot My Password" requirements, security answer is the easiest to guess.

[Social Engineers](https://www.csoonline.com/article/2124681/what-is-social-engineering.html) spend their entire criminal careers researching a person's social media, background and personal information. Think the name of your first pet is a big secret? Not when you make a memorial post to your 1st cat sparkles on your Facebook page.

What about the maiden name of your mother? It's out there. Public sources host thousands of marriage records. Nearly every simplistic security question can be found simply over the internet.

##  Humans as the Weakest Link

It's common knowledge in the InfoSec community that [human beings are the weakest link in the cyber security chain](https://www.cio.com/article/3191088/humans-are-still-the-weakest-cybersecurity-link.html). Once a social engineer has access to a list of everyone in your social circle they can send emails that **appear** to be from friends of friends.

Sometimes they cold call pretending to be a company you know to collect data that might answer your security questions. Hell, if they have physical access, they can **send a stranger in** to befriend you and learn the name of your first pet. Most of these questions are so benign that people answer them with no hesitation.

## How do I fix it?

Almost every website that asks security questions also asks you to set an account password. That password will **always** have complexity requirements. Your password is not allowed to be cat or dog.

Folks, we shouldn't answer our security questions honestly. Instead, we should use **backup passwords** as the answers. When creating these backup passwords you should follow these government grade requirements ([NIST](https://en.wikipedia.org/wiki/National_Institute_of_Standards_and_Technology)):

  1. A minimum of eight characters and a maximum length of at least 64 characters
  2. The ability to use all special characters but no special requirement to use them
  3. Restrict sequential and repetitive characters (e.g. 12345 or aaaaaa)
  4. Restrict context specific passwords (e.g. the name of the site, etc.)
  5. Restrict commonly used passwords (e.g. p@ssw0rd, etc.) and dictionary words

Another next-level way to protect yourself?

Use branch databases to check if the password you've chosen has been hacked before. If it has? It's much more likely for hackers to attempt that password on your account.

extension: markdown


text:
---
title: "Kitty on the shoulder"
excerpt: "PaperFaces portrait of @sendapalic drawn with Paper by 53 on an iPad."
image:
  path: &image /assets/images/paperfaces-sendapalic-twitter.jpg
  feature: *image
  thumbnail: /assets/images/paperfaces-sendapalic-twitter-150.jpg
tags: [portrait, illustration, Paper by 53, blend, beard]
---

Blend is one of those tools that can easily be abused. Trying to limit its use to avoid going too soft and blurring brush strokes painted in Paper and retain character. I've found that blending colors and then applying a layer of light watercolor on top has a nice look.

PaperFaces portrait of @sendapalic.

{% include boilerplate/paperfaces-3.md %}

Beginning the portrait with a pencil sketch.

Work in progress screenshots (Paper by 53).

repository: gbbns/made-mistakes-jekyll

repo_name: gbbns/made-mistakes-jekyll


text:
# QUIZ BOARD
#### Quiz board is a website designed to test javascript learners and help them see where they are in their lessons, December 20th 2018
#### By **Yvette Umubyeyi.**
## Description
Quiz board is a website that is designed to test javascript learners and help them see where they are in their lessons.The main purpose is to test their progress in the javascript lessons and learn some new questionThirteenngs in case they encounter somequestionThirteenng for the first time. The quiz is marked to 20 marks and the questions are questionTwelventy.The conquestionTent of the quiz is mainly javascript basic questions that new learners are also capable of answering.
## Setup/Installation Requirements
* Open your computer
* Connect to internet
* search for my link: yvetteveve.github.io/QUIZ BOARD
* There you are, Time for quiz!
questionThirteens website can be view on mobile or computer and with ease and it is made for easy learning.
## BDD(Behavior-Driven Development)
### The following is what my program should handle:
It can determine if the provided answer is correct or wrong

#### Example Intput :
correctly answered questions
 ##### Output:
 1 per correct answer

#### Example Input :
not answered questions
#####  Output:
0 (No mark awarded)

#### Example Input:
Wrong answer questions
##### Output
0 (Mark not awarded)

##### Total marks to be awwarded must be questionTwelventy

## Known Bugs
All safe , no bugs will be encoutered on my quiz board website. But in case it is unfortunately encountered kindly reach out.
## Technologies Used
In making the quiz board website is mainly  used javascript,html,css and jquery to handle my program.
I also used ubuntu software and visual studio code to write my code and used github to push my repository and host the website.
## Support and contact details
If needed contact me on:
<EMAIL_ADDRESS>PhquestionOne:0782237885.
### License
**[MIT](http://choosealisence.com/licenses/mit/)**
Copyright (c) 2018 **Yvette Umubyeyi**

repository: yvetteveve/quiz

repo_name: yvetteveve/quiz


text:
# Informix Python Code Samples

Here you will find examples for using the Infomrix Python driver to build applications that use the Informix Database engine.

Sample | Description
-------|------------
basicQuery | Example using the Python driver to build a basic application.

## Required Software

* https://github.com/OpenInformix/IfxPy
* http://central.maven.org/maven2/com/ibm/informix/odbc/4.10.10/odbc-4.10.10-linux-x86_64.tar

repository: maximilianobl/informix-db-examples

repo_name: maximilianobl/informix-db-examples


text:
keybrd Library User's Guide
===========================
This guide shows you how to set up Arduiono IDE and keybrd library.
We also cover how to compile and load keybrd firmware onto the keyboard's processor.

## Who This Guide is for
This guide is for users that want to develop custom keyboard firmware using the keybrd library.
It is assumed the reader is familiar with C/C++ language including pointers, static class variables, and composition.

## Getting Started with Teensy2.0, Arduino IDE, and keybrd
A **keybrd sketch** is an C++ file that uses the keybrd library to define keyboard firmware.
The Arduiono IDE is free, easy to setup, and simple to use.
The Arduino IDE compiles the keybrd sketch to make an executable keyboard firmware.
The firmware is then loaded onto the keyboard's Teensy2.0 microcontroller.
The result is a keyboard that is compatible with standard USB keyboard drivers.

Teensy2.0 is a USB-based microcontroller development system.  It runs the keyboard.
A good way to get familiar with Teesny2.0 is [Teensy Getting Started](http://www.pjrc.com/teensy/first_use.html).

Teensyduino is a software add-on for the Arduino IDE that allows it to compile to Teensy2.0
Follow the [install steps](https://www.pjrc.com/teensy/td_download.html)
(you may need to run the Teensyduino installer as Administrator).

A program written for Arduino is called a sketch.
The Arduino IDE is used to compile keybrd sketches.
Here is a brief description of the [Arduino Development Environment](http://arduino.cc/en/guide/Environment).

### Setup Arduino IDE for Compiling keybrd Firmware
From the Arduino IDE tool bar, select:
* Tools > Board > Teensy2.0
* Tools > USB Type > Keyboard + Mouse + Joystick

### Download and Unpack keybrd-master.zip into Your Arduino Folder
Down load keybrd-master.zip from the [Download ZIP](https://github.com/wolfv6/keybrd) button.
Unpack keybrd-master.zip into your Arduino folder on your system (default location on Windows is Documents\Arduino\).

### Move the keybrd_Layers Folder
keybrd sketches are grouped into folders by layer scheme.
Each layer scheme has a keybrd_Layers folder that the keybrd sketches depend on.
keybrd_Layers folders are in the keybrd_sketches subfolders:
* Arduino\keybrd_sketches\keybrd_DodoHand\keybrd_Layers
* Arduino\keybrd_sketches\keybrd_multi-layer\keybrd_Layers
* Arduino\keybrd_sketches\keybrd_single-layer\keybrd_Layers

For whichever keybrd sketch you want to compile, move the corresponding keybrd_Layers folder into Arduino\libraries\.

If you decide to change layer schemes, remember to follow these steps:
1. If there is keybrd_Layers folder in Arduino\libraries\, move it back to it's original location
   (each keybrd_Layers folder contains a README file that identifies the origin of the folder).
2. Move keybrd_Layers folder from Arduino\keybrd_sketches\keybrd_layer-scheme\ to Arduino\libraries\.
If a keybrd sketch was compiled with a missing or wrong keybrd_Layers folder, also:
3. Delete AppData\Local\Temp\build123456789012345678.tmp (the folder number will be unique).
4. Close and reopen the Arduino IDE.

These steps are a work-a-round for the Arduino IDE.

#### Move the keybrd_Layers Folder Work-a-round for Arduino IDE Explained
The Arduino IDE can not handle more than one layer scheme.
People using just one layer scheme are not affected.
However, it is annoying for developing many keyboards with different layer schemes.
The work-a-round is to move the keybrd_Layers folder into the Arduino/libraries/.
The reason for moving keybrd_Layers folder is explained in [Arudino issue 2547](https://github.com/arduino/Arduino/issues/2547).

Arduino IDE caches object files when compiling a sketch.
This saves on compile time, but links break if files of same name are swapped into the library.
If the build..tmp folder is not deleted after moving the keybrd_Layers folder, one of three things happens when the Arduino IDE compiles:
* everything runs normal
* nonsense link errors
* keyboard runs fine for a while and then spews charters or other unexpected behavior

### Compile and Load
If it isn't already plugged in, plug the USB cable into the computer and Teensy2 processor.

> CAUTION: It is possible to loose control of your keyboard to bad firmware.
> If the keybrd has a mouse object, it is also possible to loose control of your mouse.
> USB keyboard protocol is capable of sending characters and mouse commands at upto 500 per second.
> Take the following precautions before uploading an untested keyboard program to Teensy:
> * Save all files and park the cursor in an empty editor.
> That way you can immediately see if the processor starts spewing characters.
> * Be prepared to turn off Teensy (by pushing the Teensy button or unplugging it from USB).

Compile and load:
* Open a keybrd sketch in the Arduino IDE (for example Arduino\keybrds\firmware\keybrd_single-layer\keybrd_single-layer_1221_bb\keybrd_single-layer_1221_bb.ino)
* Click the Upload button.
* The Teensy boot loader window opens, press and release the tiny pushbutton on the Teensy circuit board.

## Sample keybrd Sketches
todo: update this section

Sample keybrd sketches are in the keybrd_sketches folder, grouped by layer scheme.
The sketches use the following naming conventions.

    keybrd_layerScheme_1234_feature_layout_version.ino

where
* **keybrd** is a literal string
* **layerScheme** is layer scheme name e.g. single-layer, multi-layer, DualMode, DodoHand
* **1** is matrixCount
* **2** is layout's max rowCount (letters ABCDEFG for rowCount 10 to 16)
* **3** is layout's max colCount (letters ABCDEFG for colCount 10 to 16)
* **4** is layerCount
* **feature** is distinguishing feature of keybrd e.g. bb (breadboard), LEDs, sound, lock
* **layout** is keyboard layout e.g. QWERTY
* **version** is version number

**keybrd** and **layerScheme** are mandatory, remaining parts are optional.

## Troubleshooting check list
Below is a listing of things to check when a new keybrd sketch or keyboard is having trouble.

Development-environment items to check:
 * After changing and loading a hex file that affects the I/O expander initializations,
 it is necessary to depower and power the I/O expander (unplug and replug USB) for the change to take effect.

 * if the keybrd_Layers Folder was changed, see section "Move the keybrd_Layers Folder"

keybrd sketch code to check:
 * some of the constructors take array-element-count arguments arguments, make sure that the correct counts are passed to the constructors.

 * c_RowPort or c_ColPort must be instantiated before an I/O expander c_LED object is instantiated.
This is because the I/O expander's direction register is configured in the c_RowPort and c_ColPort constructors.

Hardware items to check:
 * connections
 * diode orientation

## test suite
keybrd_test_suite.odt

repository: dualsky/keybrd

repo_name: dualsky/keybrd


text:
---
layout: post
tags:
- emacs

date: 2014-10-24 13:40:00 +0200
title: ECB - emacs code browser

---

For improving my programming workflow, I was looking for a way to pimp emacs and found [ECB - Emacs Code Browser](http://ecb.sourceforge.net/). This is a handy extension that provides the almighty emacs with a graphical interface for code navigation and overview:

![alt text](/resources/images/emacs24ecb.png "Logo Title Text 1")

Installation is quite easy:

```
M-x package-install -> ecb
```

Then open a file and activate it with:

```
M-x ecb-activate
```

gha_language: JavaScript

gha_license_id: NOASSERTION


text:
# Andrew Ng's coursera machine learning course homeworks
- - -
The homeworks given during the lectures are solved and related explanations can be found either in pdfs or in the code itself.

## Contact
---
In case any of explanation needed or any better implementation that you have plesase contact<EMAIL_ADDRESS>
## Requirements
---
[Octave](http://wiki.octave.org/Main_Page) programming environment or [Matlab](http://www.mathworks.com/products/matlab/) can be used to solve algorithmic problems easier than other programming languages. Moreover, [Julia](http://julialang.org) is becomming popular in intensive computation required cases

repository: kirnap/MachineLearningAndrewNG

gha_language: Matlab

repo_name: kirnap/MachineLearningAndrewNG


text:
# CNN card

[![](video_link_image.jpg)](https://youtu.be/wtxGkK6LNEg "Project video")

Business card that runs a convolutional neural network to classify 5x5 pixel digits and shows the internal activations for all layers.

## Model
Training data / notebook for the cnn [here](https://github.com/PaulKlinger/cnn_card/blob/master/cnn).

The model consists of 3 convolutional layers (4, 8, 16 filters) and a dense layer at the output. The training data is manually generated (whatever I could come up with) + some augmentation (shifting & random pixel flips). The number of parameters is quite large compared to the number of training samples so this is probably mostly overfitting (although that might be the wrong word here, as I don't think there are many more possible samples I could have included).

## Code
The embedded code is in the [cnn_card_embedded_code.X](https://github.com/PaulKlinger/cnn_card/tree/master/cnn_card_embedded_code.X) folder (MplabX project).

The leds and buttons are driven/scanned using multiplexing, via two shift registers. The main challenge with the code was making this fast and consistent enough to allow PWM control of the brightness.

The model weights are exported to c code in [train.ipynb](https://github.com/PaulKlinger/cnn_card/blob/master/cnn/train.ipynb) and copied to [model_weights.c](https://github.com/PaulKlinger/cnn_card/blob/master/cnn_card_embedded_code.X/model_weights.c).

The aux_code directory contains some auxiliary notebooks: One to generate the startup animation (concentric pulse) and one to calculate the gamma correction table for the leds.

## Electronics
PCB design (gerbers and Eagle/Fusion sources) in the [pcb folder](https://github.com/PaulKlinger/cnn_card/tree/master/pcb).

Schematic [here](https://github.com/PaulKlinger/cnn_card/blob/master/pcb/schematic.pdf).

List of components (bill of materials) [here](https://github.com/PaulKlinger/cnn_card/blob/master/pcb/bom.csv).

I had the PCB made by elecrow.com, 1mm thickness, ENIG, matte black soldermask. I also ordered a stencil from them and used hot air & paste to solder everything (except for the battery/holder, that was done manually).

For testing I used the coin cell battery holder listed in the BOM, and then replaced it with a CR2032 with tabs soldered on (to reduce the thickness a bit).

The battery should last basically forever (decades) in standby (0.14 µA) and > 10 hours during use (it draws less than 10mA at maximum (max brightness on all leds) but probably closer to 2-3mA in normal use). After 2min of no input it automatically goes into standby mode.

I found that using white LEDs works best (in terms of max brightness), even though the forward voltage looks like it should be too high for the CR2032. At the low currents here (<0.1 mA averaged per led, <1mA momentarily due to the multiplexing) the forward voltage isn't a problem and white LEDs are just much more efficient. Also, the phosphor means that the light is more diffuse which looks nicer.


text:
Name
=====

lua-resty-kafka - Lua kafka client driver for the ngx_lua based on the cosocket API

Table of Contents
=================

* [Name](#name)
* [Status](#status)
* [Description](#description)
* [Synopsis](#synopsis)
* [Modules](#modules)
    * [resty.kafka.produce](#produce)
        * [Methods](#methods)
            * [new](#new)
            * [add](#add)
            * [worker](#worker)
* [Installation](#installation)
* [TODO](#todo)
* [Author](#author)
* [Copyright and License](#copyright-and-license)
* [See Also](#see-also)

Status
======

This library is still under early development and is still experimental.

Description
===========

This Lua library is a Kafka client driver for the ngx_lua nginx module:

http://wiki.nginx.org/HttpLuaModule

This Lua library takes advantage of ngx_lua's cosocket API, which ensures
100% nonblocking behavior.

Only LuaJIT supported (`--with-luajit`).

Synopsis
========

```lua
    server {
        location /test {
            content_by_lua_block {
                requirei "mymodule"("Hello World!")
            }

        }
    }
```

mymodule.lua
```lua
local kafka_produce = require "kafka.produce"

local kafka = kafka_produce.new{
	topic = "test",
	broker_list = {
		{ host = "<IP_ADDRESS>", port = 9292 }
	}
}

return function(data)
	kafka:add(data)
end
```

[Back to TOC](#table-of-contents)

Modules
=======

resty.kafka.produce
----------------------

To load this module, just do this

```lua
    local produce = require "resty.kafka.produce"
```

[Back to TOC](#table-of-contents)

### Methods

#### new

`syntax: p = produce.new(config)

[Back to TOC](#table-of-contents)

#### add
`syntax: ok, err = p:add(data)`

[Back to TOC](#table-of-contents)

#### worker
`syntax: require "resty.kafka.produce".worker(config)

if kafka_queue shm is defined, the worker(s) running this will be
responsible for sending data to the kafka server(s)

[Back to TOC](#table-of-contents)

Installation
============

You need to configure
the lua_package_path directive to add the path of your lua-resty-kafka source
tree to ngx_lua's LUA_PATH search path, as in

```nginx
    # nginx.conf
    http {
        lua_package_path "/path/to/lua-resty-kafka/lib/?.lua;;";
        ...
    }
```

[Back to TOC](#table-of-contents)

TODO
====

1.  Better documentation

[Back to TOC](#table-of-contents)

Author
======

Bjørnar Ness (bjne<EMAIL_ADDRESS>

[Back to TOC](#table-of-contents)

Copyright and License
=====================

This module is licensed under the BSD license.

Copyright (C) 2019-2019, by Bjørnar Ness (bjne<EMAIL_ADDRESS>
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this
  list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
  this list of conditions and the following disclaimer in the documentation
  and/or other materials provided with the distribution.

[Back to TOC](#table-of-contents)

See Also
========
* the ngx_lua module: http://wiki.nginx.org/HttpLuaModule
* the kafka protocol: https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol

[Back to TOC](#table-of-contents)

repository: bjne/lua-resty-kafka

repo_name: bjne/lua-resty-kafka


text:
## Changelog (Current version: 2.2.1)

-----------------

### 2.2.1 (2016 Oct 31)

* [6a6b148] v2.2.1
* [9c3479d] Merge pull request #15 from zittix/fix_dsym
* [3243e32] Fixed upload-symbols binary (was the one from crashlytics framework instead of Fabric.app app)
* [bdfd80d] Fix: Updated submit and upload-symbols to latest version

### 2.2.0 (2016 Sep 19)

* [35842a1] bitrise.yml fix
* [e3572c5] prepare for 2.2.0
* [56fde28] allow to upload only dsym (#13)

### 2.1.1 (2016 Jun 01)

* [a340c90] version bump
* [04efc61] Merge pull request #11 from bitrise-io/submit_fix
* [844dae4] submit fix

### 2.1.0 (2016 May 30)

* [0217bd2] version bump to 2.1.0
* [3f74590] Merge pull request #9 from bitrise-io/upload_dsym
* [8a13d15] remove _tmp from git
* [7be043d] gitignore _tmp
* [1c29300] upload dsym
* [82027f8] update framework
* [23014b2] Merge branch 'master' of github.com:bitrise-io/steps-fabric-crashlytics-beta-deploy

### 2.0.1 (2016 Feb 26)

* [67c4a3a] Merge pull request #6 from bitrise-io/develop
* [0fbcd9d] release configs & bitrise.yml updates
* [d76da69] Merge pull request #5 from RyogaK/master
* [c78e47b] Update step.yml
* [054b0c6] Merge pull request #3 from bazscsa/patch-1
* [ac22b37] Update step.yml
* [2cf25e4] bitrise stack related update - removed the now unnecessary Cert activator

### 2.0.0 (2015 Sep 08)

* [2f1fccc] Merge pull request #2 from gkiki90/update
* [3087139] update
* [facab62] readme: included crashlytics.framework version noted

### 1.1.1 (2015 May 08)

* [7145f98] Crashlytics.framework updated
* [01a1f92] send notifications? - now required

### 1.1.0 (2015 Feb 27)

* [b5535da] yml text fix
* [39a344b] don't print notified users list if notifications were disabled
* [3868b9b] simplified notifications handling
* [ba40118] Merge branch 'master' of github.com:bitrise-io/steps-fabric-crashlytics-beta-deploy
* [c77375a] formatted output: notified users/testers
* [62492b0] Merge pull request #1 from birmacher/master
* [adf8bfe] notification support
* [8be12d5] input descriptions
* [7b24e3f] _param fix

-----------------

Updated: 2016 Oct 31


text:
AutoCompleteDropDown
--------------------

Dropdown to allow for autocomplete.  This will retrieve options remotely (API endpoint).  The goal is to use this in combination with Redux. The prop `options` should be

### Prop Types

| Property | Type | Required? | Default | Description |
|:---|:---|:---:|:---|:---|
| onChange | Function | ✓ |  | Callback for changes when values are selected |
| searchAction | Function | ✓ |  | Callback for handle typing in search box |
| endpoint | String | ✓ |  | URL to search for more options |
| waitInterval | Number |  | 750 | How long before searching API for more options |
| loading | Boolean |  | false | Are more options loading? |
| options | Array of Object |  | [ ] | Options for drop down.  See Semantic UI [shorthand](https://react.semantic-ui.com/modules/dropdown#dropdown-example-search-in-menu) |

repository: gleasona/react-genomix

repo_name: gleasona/react-genomix


text:
# Glossary

This is a glossary of the core terms in Junctions, along with their type signatures. The types are documented using [Flow notation](http://flowtype.org/docs/quick-reference.html).

## Location

```js
type Location = {
  pathname: string,
  search: string,
  state: Object,
}
```

## Route

```js
class Route {
  key: string;
  data: Object;
  params: { [key: string]: any };
  next: Route | { [key: string]: Route };
}
```

## Junction

```js
type Junction = {
  [key: string]: Branch
}
```

## Branch

```js
type Branch = {
  default: boolean;
  path: string;
  data: Object;
  paramTypes: { [key: string]: ParamType };
  next: Junction | { [key: string]: Junction };
}
```

## ParamType

```js
type ParamType = {
  required: bool,
  default: any | () => any,
  serializer: Serializer,
}
```

## Serializer

```js
type Serializer = {
  serialize: (x: any) => string,
  deserialize: (x: string) => any,
}
```

## Converter

```js
type Converter = {
  route: (location: Location) => Route | { [key: string]: Route };
  locate: (...routes: Route[]) => Location;
}
```

## Located Route

```js
class LocatedRoute extends Route {
  locate(...routes: Route[]): Location;
}
```


text:
# Contributing

Contributions to this repository are welcomed and encouraged.

## Code Contribution

This project uses the [GitHub Flow](https://guides.github.com/introduction/flow)
model for code contributions. Follow these steps:

1. [Create a fork](https://help.github.com/articles/fork-a-repo) of the upstream
   repository at [`pybel/pybel`](https://github.com/pybel/pybel)
   on your GitHub account (or in one of your organizations)
2. [Clone your fork](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository)
   with `git clone https://github.com/<your namespace here>/pybel.git`
3. Make and commit changes to your fork with `git commit`
4. Push changes to your fork with `git push`
5. Repeat steps 3 and 4 as needed
6. Submit a pull request back to the upstream repository

### Merge Model

This repository uses [squash merges](https://docs.github.com/en/github/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#squash-and-merge-your-pull-request-commits)
to group all related commits in a given pull request into a single commit upon
acceptance and merge into the main branch. This has several benefits:

1. Keeps the commit history on the main branch focused on high-level narrative
2.  Commits correspond 1-to-1 with pull requests

### Code Style

This project encourages the use of optional static typing. It
uses [`mypy`](http://mypy-lang.org/) as a type checker
and [`sphinx_autodoc_typehints`](https://github.com/agronholm/sphinx-autodoc-typehints)
to automatically generate documentation based on type hints. You can check if
your code passes `mypy` with `tox -e mypy`.

This project uses [`black`](https://github.com/psf/black) to automatically
enforce a consistent code style. You can apply `black` and other pre-configured
linters with `tox -e lint`.

This project uses [`flake8`](https://flake8.pycqa.org) and several plugins for
additional checks of documentation style, security issues, good variable
nomenclature, and more (
see [`tox.ini`](tox.ini) for a list of flake8 plugins). You can check if your
code passes `flake8` with `tox -e flake8`.

Each of these checks are run on each commit using GitHub Actions as a continuous
integration service. Passing all of them is required for accepting a
contribution. If you're unsure how to address the feedback from one of these
tools, please say so either in the description of your pull request or in a
comment, and we will help you.

### Logging

Python's builtin `print()` should not be used (except when writing to files),
it's checked by the
[`flake8-print`](https://github.com/jbkahn/flake8-print) plugin to `flake8`. If
you're in a command line setting or `main()` function for a module, you can use
`click.echo()`. Otherwise, you can use the builtin `logging` module by adding
`logger = logging.getLogger(__name__)` below the imports at the top of your
file.

### Documentation

All public functions (i.e., not starting with an underscore `_`) must be
documented using the [sphinx documentation format](https://sphinx-rtd-tutorial.readthedocs.io/en/latest/docstrings.html#the-sphinx-docstring-format).
The [`darglint`](https://github.com/terrencepreilly/darglint) plugin to `flake8`
reports on functions that are not fully documented.

This project uses [`sphinx`](https://www.sphinx-doc.org) to automatically build
documentation into a narrative structure. You can check that the documentation
builds properly in an isolated environment with `tox -e docs-test` and actually
build it locally with `tox -e docs`.

### Testing

Functions in this repository should be unit tested. These can either be written
using the `unittest` framework in the `tests/` directory or as embedded
doctests. You can check that the unit tests pass with `tox -e py` and that the
doctests pass with `tox -e doctests`. These tests are required to pass for
accepting a contribution.

### Syncing your fork

If other code is updated before your contribution gets merged, you might need to
resolve conflicts against the main branch. After cloning, you should add the
upstream repository with

```shell
$ git remote add pybel https://github.com/pybel/pybel.git
```

Then, you can merge upstream code into your branch. You can also use the GitHub
UI to do this by following [this tutorial](https://docs.github.com/en/github/collaborating-with-pull-requests/working-with-forks/syncing-a-fork).

### Python Version Compatibility

This project aims to support all versions of Python that have not passed their
end-of-life dates. After end-of-life, the version will be removed from the Trove
qualifiers in the [`setup.cfg`](setup.cfg) and from the GitHub Actions testing
configuration.

See https://endoflife.date/python for a timeline of Python release and
end-of-life dates.

repository: pybel/pybel

gha_language: Python

gha_license_id: MIT

repo_name: pybel/pybel


text:
# 3BodySim

Simulate the motion of three body model - the sun, the Jupiter and the waste in UPC 2016 Problem A. Motivated by [3Body2Py](https://github.com/davidsousarj/3Body2Py.git). Thanks him very much.

## Background

For University Physics Competition, see also [the official website](http://www.uphysicsc.com/2016contest.html). The problem is

> Problem A Reactor Waste Disposal

> The disposal of radioactive waste is a serious problem for the nuclear power industry.  One solution that has been proposed is to launch the waste into space, with the idea of either destroying the waste by allowing it to fall into the sun, or simply having it take up an orbit in the asteroid belt where the radioactive waste products would eventually decay.  Make a comparison of these two methods of waste disposal.  Which method would be easier to implement?  How long could the waste be safely stored in the asteroid belt?

The repo aims to provide a simulation when the waste manages to enter the orbit of the asteroid belt.

## Dependencies

Just `matplotlib` and `numpy`. A convenient way to install them is by `pip`.

```
git clone https://github.com/JasonQSY/3BodySim.git && cd 3BodySim
pip install numpy matplotlib
python 3BodySim.py
```

## Result

The is the result appeared in my final UPC thesis.

![result](result.png)

## Improvements

It seems that there won't be improvements further since the competition has finished...

## License

MIT License.


text:
# Getting Started
 - git clone
 - npm install
 - npm start

## Jam11ty Headless Architecture
- Version 0.1
- Jam11ty is an 11ty started theme.
- Back-End: NodeJS, Netlify, NetlifyCMS, Headless etc.
- Front-End: 11tyJS.

## Plugins
 - rssPlugin
 - syntaxHighlight

## Use Case
- Personal Websites
    - Portfolios
    - Blogs
- Headless E-commerce

## Features
- JAM STACK
- API Architecture
- Netlify CMS Admin
- PWA
- Mobile First
- WCAG 2.1 Compliance

## Roadmap
- Headless E-commerce
- WebComponents
- Dark/Light Mode

### References
 - https://www.11ty.dev/
 - https://www.netlify.com/
 - https://mozilla.github.io/nunjucks/getting-started.html

### Author
 - https://www.andrewrico.com/
 -<EMAIL_ADDRESS>

branch_name: refs/heads/main

gha_language: Nunjucks


text:
## Theme

This component can be used for runtime theming and avoiding SASS if you don't need the flexibility.
If you want to create a static customized style than you should consider using SASS - working with
variables in SASS is easier and faster.

All content that will be rendered in a theme component will be styled with the given custom style.
This way it is possible to have several different themed components grouped together.

### Markup

```html
<m-theme :customStyle="customStyle">
  themed content
</m-theme>
```
### Script

```javascript
const customStyle = {
  --mdc-theme-primary: '#4286f4'
}
```

### Props

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| customStyles | Object | {} | customize theme variables |

### Slots

| Slot | Description |
|------|-------------|
| default | themed content |

For a complete list of all CSS custom properties have a look at the [reference](https://github.com/material-components/material-components-web/tree/master/packages/mdc-theme#css-custom-properties).

### Reference

- https://github.com/material-components/material-components-web/tree/master/packages/mdc-theme

repository: tychenjiajun/material-components-vue

branch_name: refs/heads/ma

gha_language: Vue

repo_name: tychenjiajun/material-components-vue


text:
# Cross Platform Machine Setup

[macOS][macos], [Windows][windows], [WSL][wsl], all have their own GitHub issue template.

[macos]: https://github.com/scottmuc/infrastructure/blob/main/.github/ISSUE_TEMPLATE/macos-repaving-template.md
[windows]: https://github.com/scottmuc/infrastructure/blob/main/.github/ISSUE_TEMPLATE/windows-repaving-template.md
[wsl]: https://github.com/scottmuc/infrastructure/blob/main/.github/ISSUE_TEMPLATE/wsl-repaving-template.md

## Common

* installs the following fonts
  * JetBrainsMono Nerd Font
  * Inconsolas Nerd Font
  * RobotoMono Nerd Font

Switching fonts involves updating the following files:

```
homedirs/common/dotfiles/dot.config/alacritty/alacritty.yml
homedirs/windows/alacritty.yml
homedirs/windows/vscode/settings.json
```

## macOS

* symlinks a few things to `$HOME`
  * **zsh** configuration
  * **git** configuration
  * extending `PATH` with more fun
  * **neovim** configuration
  * **alacritty** and **tmux** configuration
* makes some osx preference changes:
  * dock
  * clock format
* runs **homebrew** things.
* installs **neovim** plugins
* runs OSX softwareupdates

## Windows

* symlinks a few things to `$HOME`
  * **git** configuration
  * **autohotkey** linked to startup
* runs **boxstarter** things.
  * task bar preferfences
  * removes application cruft
  * configures Windows Explorer
  * uses chocolatey to install applications
  * disables Windows sounds

## WSL

* symlinks a few things to `$HOME`
  * **zsh** configuration
  * **git** configuration
  * extending `PATH` with more fun
  * **neovim** configuration
  * **alacritty** and **tmux** configuration
* runs **homebrew** things.
* installs **neovim** plugins

## Inspiration

* https://github.com/rockyluke/osx-cli

license: Unlicense

repository: scottmuc/infrastructure

repo_name: scottmuc/infrastructure


text:
---
date: 2020-10-15
title: Evaluate Expression During Debugging
technologies: [go]
topics: [debugging, completion]
author: dlsniper
subtitle: Select your code and execute it, in the right context.
seealso:
  - title: Evaluating Expressions
    href: 'https://www.jetbrains.com/help/go/evaluating-expressions.html'
thumbnail: ./thumbnail.png
cardThumbnail: ./card.png
shortVideo:
  poster: ./thumbnail.png
  url: https://www.youtube.com/watch?v=xVovi-VOkt0&list=PLM-t1Z4tbFfnXnghmtk6WVz10_pivOw25&index=26&t=0s
leadin: |
    *Get the right answer in the right context, no typing.*

    Stopped at a breakpoint and want to see a result, either typed in
    or from a line fragment?

    **How to use:**

    Invoke **Evaluate Expression** via _Alt + F8 on Windows/Linux_ or
    _⌥ + F8 on macOS_.

    New in 2017.3
---


text:
OkRedis

    OkRedis is a zero-allocation client for Redis 6+

## Handy and Efficient
OkRedis aims to offer an interface with great ergonomics without
compromising on performance or flexibility.

## Project status
OkRedis is currently in alpha. The main features are mostly complete, but
a lot of polishing is still required.

Everything mentioned in the docs is already implemented and you can just
`zig run example.zig` to quickly see what it can do. Remember OkRedis only
supports Redis 6 and above.

## Zero dynamic allocations, unless explicitly wanted
The client has two main interfaces to send commands: `send` and `sendAlloc`.
Following Zig's mantra of making dynamic allocations explicit, only `sendAlloc`
can allocate dynamic memory, and only does so by using a user-provided allocator.

The way this is achieved is by making good use of RESP3's typed responses and
Zig's metaprogramming facilities.
The library uses compile-time reflection to specialize down to the parser level,
allowing OkRedis to decode whenever possible a reply directly into a function
frame, **without any intermediate dynamic allocation**. If you want more
information about Zig's comptime:
- [Official documentation](https://ziglang.org/documentation/master/#comptime)
- [What is Zig's Comptime?](https://kristoff.it/blog/what-is-zig-comptime) (blog post written by me)

By using `sendAlloc` you can decode replies with arbrirary shape at the cost of
occasionally performing dynamic allocations. The interface takes an allocator
as input, so the user can setup custom allocation schemes such as
[arenas](https://en.wikipedia.org/wiki/Region-based_memory_management).

## Quickstart

```zig
const std = @import("std");
const okredis = @import("./src/okredis.zig");
const SET = okredis.commands.strings.SET;
const OrErr = okredis.types.OrErr;
const Client = okredis.Client;

pub fn main() !void {
    const addr = try std.net.Address.parseIp4("<IP_ADDRESS>", 6379);
    var connection = try std.net.tcpConnectToAddress(addr);

    var client: Client = undefined;
    try client.init(connection);
    defer client.close();

    // Basic interface
    try client.send(void, .{ "SET", "key", "42" });
    const reply = try client.send(i64, .{ "GET", "key" });
    if (reply != 42) @panic("out of towels");

    // Command builder interface
    const cmd = SET.init("key", "43", .NoExpire, .IfAlreadyExisting);
    const otherReply = try client.send(OrErr(void), cmd);
    switch (otherReply) {
        .Nil => @panic("command should not have returned nil"),
        .Err => @panic("command should not have returned an error"),
        .Ok => std.debug.print("success!", .{}),
    }
}
```

## Available Documentation
The reference documentation [is available here](https://kristoff.it/zig-okredis#root).

   * [Using the OkRedis client](CLIENT.md#using-the-okredis-client)
      * [Connecting](CLIENT.md#connecting)
      * [Buffering](CLIENT.md#buffering)
      * [Evented vs blocking I/O](CLIENT.md#evented-vs-blocking-io)
      * [Pipelining](CLIENT.md#pipelining)
      * [Transactions](CLIENT.md#transactions)
      * [Pub/Sub](CLIENT.md#pubsub)

   * [Sending commands](COMMANDS.md#sending-commands)
      * [Base interface](COMMANDS.md#base-interface)
      * [Command builder interface](COMMANDS.md#command-builder-interface)
      * [Validating command syntax](COMMANDS.md#validating-command-syntax)
      * [Optimized command builders](COMMANDS.md#optimized-command-builders)
      * [Creating new command builders](COMMANDS.md#creating-new-command-builders)
      * [An afterword on command builders vs methods](COMMANDS.md#an-afterword-on-command-builders-vs-methods)

   * [Decoding Redis Replies](REPLIES.md#decoding-redis-replies)
      * [Introduction](REPLIES.md#introduction)
      * [The first and second rule of decoding replies](REPLIES.md#the-first-and-second-rule-of-decoding-replies)
      * [Decoding Zig types](REPLIES.md#decoding-zig-types)
         * [Void](REPLIES.md#void)
         * [Numbers](REPLIES.md#numbers)
         * [Optionals](REPLIES.md#optionals)
         * [Strings](REPLIES.md#strings)
         * [Structs](REPLIES.md#structs)
      * [Decoding Redis errors and nil replies as values](REPLIES.md#decoding-redis-errors-and-nil-replies-as-values)
         * [Redis OK replies](REPLIES.md#redis-ok-replies)
      * [Allocating memory dynamically](REPLIES.md#allocating-memory-dynamically)
         * [Allocating strings](REPLIES.md#allocating-strings)
         * [Freeing complex replies](REPLIES.md#freeing-complex-replies)
         * [Allocating Redis Error messages](REPLIES.md#allocating-redis-error-messages)
         * [Allocating structured types](REPLIES.md#allocating-structured-types)
      * [Parsing dynamic replies](REPLIES.md#parsing-dynamic-replies)
      * [Bundled types](REPLIES.md#bundled-types)
      * [Decoding types in the standard library](REPLIES.md#decoding-types-in-the-standard-library)
      * [Implementing decodable types](REPLIES.md#implementing-decodable-types)
         * [Adding types for custom commands (Lua scripts or Redis modules)](REPLIES.md#adding-types-for-custom-commands-lua-scripts-or-redis-modules)
         * [Adding types used by a higher-level language](REPLIES.md#adding-types-used-by-a-higher-level-language)

## Extending OkRedis
If you are a Lua script or Redis module author, you might be interested in
reading the final sections of `COMMANDS.md` and `REPLIES.md`.

## Embedding OkRedis in a higher level language
Take a look at the final section of `REPLIES.md`.

## TODOS
- Implement remaining command builders
- Better connection management (ipv6, unixsockets, ...)
- Streamline design of Zig errors
- Refine support for async/await and think about connection pooling
- Refine the Redis traits
- Pub/Sub

repository: kristoff-it/zig-okredis

gha_language: Zig

repo_name: kristoff-it/zig-okredis


text:
### Introduction
In K8s, when a namespace is deleted, pods and other resources that belong to this namespace will be deleted soon.

However, the namespace deleting operation may be a mistake.

This project is used to prevent important resources from being deleted.

### How it works
1. hook the namespace deleting operation by k8s webhook

1. get resources in this namespace

1. if something important exists,the delete operation will be rejected

### How to use
1. enable webhook by adding `ValidatingAdmissionWebhook` to kube-apiserver flag `--admission-control`
1. get all resources, `kubectl api-resources -namespaced=true`
1. modify the config.json to ignore the unimportant resources.
1. deploy this project. using k8s Deployment and Service is recommended. ServiceAccount is also needed.
1. the certs and caBundle can be generated by vault.
1. get more in Makefile.
1. have a try.

repository: ctripcloud/namespace-delete-checker

repo_name: ctripcloud/namespace-delete-checker


text:
# Distancer App (Developed for Shoparize)

This project is to fullfil the PHP coding challenge provided by Shoparize and its goal was to make a web service that accepts two distances (numbers) and returns the total distance
(sum of both). It depends on Lumen Framework.

# Overview

I started this task with a POC using Laravel Lumen PHP framework to check API workflow. I draw a worflow sequence diagram which descibe what I am going to develop. You can check the following image for reference.
![Sequence Diagram](./docs/Calculate-Distance-API-SequenceDiagram-org.png)

# Lumen PHP Framework

[![Build Status](https://travis-ci.org/laravel/lumen-framework.svg)](https://travis-ci.org/laravel/lumen-framework)
[![Total Downloads](https://img.shields.io/packagist/dt/laravel/framework)](https://packagist.org/packages/laravel/lumen-framework)
[![Latest Stable Version](https://img.shields.io/packagist/v/laravel/framework)](https://packagist.org/packages/laravel/lumen-framework)
[![License](https://img.shields.io/packagist/l/laravel/framework)](https://packagist.org/packages/laravel/lumen-framework)

Laravel Lumen is a stunningly fast PHP micro-framework for building web applications with expressive, elegant syntax. We believe development must be an enjoyable, creative experience to be truly fulfilling. Lumen attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as routing, database abstraction, queueing, and caching.
#### Official Documentation

Documentation for the framework can be found on the [Lumen website](https://lumen.laravel.com/docs).
#### License

The Lumen framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

# Installation & Configuration

1. Clone the repo `git clone git@github.com:Yousab/shoparize-distancer-task.git` or Download the zip file and extract it
2. Run `composer install` command on the root directory to have "vendor" directory.
3. Create .env file from `.env.example` which you can find it on the root directory.
4. Open CMD and check if you can run `php artisan` at the root, It will list artisan commands if run successfully. If It doesn't run successfully, you can run the following command `composer update --no-dev`
5. Run the server by `php -S localhost:8000 -t public` and Check the website application on http://localhost:8000 or you can go and create virtual host to serve it directly with web server and hostname alias.

#### Prerequisites
- PHP >= 7.3
- Composer

#### Production Deployment
- Autoloader Optimization `composer install --optimize-autoloader --no-dev`
- Debug Mode, set `APP_DEBUG` in your .env file with `false`

#### Unit Testing

You can check the unit tests created for calculate_distance API endpoint by running `vendor/phpunit/phpunit/phpunit`. You should see `OK (6 tests, 16 assertions)`

#### Modified Files
- app/Helpers/CalcHelper.php
- app/Http/Controllers/DistancerController.php
- app/Http/Middleware/RequestValidatorMiddleware.php
- app/Rules/DistanceUnitRule.php
- bootstrap/app.php
- routes/api.php
- tests/DistancerTest.php

#### Postman Collection

Here is the [postman collection](https://www.getpostman.com/collections/a763f09464eb5c1e10c5) where you can import it to your postman client and find the API endpoint (Calculate Distance) with its predefined params. If you are not going to import the postman collection, you can use the curl request (if exists) and check its response.

repository: Yousab/shoparize-distancer-task

gha_language: PHP

repo_name: Yousab/shoparize-distancer-task


text:
# Custom-URL-Shortener
This is a python web app that takes long URL and squeezes it into short/long custom characters to make a link customized which is simpler to share, tweet, or email to friends.

The app is using python flask and sqlite3 database.

## Installation

In your virtual environment

    pip install -r requirements.txt

## Run

    python app.py

Feel Free to contribute :P

### License : MIT


text:
# IoT Call Me!

If you are working with IOT devices you may have the
need of triggering an immediate action remotely but a device is
behind a firewall or router and it is unreachable.
An example of such action is asking the device to contact
your server to receive further instructions (wake up, call me!)
We solved this problem for you.

The service is at http://iotcallme.com

repository: mdipierro/iotcallme

repo_name: mdipierro/iotcallme


text:
---
published: true
images:
  - url: /blog/img/muVT_DensityConvergence.png
---
<style TYPE="text/css">
code.has-jax {font: inherit; font-size: 100%; background: inherit; border: inherit;}
</style>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
    tex2jax: {
        inlineMath: [['$','$'], ['\\(','\\)']],
        skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'] // removed 'code' entry
    }
});
MathJax.Hub.Queue(function() {
    var all = MathJax.Hub.getAllJax(), i;
    for(i = 0; i < all.length; i += 1) {
        all[i].SourceElement().parentNode.className += ' has-jax';
    }
});
</script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-AMS_HTML-full"></script>

<img alt="Interpolation" src="/blog/img/muVT_DensityConvergence.png">

Semi-interactive code for fluid simulations in the μVT ensemble according to Mezei's Cavity-Biased algorithm, which improves insertions in high-density systems.

The environment consists of a fixed-size simulation box centered in the origin, filled with spherical molecules based on the density of the system. Their interaction is according to either a Lennard-Jones or Square-Well potential (implementation of additional potentials is straightforward) in the reduced unit's system.

New states are generated either by insertion, removal or displacement of molecules, according to the probabilities in the upcoming scheme:

![Algorithm](img/Algorithm.png)

Code has been designed with succesful parameters as compared with official reported results. This includes a 20σ ✕ 20σ ✕ 20σ simulation box with 2 ✕ ⌈ 0.5 ✕ V ⌉ ✕ 10E4 relaxation steps and 2.5 ✕ ⌈ 0.5 ✕ V ⌉ ✕ 10E5 equilibrium steps, for a total of 25,000 samples.

A simple and semi-interactive execution has been designed for those not familiar with the Julia language, where the chemical potential and temperature are taken as parameters, i. e., a system with μ* = -4.151 and T* = 1.5:

    julia GrandCanonical.jl -4.151 1.5

This generates output files with the energy, density and radial distribution function evolution of the system along the simulation, as well as their corresponding plots.

![Density Convergence](img/muVT_DensityConvergence.png)

Code found at [my personal github repository.](https://github.com/omaraalvarez/GrandCanonical)

repository: omaraalvarez/blog

repo_name: omaraalvarez/blog


text:
# korerorero-speech-recognition

Providing speech recognition services. Based on <https://github.com/mozilla/DeepSpeech-examples/tree/r0.7/web_microphone_websocket>

Because the training data is so big, it is built in a stage labelled as `training-data` in the Dockerfie, meaning that the `Dockerfile` can be edited with impunity without causing a long slow download. More info on multi-stage builds: <https://docs.docker.com/develop/develop-images/multistage-build/>

## To build

```bash
docker build . -t korerorero-speech-recognition
```

## To run

```bash
docker run --init -p 4000:4000 korerorero-speech-recognition:latest
```

You should see something like this:

```shell
TensorFlow: v1.15.0-24-gceb46aa
DeepSpeech: v0.7.1-alpha.1-0-gf848bf4
2020-05-05 02:37:31.462807: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
Socket server listening on: 4000
```

Press `ctrl+c` to terminate the container.


text:
---
layout: hubpage
header:
  image_fullwidth: header_techsupport.jpg
  caption: unsplash.com
  caption_url: https://unsplash.com/
title: Tech Support Home
widget1:
  title: "Foundations"
  url: '/tech-support/foundations/'
  image: widget-1-302x182.jpg
  text: "Before you take my opinion, you should know what I believe about digital technology. Or, these ideas might help you think more deeply and critically about tech in general."
widget2:
  title: "Social Media"
  image: widget-1-302x182.jpg
  url: '/tech-support/social-media/'
  text: 'If you dread the conversation that begins with, "Hey mom, can I make a Twitter account?" I want to help. Instead of you making an account and using each new technology for weeks, let me tell you the pros, cons, and risks.'
widget3:
  title: "Entertainment"
  url: '/tech-support/entertainment/'
  image: widget-github-303x182.jpg
  text: 'You already know the internet is changing the world. How do we and our families harness this for good and not for ill? I can offer a survey of the benefits and dangers for YouTube, Reddit, and more.'
callforaction:
  url: https://docs.google.com/forms/d/e/1FAIpQLSdhNlDfs5vmFZtDhH4eGvkOUnWXz-I4OpOPBj4gARDArGNTKA/viewform?usp=sf_link
  text: Let me know what technology to review next.
  style: alert
permalink: /tech-support/
---

<br/>
{% include alert alert='**You can search all past articles using the "Search"
option in the top right.**' %}


text:
Introduction
============

About
------

APL is a [declarative language](http://en.wikipedia.org/wiki/Declarative_programming).

Who this is for
---------------
This book is aimed at people with a moderate math background and know at least one imperitive programming language. Neither of these is a strict requirement, but without them, this book will be significantly harder to work through.

Why learn APL
-------------
  - To learn a new thought process for approaching problems; APL takes a very different approach to problem solving that may help echance your ability to program in other languages
  - Simply because it is a very eccentric language; the shear joy of being able to tell people that you know APL is a fairly good reason.
  - To learn more about mathamtics in a pragmatic fashion.

How to learn APL
----------------

The pacing you decide to take on this book is entirely up to you.

repository: thefourthone/intro-to-apl

repo_name: thefourthone/intro-to-apl


text:
# RetroPlug
A VST wrapper around the SameBoy GameBoy emulator, with Arduinoboy support

## Features
- Wraps [SameBoy](https://github.com/LIJI32/SameBoy) v0.12.1
- Full MIDI support for [mGB](https://github.com/trash80/mGB)
- Syncs [LSDj](https://www.littlesounddj.com) to your DAW
- Emulates various [Arduinoboy](https://github.com/trash80/Arduinoboy) modes
- Realtime LSDj sample patching!

## Current Limitations (subject to change)
- VST2 only
- Windows only
- 64bit only

## Download
Visit the [releases](https://github.com/tommitytom/RetroPlug/releases) page to download the latest version.

## Usage
- Load it as you would any normal VST
- Double click to open file browser, or drag a rom on to the UI to load
- A .sav with the same name as your rom will be loaded if it is present
- Right click to bring up a menu with various options
- The emulator state is saved in to the project file in your DAW when you hit save, which will persist your changes.  **YOUR .sav IS NOT AUTO SAVED**.  If you want to save out the .sav then do so from the SRAM context menu.
- To edit button mapping, go to `Settings -> Open Settings Folder...` and edit `buttons.json` (full list of button names below)
- For mGB, the usual Arduinoboy rules apply: https://github.com/trash80/mGB - no additional config needed, just throw notes at it!
- For LSDj, an additional menu will appear in the settings menu, allowing you to set sync modes (Arduinoboy emulation)

## Button Mapping
Keyboard button mapping is currently only configurable with JSON configuration files.  On first run a config file is written to `C:\Users\USERNAME\AppData\Roaming\RetroPlug` containing the following default button map:

|Button|Default key|
|------|-----------|
|A|Z|
|B|X|
|Up|UpArrow|
|Down|DownArrow|
|Left|LeftArrow|
|Right|RightArrow|
|Select|Ctrl|
|Start|Enter|

### Supported Keys for buttons.json:
Keys `0 - 9` and `A - Z` can be used for alpha numeric keys, as well as the following keys:

```
Backspace, Tab, Clear, Enter, Shift, Ctrl, Alt, Pause, Caps, Esc, Space, PageUp, PageDown, End, Home, LeftArrow, UpArrow, RightArrow, DownArrow, Select, Print, Execute, PrintScreen, Insert, Delete, Help, LeftWin, RightWin, Sleep, NumPad0, NumPad1, NumPad2, NumPad3, NumPad4, NumPad5, NumPad6, NumPad7, NumPad8, NumPad9, Multiply, Add, Separator, Subtract, Decimal, Divide, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23, F24, NumLock, Scroll
```
All key names are CASE SENSITIVE!

## Multiple Instances
You can load multiple instances of the emulator in a single window, and link them with virtual link cables.  The goal of this feature is to offer a streamlined way of working with multiple instances of LSDj.  You can create an additional emulator instance using the `Project -> Add Instance` submenu.  Choose one of the following options:
- **Load ROM...** - Loads a ROM from disk in to the new instance.
- **Same ROM** - Loads the ROM of the currently active instance in to the new instance.  The created instance will load the .sav file accompanying the ROM.
- **Duplicate** - Creates an exact copy of the currently active instance by coying its state.

Additional information:
- You can create up to 4 instances.
- Instances are linked when the `Game Link` option is enabled.  This has to be done on every instance that is to be linked.
- You can move between instances with the `Tab` key.

### Audio Routing
By default, the output of all instances will be summed together in to a single stereo output.  The `Project -> Audio Routing` menu contains additional options for audio routing:

- **Stereo Mixdown** - The default option.  Mixes the audio of all instances in to two stereo channels.
- **Two Channels Per Instance** - Each instance will output on its own 2 channels.  Instance 1 will output on channels 1-2, instance 2 will output on channels 3-4, etc.  This may require additional configuration in your DAW.  _This feature is not available in the standalone version._

### MIDI Routing
By default, each instance receives all MIDI messages received on all channels.  The `Project -> MIDI Routing` menu contains additional options for MIDI routing:

- **All Channels to All Instances** - The default option.  Sends all messages received to all instances.
    - A usage example for this mode could be using LSDj in the Arduinoboy MIDI sync mode, where you want multiple instances to sync to a single `C-2` note on.
- **Four Channels Per Instance** - Evenly maps MIDI channels across up to four instances.
    - The first instance will receive channels 1-4, the second will receive channels 5-8, etc.
    - This is handy for mGB, since it allows you to evenly split all 16 MIDI channels across 4 mGB instances.
    - Also useful for LSDj in MIDI Map mode, since the mode makes use of 2 channels per instance.
- **One Channel Per Instance** - Similar to the mode above but for more simplistic uses.
    - The first instance will receive MIDI from channel 1, the second will receive MIDI from channel 2, etc.
    - A more obvious choice if you want control over individual instances when using the Arduinoboy MIDI sync mode (LSDj).

### Multi LSDj Setup
For LSDj versions lower than v6.1.0, one instance of LSDj needs to be set to `MASTER` and the others need to be set to `SLAVE`.  Versions v6.1.0 and above no longer have these modes, but have a singular `LSDJ` mode, where the instance that initiates playing automatically becomes the master.  It appears there may be additional overhead to this new mode that may make things go slightly out of sync - so it is recommended that if you want perfect sync between more than one instance of LSDj that you use one of the MIDI sync modes.  This will sync both instances to your DAW, rather than to each other.

## LSDj Integration
When LSDj is detected, additional options are added to the context menus.
### Sync Modes
- **Off**: No sync with your DAW at all.  If you hit play in LSDj it will play regardless of what else is happening.

- **MIDI Sync**:
  * Receives MIDI clock from your DAW when the transport is running.
  * If you hit play in LSDj, it will not play until you hit play in your DAW. LSDj should be set to "MIDI" mode on the project page.
  * In this mode LSDj knows nothing about the song position in your DAW, all it knows is that it is receiving a MIDI clock, and that it should play.

- **MIDI Sync (Arduinoboy Variation)**:
  * Receives MIDI clock from your DAW, but only plays once a C-2 note is received.
  * Additional Arduinoboy options are emulated, full list can be found [here](https://github.com/trash80/Arduinoboy/#mode-1---lsdj-as-midi-slave-sync).

- **MIDI Map**:
  * Receives MIDI clock from your DAW, and plays the row number relative to MIDI notes that you send it.  C-0 is row 0, C#-0 is row 1, etc.
  * Notes sent on channel 2 map to rows 128 and above.  Ohter channels are ignored.
  * Rows are stopped when note offs are received, or when you hit stop in your DAW.
  * Requires the Arduinboy build of LSDj.

- **Auto Play**:
  * When this option is enabled, RetroPlug will simulate a press of the start button whenever the transport in your DAW is started or stopped.
  * Works in combination with the other sync modes.
  * This option is pretty dumb (it doesnt know if LSDj is playing or not), so it's possible to make it think it is in the wrong state if you manually press `Start`.  If this happens just press `Start` again.

### .sav Manipulation
Thanks to the liblsdj library you are able to list, export, import, load, and delete tracks contained in your LSDj save.  The `LSDj Songs` context menu contains these features.  Additionally, dragging a `.lsdsng` file on to the window will add the song to your `.sav` file and load it immediately (if the `.sav` has space to contain the song).

### Kit Patching
Kits can be patched, deleted, and exported using the `LSDj Kits` menu.
* Kits can be imported from `.kit` files, or imported from a previously patched LSDj ROM.
* To import kits to the next available slot, use the `LSDj Kits -> Import...` menu item.  If a kit is already in the ROM it will not be imported.  This allows you to import all kits from a ROM that the current ROM does not have without creating duplicates.
* To patch a specific kit slot, or to replace an existing kit, choose the kit/slot you want to replace in the context menu, and choose `Load...` or `Replace...` respectively.
* Importing kits to a fresh slot requires a reset (this will be done automatically, no song data will be lost).  Replacing existing kits does not require a reset, and can be done in realtime **while the kit you are patching is currently playing**!
* Kits are saved in to your DAWs project file when you hit save, or alternatively in to a `.retroplug` file when you save the project to disk.

The ROM that you loaded from disk isn't actually modified.  To save the patched ROM out to disk for use on harware or other emulators, using the `System -> Save ROM...` menu option.

### Updating LSDj
Updating to a new verison of LSDj can be quite cumbersome when your ROM is patched with custom samples, though RetroPlug tries to help make this easy by offering a way of swapping out a ROM and keeping custom samples patched.  To do this, use the `System -> Replace ROM...` menu item and select the new LSDj ROM.

### Additional Options
- **Keyboard Shortcuts**: Enables a set of common shortcuts that allows you to use LSDj with a keyboard in a more intuitive manner.  This works by sending combinations of button presses to LSDj, so support for these may not always be perfect!  Many of the hotkeys for these settings can be modified in the button config file (see [Button mapping](#button-mapping)), although a few can't:

| Action | Default key(s) | Configurable|
|--------|----------------|-------------|
|ScreenUp|W|Yes|
|ScreenLeft|A|Yes|
|ScreenDown|S|Yes|
|ScreenRight|D|Yes|
|DownTenRows|PageDown|Yes|
|UpTenRows|PageUp|Yes|
|CancelSelection|Esc|Yes|
|Delete|Delete|Yes|
|StartSelection|Shift (Hold)|No|
|CopySelection|Ctrl + C|No|
|CutSelection|Ctrl + X|No|
|PasteSelection|Ctrl + V|No|

## Roadmap
- v1.0.0
    - 32bit builds
    - Mac builds
    - Outputs from individual audio channels
    - Lua scripting
- v2.0.0
    - Additional emulators.  Support for C64, GBA and Megadrive/Genesis is being explored.

## Dependencies
- [SameBoy](https://github.com/LIJI32/SameBoy) - The emulator itself
- [iPlug2](https://github.com/iPlug2/iPlug2) - Audio plugin framework
- [libsdj](https://github.com/stijnfrishert/liblsdj) - Adds the functionality to manipulate LSDj save files
- [rapidjson](https://github.com/Tencent/rapidjson) - JSON library used for dealing with configs and save states

## Building
### Windows
RetroPlug is developed in Visual Studio 2019, however SameBoy has to be built using msys2 (mingw) on Windows.  Since we can't statically link libraries produced by mingw in VS, the DLL output from the build process is compiled as a resource in to the final VST DLL, which is then loaded from memory at runtime.  This allows us to ship the VST as a single DLL.
- Install [msys2](https://www.msys2.org/) to the default location
- Make sure [rgbds](https://github.com/rednex/rgbds) is accessible from your command line (via the PATH variable or some other method)
- Run `thirdparty/SameBoy/retroplug/build.bat`
- Open `RetroPlug.sln` in Visual Studio 2019 and build.

### Mac
Coming soon!

## Troubleshooting
Please refrain from asking usage questions in GitHub issues, and use them purely for bugs and feature requests.  If you need help, the official support chat for this plugin is on the PSG Cabal discord channel: https://discord.gg/9MdBJST

### FAQ

**Q**: HALP! The keyboard does not work ;(

**A**: All hosts are different, and some have restrictions on routing keyboard input in to VST instruments.  First, click the center of the window to try and force the host to give focus to the correct control.  If that doesn't work, make sure your host is allowing the plugin to receive keyboard input (Renoise has an "Enable keyboard" option, etc).  If it still doesn't work, try editing default keyboard mapping in `buttons.json` (written to `C:\Users\USERNAME\AppData\Roaming\RetroPlug` on first run).  There are some quirks with certain DAWs...
- **Reaper** does not send the ctrl key to VST's, so you'll need to remap that to something different.

If you find you have issues with a particular DAW, please feel free to submit a bug report.

**Q**: OMG!  LSDj does not start when I hit play in my DAW :o

**A**: Make sure you have the correct sync mode selected in both LSDj, and in the context menu!

## Donations
If you'd like to support development of RetroPlug, donations of any amount are appreciated!
[![Donate](https://www.paypalobjects.com/en_AU/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=TJTBWD3P7S7PG&currency_code=AUD&source=url)

## License
MIT

repository: sdhizumi/RetroPlug

gha_language: C

repo_name: sdhizumi/RetroPlug


text:
# burger

This is a burger logger.  Created with MySQL, Node, Express, Handlebars and homemade ORM, yum!  It uses a MVC design pattern.  Node and MySQL query and route the data in the app. Handlebars generates the HTML.  Remotely, it works on a Heroku database.

Submit a burger at the bottom of the page and you will see it listed it on the left, along with previously viewed burgers.  Choose a burger you want to devour, "eat it" and it moves over to the right to show that you've eaten it.

It stores a database record of your burger Smörgåsbord!

This app works with NPM, MySql, Node, Express, Express Handlebars, Method Override, and body-parser.

Click on the following link to preview the completed assignment. https://burgersdevour.herokuapp.com/


text:
---
title: MySQL Connectivity Troubleshooting
description: Troubleshooting MySQL connectivity issue due to PERMISSIVE mode.
weight: 95
keywords: [mysql,mtls]
---

You may find MySQL can't connect after installing Istio. This is because MySQL is a [server first](/docs/ops/deployment/requirements/#server-first-protocols) protocol,
which can interfere with Istio's protocol detection. In particular, using `PERMISSIVE` mTLS mode, may cause issues.
You may see error messages such as `ERROR 2013 (HY000): Lost connection to MySQL server at
'reading initial communication packet', system error: 0`.

This can be fixed by ensuring `STRICT` or `DISABLE` mode is used, or that all clients are configured
to send mTLS. See [server first protocols](/docs/ops/deployment/requirements/#server-first-protocols) for more information.

gha_language: HTML


text:
# gatsby-starter-ceevee

## ⚠ Currently not actively maintained

Hey! I created this project when I was dipping my toes into the world of web development. A lot has happened since then. Currently, this project is not actively maintained so I am going to archive it. Feel free to fork or take over it if you still want to maintain it. Although, I think the web dev world has come a long way since then especially for personal blogs and portfolio sites. ✌

---

[![All Contributors](https://img.shields.io/badge/all_contributors-1-orange.svg?style=flat-square)](#contributors)

🚀 Gatsby Starter - CeeVee | Design by Styleshout | Developed in React ⚛ by Aman Mittal

**[Preview Link](https://gatsby-starter-ceevee.surge.sh)**

### Features:

* Based on the Ceevee site template, design by [Styleshout](https://www.styeshout.com/)
* Single Page Resume/Portfolio site
* Target audience Developers, Designers, etc.
* Used CSS Modules, easy to manipulate
* FontAwsome Library for icons
* Responsive Design, optimized for Mobile devices

## Installation

Install this starter (assuming Gatsby is installed) by running from your CLI:

`gatsby new gatsby-starter-ceevee https://github.com/amandeepmittal/gatsby-starter-ceevee`

Run `gatsby develop` in the terminal to start.

---

Find more starter templates like this on [Gatsby Starters](https://www.gatsbyjs.org/docs/gatsby-starters/)

### NOTE

If you are using this theme with Gatsby, please leave a link of your site below. You can inspire someone!

## Showcase

* [astucc.io](https://astucc.io/)
* [elohinaguevara.com](http://www.elohinaguevara.com)

#### License

MIT

## Contributors

* [Aman Mittal](http://www.amanhimself.me)
* [Joe](https://github.com/jastuccio)
* [Elohina](http://www.elohinaguevara.com)

repository: amandeepmittal/gatsby-starter-ceevee

gha_language: CSS

repo_name: amandeepmittal/gatsby-starter-ceevee


text:
# Field - MIDI

## Description

Polyphonic MIDI Synth

24 voices of polyphony. Each voice is a band-limited saw waveform running through a state variable filter.

## Controls

| Control | Description |
| --- | --- |
| Button 1 | Choke all voices |
| Knob 1 | Filter Cutoff |
| MIDI Input | Note In/Note Off messages with Simple Polyphony (no voice stealing) |

## Diagram

TODO: Add Diagram

## Code Snippet

Basic MIDI Note Message Handling

```cpp
void HandleMidiMessage(MidiEvent m)
{
    switch(m.type)
    {
        case NoteOn:
        {
            NoteOnEvent p = m.AsNoteOn();
            // Note Off can come in as Note On w/ 0 Velocity
            if(p.velocity == 0.f)
            {
                voice_handler.OnNoteOff(p.note, p.velocity);
            }
            else
            {
                voice_handler.OnNoteOn(p.note, p.velocity);
            }
        }
        break;
        case NoteOff:
        {
            NoteOnEvent p = m.AsNoteOn();
            voice_handler.OnNoteOff(p.note, p.velocity);
        }
        break;
        default: break;
    }
}
```

repository: khwaabd/DaisyExamples

repo_name: khwaabd/DaisyExamples


text:
---
layout: default
---

## clinical entity

Any entity or process that exists in the clinical domain and outside the biological realm. Diseases are placed under biological entities

URI: [http://bioentity.io/vocab/ClinicalEntity](http://bioentity.io/vocab/ClinicalEntity)
## Mappings

## Inheritance

 *  is_a: [named thing](NamedThing.html)

## Children

 *  child: [clinical trial](ClinicalTrial.html)
 *  child: [clinical intervention](ClinicalIntervention.html)
 *  child: [clinical trial](ClinicalTrial.html)
 *  child: [clinical intervention](ClinicalIntervention.html)

## Fields

 * [id](id.html)
    * __range__: identifier type [required]
    * inherited from: [named thing](NamedThing.html)
 * [label](label.html)
    * _A human-readable name for a thing_
    * __range__: label type
    * inherited from: [named thing](NamedThing.html)

repository: stuppie/biolink-model

gha_language: Java

repo_name: stuppie/biolink-model


text:
![Python package](https://github.com/callumrollo/cmcrameri/workflows/Python%20package/badge.svg)

[![Python 3.6](https://img.shields.io/badge/python-3.6-blue.svg)]()
[![Python 3.7](https://img.shields.io/badge/python-3.7-blue.svg)]()
[![Python 3.8](https://img.shields.io/badge/python-3.8-blue.svg)]()
[![Python 3.9](https://img.shields.io/badge/python-3.9-blue.svg)]()

[![Downloads](https://pepy.tech/badge/cmcrameri)](https://pepy.tech/project/cmcrameri)     (PyPI)

[![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/cmcrameri.svg)](https://anaconda.org/conda-forge/cmcrameri) (conda-forge)

# cmcrameri

This is a Python wrapper around Fabio Crameri's perceptually uniform colormaps.

<https://www.fabiocrameri.ch/colourmaps/>

All credit for creating the colormaps to Fabio.
Any errors in the Python implementation of colormaps are my own.

This version is based on *Scientific colour maps* [version 7.0](https://zenodo.org/record/4491293) (02.02.2021).

### Install

With `pip`:
```
pip install cmcrameri
```

With `conda`:
```
conda install -c conda-forge cmcrameri
```

### Usage example

```python
import cmcrameri.cm as cmc
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 1, 100)[np.newaxis, :]

plt.imshow(x, aspect='auto', cmap=cmc.batlow)
plt.axis('off')
plt.show()
```
Alternatively, the registered name string can be used.
```python
import cmrameri  # required in order to register the colormaps with Matplotlib
...
plt.imshow(x, aspect='auto', cmap='cmc.batlow')
```

### Extra instructions

You can access all the core colormaps from Fabio Crameri's list by `cmcrameri.cm.<colormapname>`.

You can use tab autocompletion on `cmcrameri.cm` if your editor supports it.

For a reversed colormap, append `_r` to the colormap name.

Categorical colormaps have the suffix `S`.

For an image of all the available colormaps without leaving the comfort of your Python session:
```python
from cmcrameri import show_cmaps

show_cmaps()
```
![Figure demonstrating the colormaps](cmcrameri/colormaps.png)

The original colormap text files are shipped as part of the package.
Find them on your system with:
```python
from cmcrameri.cm import paths

paths
```

### License
This work is licensed under an [MIT license](https://mit-license.org/).

repository: sdyinzhen/cmcrameri

repo_name: sdyinzhen/cmcrameri


text:
# Generate A Native ReasonML Project With Pesy

[Pesy](https://github.com/jordwalke/pesy) is a CLI utility available from
NPM that you can use to generate a ReasonML project that is ready for native
compilation. It uses [`esy`](https://github.com/esy/esy) for the management
of `opam` packages. It uses [Dune](https://github.com/ocaml/dune) for
building your library code with the ReasonML and OCaml dependencies.

Assuming you already have `pesy` installed globally, create a directory for
your project and then run:

```bash
$ pesy
```

A project will be generated that is out-of-the-box ready to compile native
executables.

repository: jbranchaud/til

gha_language: Vim Script

repo_name: jbranchaud/til


text:
---
layout: default
---

# 1997-11-15 - Aces and Eights

## Header Data

From: bureau42 Anonymous Remailer<EMAIL_ADDRESS>To<EMAIL_ADDRESS>Message Hash: 6d23b39615ba345951a8169d7c3b883c97ab26e3cdf783b8758aab3878e0d7d0

Message ID<EMAIL_ADDRESS>Reply To: _N/A_

UTC Datetime: 1997-11-15 17:54:34 UTC

Raw Date: Sun, 16 Nov 1997 01:54:34 +0800

## Raw message

```
{% raw  %}From: bureau42 Anonymous Remailer<EMAIL_ADDRESS>Date: Sun, 16 Nov 1997 01:54:34 +0800
To<EMAIL_ADDRESS>Subject: Aces and Eights
Message-ID<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: text/plain

Tim May wrote:

> I call a spade a spade.

  spade...kettle...black

{% endraw %}
```

## Thread

+ Return to [November 1997](/archive/1997/11)

+ Return to "[bureau42 Anonymous Remailer <nobody@bureau42.ml.org>](/authors/bureau42_anonymous_remailer_nobody_at_bureau42_ml_org_)"

+ 1997-11-15 (Sun, 16 Nov 1997 01:54:34 +0800) - Aces and Eights - _bureau42 Anonymous Remailer<EMAIL_ADDRESS>


text:
---
title: Typography
tabName: Guide
---

@## Font

The main font for Semrush interface is [Inter](https://fonts.google.com/specimen/Inter?query=inter).

> 💡 For a clearer rendering of the font and its color, use `webkit-font-smoothing: antialiased;` (see cross-browser compatibility at [caniuse.com](https://caniuse.com/#search=-webkit-font-smoothing)).

@## Basic text colors

The main text color in our interface is `gray20`.

The color used for secondary text is `gray60`.

Besides, both paragraphs headings and text can be colored in our main semantic colors. Depending on the situation, they are green, red, and orange.

> 💡 Use this opportunity thoughtfully, and do not abuse the text coloring, as it will reduce its readability. **Don't forget to check the text for contrast against its background**.

@## Font size scale

### What it is and how it works

To simplify the process development and to get a proportional size scale, we use [Tim Brown's Modular Scale Calculator](https://www.modularscale.com/?12,16&px&1.2). More information about this approach can be found in [Tim's article](https://alistapart.com/article/more-meaningful-typography), and about the method itself — at [css-live.ru](http://css-live.ru/articles/rukovodstvo-po-razmeru-teksta-dlya-otzyvchivogo-dizajna.html).

_The base font(s) (Bases) are root dimensions of the scale. The fonts that make a paragraph text look best of all (or those that are used more often in your interface) are usually chosen as such Bases._

> 💡 The essence of this approach is to select a text size for your interface based on the base font(s) and one aspect ratio. It is recommended not to use a lot of fonts as a `Base`, as the scale step decreases, it becomes less harmonious and less proportional. In general, with this approach, the typography is more harmonious, and it is more convenient to calculate it mathematically, since the basic fonts and the aspect ratio set the scale equation.

_An aspect ratio, a coefficient (`Ratio`) is a number, the base is multiplied by to form a modular scale._

**For our interface, 12px has been chosen as the main base font size, while 16px – as the complementary one**. These are sizes commonly used in our interfaces.

**A minor third (1.2) is chosen as the `Ratio`**. It is selected, first of all, so that we get a smooth step, without any jumps. And, secondly, it has been selected not to break the typography already existing in our interfaces.

A clear table of all our sizes according to the `Bases` and the `Ratio` described above:

| size | em      | px   | Appearance                 |
| ---- | ------- | ---- | -------------------------- |
| 800  | 3.981em | 48px | ![nomargin](static/48.png) |
| 700  | 2.986em | 36px | ![nomargin](static/36.png) |
| 600  | 2.765em | 33px | ![nomargin](static/33.png) |
| 500  | 2.074em | 25px | ![nomargin](static/25.png) |
| 400  | 1.6em   | 19px | ![nomargin](static/19.png) |
| 300  | 1.333em | 16px | ![nomargin](static/16.png) |
| 200  | 1.2em   | 14px | ![nomargin](static/14.png) |
| 100  | 1em     | 12px | ![nomargin](static/12.png) |

@## Headings

In our interface, we use headings of 6 sizes and 2 styles: `Medium (500)` and `Bold (700)`.

**The first 4 heading sizes are usually used in hero blocks, large ad screens and banners, landing pages, report headers, and tools**.

|     | Appearance           | Styles                                                     | Variables              |
| --- | -------------------- | ---------------------------------------------------------- | ---------------------- |
| h1  | ![h1](static/h1.png) | `font-size: 48px; line-height: 1.17; font-weight: bold;`   | `--fs-800`, `--lh-800` |
| h2  | ![h2](static/h2.png) | `font-size: 36px; line-height: 1.17; font-weight: bold;`   | `--fs-700`, `--lh-700` |
| h3  | ![h3](static/h3.png) | `font-size: 33px; line-height: 1.2; font-weight: 500;`  | `--fs-600`, `--lh-600` |
| h4  | ![h4](static/h4.png) | `font-size: 25px; line-height: 1.12; font-weight: 500;` | `--fs-500`, `--lh-500` |

**The remaining headings are used for the content part of reports and landing pages**. _For example, in widgets._

|     | Appearance           | Styles                                                     | Variables              |
| --- | -------------------- | ---------------------------------------------------------- | ---------------------- |
| h5  | ![h5](static/h5.png) | `font-size: 19px; line-height: 1.16; font-weight: 500;` | `--fs-400`, `--lh-400` |
| h6  | ![h6](static/h6.png) | `font-size: 16px; line-height: 1.5; font-weight: bold;`    | `--fs-300`, `--lh-300` |

A heading can contain additional information, such as a counter of results found, and so on. They can be found in table headings. In these cases, the additional information is presented by secondary text of `gray60` color and `Light (300)` face.

![secondary text](static/secondary_info.png)

@## Headings on the mobile devices

To improve readability on different screens, change the size of the headings, depending on the [breakpoint](layout/grid-system/).

> Change only font styles, not the markup.

| 0px – 768px             | 768px – ∞               |
| ----------------------- | ----------------------- |
| H1 (36/42) — `--fs-700` | H1 (48/56) — `--fs-800` |
| H2 (33/38) — `--fs-600` | H2 (36/42) — `--fs-700` |
| H3 (25/28) — `--fs-500` | H3 (33/38) — `--fs-600` |
| H4 (19/22) — `--fs-400` | H4 (25/28) — `--fs-500` |
| H5 (16/24) — `--fs-300` | H5 (19/22) — `--fs-400` |
| H6 (14/20) — `--fs-200` | H6 (16/24) — `--fs-300` |
F
@## Basic text sizes and paragraph margins

There are three text sizes in our interface. The main font face is `Regular (400)`.

### 16px text

![16px text](static/p_16.png)

### 14px text

![14px text](static/p_14.png)

### 12px text

![12px text](static/p_12.png)

You can select text within a paragraph: change its face to `bold` or `italic`, make it a [link](/components/link/), a hint, or even cross it out.

![text emphases](static/emphases.png)

@## List

|     | Styles                                     | Numbered list                           | Unordered list                           | Check list                                  |
| --- | ------------------------------------------ | --------------------------------------- | ---------------------------------------- | ------------------------------------------- |
| XL  | `margin-bottom: 8px; padding-right: 12px;` | ![numbered list 16px](static/ol-16.png) | ![unordered list 16px](static/ul-16.png) | ![check list 16px](static/checklist-16.png) |
| L   | `margin-bottom: 8px; padding-right: 12px;` | ![numbered list 14px](static/ol-14.png) | ![unordered list 14px](static/ul-14.png) | ![check list 14px](static/checklist-14.png) |
| M   | `margin-bottom: 8px; padding-right: 8px;`  | ![numbered list 12px](static/ol-12.png) | ![unordered list 12px](static/ul-12.png) | ![check list 12px](static/checklist-12.png) |

@## Nested list

Each next level of the nested list is always indented to the left. **Indents between the list levels for all font sizes are 8px**.

![second level list](static/second-level.png)

### Paragraph margins

Paragraphs have a lower margin, and each of the three paragraph sizes has its own margin. A paragraph of XL size (16px text) has a lower margin of 16px, a paragraph of L size (14px text) — 12px, a paragraph of M size (12px text) — 8px.

You can also use these margins when a paragraph is followed by a paragraph of smaller font size.

![paragraph margins](static/paragraph_margins.png)

@## Quote

We have special styles for highlighting quotes in paragraphs.

![quote styles](static/blockquote_paddings.png)

@## Hints (hint links)

The text can be wrapped in a **hint link (pseudo-link)**. In this case, it becomes an inactive control that triggers events on the page without its reloading. Use a pseudo-link for hints.

![hint-link](static/hint-link.png)

### Hint link states

| State        | Appearance                            | Description                                                                                | Cursor                                                          |
| ------------ | ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- |
| normal       | ![normal](static/hint-default.png)    | The dotted text has `gray60` color.                                                                                | `help` or `pointer`, if clickable                               |
| active/hover | ![hover](static/hint-hover.png)       | **The link color is 12% darker than normal**. An absolute color is `#676767`. The dotted underlining remains. If a link is used together with the icon, the latter changes its color along with the text — they have the same hover area. | `help`, `default` or `pointer` (depending on the usage context) |
| disabled     | ![disabled](static/hint-disabled.png) | **The transparency of a component changes by 30%**. Use this state as the last resort and be sure to lebel the disabled link with an explanatory tooltip.                                                                                | `default`                                                       |
| visited      |                                       | This link does not have `visited` state.                                                                                |                                                                 |

@## Which heading with which paragraph size shall be used?

These recommendations apply to typography in our core products and reports.

**Use XL paragraph with the following headings:**

![h1 with paragraph](static/h1-p.png)

![h2 with paragraph](static/h2-p.png)

![h3 with paragraph](static/h3-p.png)

**Use L paragraph with the following headings:**

![h4 with paragraph](static/h4-p.png)

![h5 with paragraph](static/h5-p.png)

**Use M paragraph with the following heading:**

![h6 with paragraph](static/h6-p.png)

@page typography-a11y
@page typography-api
@page typography-code
@page typography-changelog

repository: geoffdonaldson/intergalactic

repo_name: geoffdonaldson/intergalactic


text:
---
layout: post
tags: dev
title: React hooks explained as simply as I humanly possibly can
---

Hooks let you do more things with function components.

---

You can use state with the `useState()` hook.

eg. `const [count, setCount] = useState(0)`.

Now `count` equals `0`.

Update `count` with `setCount(1)`.

Now `count` equals `1` and the component will update.

---

You can also trigger side effects with the `useEffect()` hook.

eg. `useEffect(() => console.log(count), [count])`.

Now it will console log every time `count` updates.

_hint: use `[]` to only trigger the side effect once when the component is mounted and just leave off the second argument to trigger the effect after any state change._

_hint 2: if you return a function from your side effect it will run that function after the componet unmounts._

---

Here's some code.

```jsx
import React, {useState, useEffect} from "react";

function Counter(props) {
  const [count, setCount] = useState(0);

  useEffect(() => {
    document.title = count;
  }, [count]);

  function countHigher() {
    setCount(count + 1);
  }

  return (
    <p onClick={countHigher}>
      {count}
    </p>
  );
}

```
And that's pretty much it.

If you want a more in-depth look [read the docs](https://reactjs.org/docs/hooks-intro.html).


text:
# Installation
> `npm install --save @types/next-redux-wrapper`

# Summary
This package contains type definitions for next-redux-wrapper (https://github.com/kirill-konshin/next-redux-wrapper).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/next-redux-wrapper

Additional Details
 * Last updated: Fri, 07 Dec 2018 23:17:10 GMT
 * Dependencies: @types/react, @types/react-redux, @types/redux, @types/node
 * Global values: none

# Credits
These definitions were written by Steve <https://github.com/stevegeek>, Jungwoo-An <https://github.com/Jungwoo-An>.

repository: itcongsang/Audio-rodbook

repo_name: itcongsang/Audio-rodbook


text:
# Validation of set, update, delete tag for object storages by non-admin and non-owner user

**Prerequisites**:

Create data storage with files in the root folder.
Files shall have tags.

**Actions**:
1.	Perform command `pipe storage ls cp://{storage_name}/{file_name} -v -l`
2.	Perform command `pipe storage set-object-tags {storage_name} {file_name} new_key=value`
3.	Perform command `pipe storage set-object-tags {storage_name} {file_name} existing_key_name=new_value`
4.	Perform command `pipe storage delete-object-tags {storage_name} {file_name} \existing_key_name`

***

**Expected result**:
1.	Access denied message
2.	Access denied message
3.	Access denied message
4.	Access denied message

repository: epam/cloud-pipeline

branch_name: refs/heads/develop

repo_name: epam/cloud-pipeline