text:
# Company settings

 * Implement the company settings page

   The company settings page is divided in cards, each card represent a different group of settings.
   Some card will navigate the user to another page others don't.

   **Company profile card `profile`**

   This card gives a summary of the company's profile at a glance;

    * Name
    * Logo
    * Full address
    * Website URL
    * Email
    * Phone number
    * Number of employee

   Clicking anywhere on the card or the "Edit" button will navigate the user to the "Profile" page.

   **Quote customization card `quote.coverImageMediaID`**

   This card is mostly a overgrown link to the "Quote customization" page.
   Ideally it would show a random portfolio image from the company but could also just use a generic "roofing" image.

   Clicking anywhere on the card or the "Edit" button will navigate the user to the "Quote customization" page.

   **Job customization card `job.coverImageMediaID`**

   This card is mostly a overgrown link to the "Job customization" page.
   Ideally it would show a random portfolio image from the company but could also just use a generic "roofing" image.

   Clicking anywhere on the card or the "Edit" button will navigate the user to the "Job customization" page.

   **Localization `localization`**

   This card allows the user to change every localization values:

    * Language
    * Timezone
    * Data format
    * Time format
    * Length unit
    * Area unit

   **Enabled languages `localization.enabledLanguageISOList`**

   This card allows the user to enable/disable languages at a glance.

   **Membership `package.summary`**

   This card shows the company's current membership selection with a summary.

   Clicking anywhere on the card or the "Upgrade" button will navigate the user to the "Membership" page.

   **Billing `billing.summary`**

   This card shows the company's billing address and default credit card summary.

   Clicking on the billing address, credit card or "Edit" button will navigate the user to the "Billing" page.
   Clicking on the "View history" button will navigate the user to the "Billing history" page.

## Profile

`GET /companies/:companyId` Retrieve the company profile.
`GET /companies/:companyId/settings?group=profile` Retrieve the company profile.
`GET /companies/:companyId/settings?group=profile.name` Retrieve the company name.

## Membership

`GET /companies/:companyId/settings?group=package.Id` Retrieve the package linked to this company.
`GET /companies/:companyId/packages` Retrieve the available packages to this company.

## Billing

`GET /companies/:companyId/settings?group=billing` Retrieve the billing settings for this company.
`GET /companies/:companyId/settings?group=billing.address` Retrieve the billing address for this company.
`POST /companies/:companyId/settings?group=billing.creditCard` Add a credit card for this company.
`PATH /companies/:companyId/creditCard/:creditCardId` Modify a credit card.

### Billing history

### Add credit card

## Quote customization

### Email

## Job customization

### Terms & Conditions

# User preferences

## Profile

## Password

# User management

## Search

## Invite

## User details

### Edit

### Remove

### Reset password

### Reinvite

## Package

## Widget/Feature

## Permission management


text:
# The Young Physicists' Symposium Website

The first (and hopefully not last) Undergraduate Physics Symposium - Young Physicists' Symposium

See [local build instructions](lbi.md) if changing template etc

For only content changes,

1. index.md - Introduction
2. program.md - Autogenerated, do not edit
3. registered.md - Autogenerated, do not edit
4. registration.md - Registration rules and links
5. contact.md - Contact Us

For rebuilding registered.md and registration.md,
1. update `abstracts/topic` to have a file name as the name of the speaker with content as the abstract of talk
2. Edit `_programtable.md` to edit the table.
3. Add registered participants to `_registerednames.md` to have a list of names

license: MIT

repository: IISERM/ugsymposium

branch_name: refs/heads/master

extension: md

gha_language: SCSS

gha_license_id: MIT

license_type: permissive

repo_name: IISERM/ugsymposium


text:
# write-yaml-file

> Stringify and write YAML to a file atomically

Creates directories for you as needed.

## Installation

```
<pnpm|yarn|npm> add write-yaml-file
```

## Usage

```js
const writeYamlFile = require('write-yaml-file')

writeYamlFile('foo.yaml', {foo: true}).then(() => {
  console.log('done')
})
```

## API

### `writeYamlFile(filepath, data, [options])`

Returns a promise.

### `writeYamlFile.sync(filepath, data, [options])`

#### `options`

Same options that can be passed in to [js-yaml](https://www.npmjs.com/package/js-yaml#safedump-object---options-)

##### mode

Type: `number`
Default `438` *(0666 in octal)*

[Mode](https://en.wikipedia.org/wiki/File_system_permissions#Numeric_notation) used when writing the file.

#### makeDir

Type: `boolean`
Default: `true`

Creates the directory to which the YAML file is written.

## Related

- [load-yaml-file](https://github.com/LinusU/load-yaml-file) - Read and parse a YAML file

## License

[MIT](LICENSE) © [Zoltan Kochan](https://www.kochan.io)

repository: zkochan/packages

branch_name: refs/heads/main

gha_language: JavaScript

repo_name: zkochan/packages


text:
# Commodity_Tracker---A python based commodity tracking and research system
This is a commodity automatic tracking and analyzing system based on PYTHON 3. System supports automatic data download and upload from commodity exchanges, St Louis Fed data center and Yahoo Finance data.
# Installation
To install this project, please use PYTHON 3 and MySQL database. The detailed databse setup located in "DB" folder as "dbLogin.py" where you can find all login information to be settled with your own system. Aafter download the whole project, suggests to use a PYTHON based IDE for example "Spyder" to load in. And a directly test case is provided in Test_Sys folder.
# Usage
This system is focused on web-scrapping from commodity exchanges (Zhengzhou, Shanghai, Zhongjin, Dalin) and St Louis Fed as well as Yahoo Finance data center. Store them into local database for future usage. Also generate different comparsion reports for commodity markets and compared with stock market. Also it allows user designed comparion and report.
# Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.
# License
Copyright (c) 2020 Shaolun Du

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

gha_language: Python


text:
# Genista dalmatica Bartl. SPECIES

#### Status
SYNONYM

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
F. G. Bartling & H. L. Wendland, Beitr. Bot. 2:74. 1825

#### Original name
null

### Remarks
null

repository: mdoering/backbone

path: /life/Plantae/Magnoliophyta/Magnoliopsida/Fabales/Fabaceae/Genista/Genista sylvestris/ Syn. Genista dalmatica/README.md

repo_name: mdoering/backbone


text:
#Backbeard Skeleton

please see Backbeard's README for detail.

##Copyright

This skeleton heavily references zendframework/ZendSkeletonApplication.
, and zfcampus/zf-apigility-skeleton

https://github.com/zendframework/ZendSkeletonApplication
https://github.com/zfcampus/zf-apigility-skeleton

Some files (.htaccess etc) are derived from code of the Zend Framework.
Code subject to the new BSD license (http://framework.zend.com/license/new-bsd).
Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)

repository: sasezaki/BackbeardSkeleton

repo_name: sasezaki/BackbeardSkeleton


text:
# react-strapmenu

[![npm version](https://badge.fury.io/js/react-strapmenu.svg)](https://badge.fury.io/js/react-strapmenu)

Usable [bootstrap](https://github.com/react-bootstrap/react-bootstrap) dropdown menu generator for [react-router](https://github.com/ReactTraining/react-router)

### but why?
It's just another automated everyday-task. Simple but everyday, literally. According to statistics, currently **18312** kittens coding routes.js. No joke.
A lot of kittens with their tiny paws on keyboards.

### but how?
It basically loops through child routes to generate cute dropdown menu.
like dis ;

![react-strapmenu](https://raw.githubusercontent.com/sercanov/react-strapmenu/master/example/preview.png)

Okay it's default. Not cute.

### teach me

**Installation**

```javascript
yarn add react-strapmenu
```
\- or -
```javascript
npm install react-strapmenu --save
```

----------

**Index.js**
```javascript

import Route from 'react-router/lib/Route'
import Router from 'react-router/lib/Router'
import browserHistory from 'react-router/lib/browserHistory'

ReactDOM.render((
  <Router history={browserHistory}>
    <Route name='Root' path='/' component={App} >
      <Route path='/beers' name='Beers' icon='ion-beer' exposed component={Beers}/>
      <Route path='/paws' name='Paws' icon='ion-ios-paw' exposed component={Paws}/>
      <Route path='/octocats' name='Octocats' icon='ion-social-octocat' exposed component={Octocats} divideAfter>
        <Route path='/octocats/:id' name='Paws2' component={OctocatDetail} />
      </Route>
      <Route path='/logout' name='Logout' icon='ion-power' component={Logout} exposed />
    </Route>
  </Router>
),
  document.getElementById('root')
);

```

In your entry point ( where routes are defined ) expose which routes you want to include.
like dis ;

#### Route props

- **exposed**: appends to menu if true.
- **name**: name of your menu item.
- **icon**: class name of the icon. iconset should be included in the codebase. ex. `ion-users` , `fa fa-users` , `glyphicon glyphicon-users`
- **divideAfter**: appends menu divider after that item, doesn't need to exposed.

----------

**App.js**
```javascript
import { Navbar, Nav, Button } from 'react-bootstrap'
import { LinkContainer } from 'react-router-bootstrap'
import NavbarGenerator from 'react-strapmenu'

class App extends Component {
  render() {
    return (
      <div className="App">

        <Navbar fixedTop inverse>
          <Navbar.Collapse>
            <Nav pullRight>
              <NavbarGenerator routes={this.props.routes} />
            </Nav>
          </Navbar.Collapse>
        </Navbar>

        <div className="App-header">Insert content here</div>
      </div>
    );
  }
}

export default App;
```

Import and render with routes.

#### Component props

- **routes (required)**: you have to pass the routes to the component. `this.props.routes` 🤔
- **dropdownProps**: props you want to pass to [`<NavDropdown />`][https://react-bootstrap.github.io/components.html#navs-dropdown]

----------

### TODO
- [ ] Iconless layout
- [ ] Example project
- [ ] [Tell Me](https://www.youtube.com/watch?v=PXXdYttPTgc)

repository: sercanov/react-strapmenu

repo_name: sercanov/react-strapmenu


text:
# Examples Unit Testing: Asserts and Mocking in C#
This contains an example project that shows how to use Asserts and the Moq library.

## Additional info
- BadRandomGeneratorTests contains the examples focussed on asserts.
- CalculatorTests contains the examples focussed on mocking.


text:
---
title: "Download Jai Mummy Di (2020) Hindi Movie Web-DL 480p [400MB] || 720p [1.1GB] || 1080p [1.7GB]"
date: "2020-04-02"
---

Download Jai Mummy Di (2020) Hindi Movie in [1080p](https://1moviesflix.com/1080p-movies/), [**720p**](https://1moviesflix.com/720p-movies/) and **[480p](https://1moviesflix.com/480p-movies/)**. This is a Bollywood Hindi movie and available in 480p, 720p & 1080p quality. This is a **Comedy, Romance** and **Drama** based movie. This movie is released in **2020** in the Hindi language**.** Click on the Download button below to download this movie. This is the Latest **Web-DL** with **Hindi audio**.

**TheMoviesFlix.in** is one of the Best Websites/Platform For Bollywood and Indian Movies and Series. We also provide south movies like Tamil, Telugu and Malayalam movies, and also Bengali, Punjabi, and other local movies. We Provide Direct Fast Google Drive Download Links For Secure Downloading. Just Click On Download Button And Follow Steps To Download And Watch Movies Online For Free.

[![](https://m.media-amazon.com/images/M/MV5BNjEyMjM0ZTYtNzY5Yy00YjE2LWFhZDUtYWY3YTVjOWE0MTAzXkEyXkFqcGdeQXVyODE5NzE3OTE@._V1_SX300.jpg)](https://www.imdb.com/title/tt9817760/ "Jai Mummy Di")

Jai Mummy Di (2020)

3.6**Rating:** 3.6 / 10 from 683 users**Metascore:** N/A

Jai Mummy Di is a light-hearted family comedy that portrays the trials and tribulations a couple has to undergo due to the dynamics between their respective mothers.

### Download [Jai Mummy Di](https://www.imdb.com/title/tt9817760/) 2020 1080p, 720p & 480p – Full Hindi Movie

### Movie Info:

- **Full Name:** Jai Mummy Di
- **Language:** Hindi
- **Release Year:** 2020
- **Size:** 400MB & 1GB & 1.7GB
- **Quality:** 480p & 720p & 1080p
- **Format:** Mkv
- **Director:** Navjot Gulati
- **Writers:** Navjot Gulati
- **Stars:** Poonam Dhillon, Supriya Pathak, Sunny Singh Nijjar

## Storyline:

_**Jai Mummy Di**_  is a 2020 Indian [Hindi](https://1moviesflix.com?a270777880=bzROVDRheHdpSG1xamJQQ1poa09xMGpqRTdYTEVQZFBUbGxqZkJtcUZnRFl3VGVOd1ZEUWgwSFlndVA0Z1pXYXBtbUtLNjBxbTgvWHRYYVVlNlNVZkJHWkhHaGVnVGNNYlFzR3lmR2JKVkU9 "Hindi")\-language romantic comedy film directed by debutant Navjot Gulati starring Sunny Singh and Sonnalli Seygall. The film also features actors Supriya Pathak and Poonam Dhillon. It was produced by Luv Films and distributed by T-Series. The film tells the story of conflicting dynamics between mothers of protagonists and how that is affecting them and other members of both the families.

Even more heartbreaking is to see two seasoned actors — Dhillon and Pathak — not having much to do onscreen. Considering the film is called Jai Mummy Di, you expect more of the mummies but the whole story is narrated from the point of view of this couple wanting to get married.

* * *

* * *

.button { color: white; padding: 8px 6px; text-align: center; text-decoration: none; display: inline-block; font-size: 14px; margin: 2px 1px; -webkit-transition-duration: 0.4s; /\* Safari \*/ transition-duration: 0.4s; cursor: pointer; } .button5 { background-color: #555555; color: white; border: 1px solid #e7e7e7; border-radius: 4px; } .button5:hover { background-color: #e7e7e7; border: 2px solid #555555; color: black; } [Join Our Telegram](http://gdrivepro.xyz/join.php) [Hollywood](https://moviesverse.com/) [AnimeFlix](https://animeflix.in/) [Download PC Games](https://gamesflix.net/)

* * *

* * *

Please Do Not Use VPN for Downloading Movies From Our Site.

Click On The Above **Download Button** to Download File.

If You Find Any Broken Link Then **Report** To Us.

**Comment** Your Queries And Requests Below In The Comment Box.

* * *


text:
## About

NuGet.Downloader allows to download all NuGet packages found in a solution, and also to push them to a specific NuGet feed.

## Getting Started

The NuGet Downloader can be installed as a standalone .Net Core tool using the following command:
`dotnet tool install -g nventive.NuGet.Downloader.Tool`

Help can be found with :
`nugetdownloader --help`

The NuGet Downloader can also be used as part of the NvGet library

## Sample commands

branch_name: refs/heads/develop

gha_language: C#


text:
# Outfit

[![CI Status](https://img.shields.io/travis/fuzza/Outfit.svg?style=flat)](https://travis-ci.org/fuzza/Outfit)
[![Version](https://img.shields.io/cocoapods/v/Outfit.svg?style=flat)](https://cocoapods.org/pods/Outfit)
[![License](https://img.shields.io/cocoapods/l/Outfit.svg?style=flat)](https://cocoapods.org/pods/Outfit)
[![Platform](https://img.shields.io/cocoapods/p/Outfit.svg?style=flat)](https://cocoapods.org/pods/Outfit)

* [Usage](#Usage)
	* [Basic usage](#Basicusage)
	* [Advanced usage](#Advancedusage)
		* [Outfit composition](#Outfitcomposition)
		* [Reuse outfits in subclasses](#Reuseoutfitsinsubclasses)
		* [Override default properties](#Overridedefaultproperties)
* [Example](#Example)
* [Requirements](#Requirements)
* [Installation](#Installation)
* [Author](#Author)
* [License](#License)

## Usage

### Basic usage

1. Import the framework

```swift
import Outfit
```

 2. Define conformance of your class to `Outfitable` protocol

```swift

extension MyCustomView: Outfitable {}

```

3. Extend your wardrobe with some nice outfit

```swift

extension Wardrobe where Wearer: MyCustomView {

    func perfectLook() -> Outfit<Wearer> {
        return {
            // Customize the instance of MyCustomView
            $0.titleColor = .red
            $0.placeholder = "It's something new"
            $0.clipsToBounds = true
        }
    }
}

```

4. Access your wardrobe and try it on

```swift

let view = MyCustomView()

view.wrd.tryOn {
    $0.perfectLook()
}
```

5. Have fun!

### Advanced usage

#### Outfit composition

You can combine outfits together using custom concat operator (++)

```swift

extension Wardrobe where Wearer: UIView {
    func rounded(_ radius: CGFloat) -> Outfit<Wearer> {
        return {
            $0.layer.masksToBounds = true
            $0.layer.cornerRadius = radius
        }
    }

    func background(_ color: UIColor) -> Outfit<Wearer> {
        return { $0.backgroundColor = color }
    }

    func defaultView() -> Outfit<Wearer> {
        return rounded(5.0)
        ++ background(.white)
    }
}
```

#### Reuse outfits in subclasses

You can reuse outfits from parent class in the child

```swift

extension Wardrobe where Wearer: UIView {
    func defaultView() -> Outfit<Wearer> { ... }
}

extension Wardrobe where Wearer: UIButton {
    func title(_ text: String) -> Outfit<Wearer> {
        return {
            $0.setTitle(text, for: .normal)
        }
    }

    func defaultButton() -> Outfit<Wearer> {
        return defaultView()
            ++ title("Default title")
    }
}

```

#### Override default properties

If you need to override some property in a single place or add new one, and it doesn't make a sense to define new function for this:

```swift
func viewDidLoad() {
    super.viewDidLoad()

    let view = MyCustomView()
    view.wrd.tryOn {
        $0.perfectLook()
        ++ { $0.titleColor = .green }
    }
}
```

## Example

To run the example project, clone the repo, and run `pod install` from the Example directory first.

## Requirements

* Swift 4.2
* Xcode 10

## Installation

Outfit is available through [CocoaPods](https://cocoapods.org). To install
it, simply add the following line to your Podfile:

```ruby
pod 'Outfit'
```

## Author

Oleksii Faizullov<EMAIL_ADDRESS>
## License

Outfit is available under the MIT license. See the LICENSE file for more info.

repository: fuzza/Outfit

gha_language: Swift

repo_name: fuzza/Outfit


text:
defaultxr's pure data abstractions
==================================
This is a collection of abstractions I've made for Pure Data. It includes sequencers, GUIs, general utilities, and a few effects and synths. I'm still in the process of writing them, so consider them "beta", and expect changes if you upgrade later (which will hopefully be mentioned in commit messages). Some objects might get renamed, removed, or end up working/looking completely different later. Beware of this.

I have only tested these in Pd-extended 0.43.4 on Arch Linux. Since they are just abstractions, they should work on any platform that Pd-extended runs on. I have not tested them on Pd-vanilla, but I doubt they would work since a lot of them depend on objects that are only provided by Pd-extended.

Please notify me of any bugs you find while using these abstractions.

[If you find this collection useful, please consider donating to me to support the development of these abstractions and other tools.](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=2NCRJC5JSZ5KN&lc=US&item_name=defaultxr&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted)

Some of the abstractions I find most useful:
* `map` - easy list access (useful for arpeggios, patterns, etc.)
* `snd~` - easy sound file access (provide a filename as the first argument and it is automatically handled for you)
* `o~` - easy `dac~` access (with volume control, keyboard shortcuts, etc)
* `view~` - view the waveform (acts as a simple oscilloscope)
* `drumseq` - simple and easy step sequencer (see also: `drumseq2`, the "deluxe" version)
* `rrange` - random range. easy way to get an integer within a specific range.
* `rchoice` - random choice. choose randomly from a list provided as arguments or to the right inlet.
* `bpmm` - clock for use with sequencers like `drumseq`, `anaseq`, etc.
* `tb303~` - fake tb303 (simple and quick synth)
* `rmap` - receive map (quickly create a lot of `receive` objects just by specifying them as arguments to `rmap`)
* `unmap` - map inputs to their indexes in a list (the inverse of `map`)

Below is a quick overview of most of the included abstractions.

analysis
========
abstractions for analyzing stuff or displaying information.

`attacks~` - supposed to generate a list of a sound file's 'attacks', which could then be used for `snds~`. WIP.

`cpuload` - display current CPU load average

`cview` - view all incoming midi CC

`ifiddle~` - graphical interface to `fiddle~`.

`lview` - list view. shows the whole list received, as well as its length.

`nview` - view all incoming midi note values.

`scroll~` - scrolling amplitude view.

`siga~` - signal analysis. shows the current value, average value, maximum and minimum values, and a `vsl` to plot the input. there is also a `bng` to reset the recorded maximum and minimum.

`signum~` - current value of the signal. basically like `unsig~` with a number box gui.

`spectrum~` - shows the FFT spectrum of the input.

`tview` - text viewer. scrolls the last 5 received inputs.

`vcsig~` - view control signal. shows the current value of an input signal graphically. assumes the signal is between 0 and 1.

`view~` - waveform view.

`vsig~` - view signal. same as `vcsig~` but assumes the input range is between -1 and 1.

ctrl
====
abstractions for controlling things, either via keyboard or by clicking.

`capslock` - shows whether capslock is on or off and also outputs 1 or 0 depending.

`cb` - control bend. shows the current value of the MIDI bend parameter, also adjusting its range to 0-127.

`cnum` - control number. use your keyboard's numpad to increase or decrease a number. use 8 to increase it or 2 to decrease it. probably won't work if your numlock is on.

`c` - midi continuous controller interface

`crossfade~` - graphical "crossfader". see also: `scrossfade~`

`editmode` - detect whether edit mode is on or off.

`inputd` - input accumulator deluxe

`inputn` - input accumulator for numbers

`input` - input accumulator (similar to the `symbol` atom, but without a built-in GUI)

`ispigot~` - graphical audio spigot (left inlet is for the audio, right inlet is to open or close the spigot)

`ispigot` - graphical message spigot (left inlet is for the messages, right inlet is to open or close the spigot)

`kbdm` - convert numbers from `key` into midi note numbers so you can use your keyboard to play notes.

`keydrum` - use squares of the keyboard as drum pads.

`keynum` - get numbers from the keyboard. if "h" is provided as the first argument, also allows hexadecimal numbers (a-f).

`keyonchg` - outputs a bang when the $1 key is pressed.

`keyonoff` - outputs 1 when the $1 key is pressed and 0 when it is released.

`keyrow` - converts numbers from `key` into the numbers 0-9. in other words, use a row of keys as numbers.

`kfilename` - abstraction for making paths. used by `snd~`, `drumseq`, `anaseq` and others. **NOTE: you might want to edit this since it uses my paths.**

`mcb` - master control bang. don't use this, i'm going to fix it eventually.

`mck` - master control keyboard. don't use this.

`m-client` - master control client. don't use this.

`mcl` - master control ...something. don't use it.

`mc` - master control client. don't use this.

`mct` - master control toggle. don't use this.

`mono` - monosynth implementation (keeps track of which keys are held down, only sending the most recent, including if more than one has been pressed/held down)

`monos` - simpler version of mono. should work better with synths expecting input from something like `notein`.

`mspigot` - multi-spigot. has 5 message inlets and allows you to graphically control which of them are mixed to the outlet.

`mstr` - master. don't use it. i'll make a better version eventually, maybe.

`nems` - non-edit mode spigot. only allows messages to pass when edit mode is off.

`numlock` - shows whether numlock is on or off and also outputs 1 or 0 depending.

`polys` - similar to pd's built-in `poly` but allows you to specify a specific voice with note-offs (i.e. so you can have multiple voices with the same note). WIP: voice stealing is not yet implemented.

`router` - routes one input (left inlet) to either the left or right outlet, depending on the state of the ratio control. the right inlet allows you to switch the outlet.

`scrossfade~` - graphical stereo "crossfader". see also: `crossfade~`

`sndsel` - sound selector. allows you to select a sound by browsing folders graphically, because `playlist` kind of sucks. it's a work-in-progress, but it's probably ready for regular use.

`switcher~` - graphically switches between 2 audio inputs. there are 3 inlets: the middle is a message inlet accepting floats to select the input to send to the outlet, while the left and right inlets are the audio inputs.

`switcher` - switches between outputting the left inlet or the right inlet graphically via a ratio control. you can also change the inlet by sending a "switch" message to the first inlet.

demos
=====
demonstrations of the included abstractions (definitely open these if you want a tour of this library)

fx
===

abstractions for many LADSPA effects, as well as interfaces for filters, etc. i might end up deleting a lot of these later since there's so many and it's hard to maintain them in a quality way.

gen
===
abstractions for generating sound

`analog~` - analog simulation. basically supposed to be like line noise and a small dc offset. probably not a very good simulation of the actual analog sound.

`fluid~` - FluidSynth (SoundFont) interface.

`grain~` - one "grain" of a sound file. WIP.

`granular~` - supposed to be a granular synth, but i didn't finish it. i might do that eventually.

`irsong~` - interface to `randomsong~`

`looper~` - loop snippets of a sound graphically. WIP

`noisef~` - noise frequency

`playsf~` - play a file from the argument.

`pm~` - phase modulation oscillator, stolen from PDX7, with a slight modification.

`psndm~` - polyphonic sound player. you can send it midi numbers to play the sample at that value. it has 8 voices.

`psndp~` - polyphonic sound player. similar to `sndp~` but with 6 voices.

`pulse~` - non-band-limited pulse wave with modulatable pulse width.

`random~` - random wave generator (based on a LADSPA plugin).

`randomsong~` - play a random song from your hard drive (you'll probably have to modify this a lot for it to work for you)

`rec~` - record a snippet of sound to a table.

`recp~` - play the a snippet of sound from `rec~`.

`recsnd~` - allows access to the sound recorded with `rec~` in a similar manner to the way `snd~` allows.

`saw~` - bipolar version of `phasor~`

`sine~` - extremely simple sine wave oscillator based on `phasor~` and `cos~`. might change this in the future.

`sndcf~` - generates a signal to control `snd~` based on frequency of the sound.

`sndcl~` - generates a signal to control `snd~` based on a `line~` (i.e. with start and end-points and a rate)

`sndcm~` - generates a signal to control `snd~` based on midi numbers (60 being the default base note)

`sndd~` - sound duplicate. like `snd~` but does not re-load the file; simply re-uses the table containing the already-loaded file.

`sndf~` - sound frequency. play a sound at a rate multiplied by the normal rate.

`sndl~` - sound line. play a sound or snippets of it based a `line~`.

`sndm~` - sound midi. play a sound based on midi note numbers, with 60 being the default base note.

`snd~` - sound file. load a sound into a table and read through it via the audio inlet, with 0 being the beginning and 1 being the end.

`sndp~` - sound play. load a sound into a table and bang to play the whole sound. good for drums.

`snds~` - sound slices. play snippets of a sound that has been analyzed by `attacks~`

`srec~` - signal-based `rec~`. work-in-progress.

`timestretch~` - "timestretch" a sound by repeatedly going back and forth through it.

`tri~` - non-band-limited triangle or saw wave.

math
====
abstractions for altering or generating number streams

`atc~` - "audio to control" - converts a bipolar signal (-1 to 1) to a unipolar signal (0 to 1)

`atc` - "audio to control" - converts bipolar numbers (-1 to 1) to unipolar numbers (0 to 1)

`atr~` - "audio to range" - converts a bipolar signal (-1 to 1) to an arbitrary range specified as arguments or via inlets.

`atr` - "audio to range" - converts bipolar numbers (-1 to 1) to an arbitrary range specified as arguments or via inlets.

`cta~` - "control to audio" - converts a unipolar signal (0 to 1) to a bipolar signal (-1 to 1)

`cta` - "control to audio" - converts unipolar numbers (0 to 1) to bipolar numbers (-1 to 1)

`ctr~` - "control to range" - converts a unipolar signal (0 to 1) to an arbitrary range specified as arguments or via inlets.

`kinv~` - signal inverter. 0 becomes 1, 1 becomes 0, and everything in between.

`kinv` - number inverter. 0 becomes 1, 1 becomes 0, and everything in between.

`maybe` - maybe output a bang. numbers between 0 and 1 specify a probability of a bang (i.e. 0.25 is 25% chance of bang), numbers above 1 specify 1 in n chance of bang (i.e. 5 is 1 in 5 chance of bang, or 20%). banging the inlet is a 50% chance of bang.

`minv` - "midi invert". 127 becomes 0, 0 becomes 127, and everything in between.

`mrange` - scale 0-127 to an arbitrary range.

`num` - holds a number and allows you to add, subtract, multiply, or divide from that number via messages.

`rangem` - scale a range to midi (0-127).

`reciprocal` - outputs the reciprocal of the input.

`round` - round a float to the nearest integer.

`rrange` - random within a range (inclusive).

`rtr` - "range to range" - scale one arbitrary range to another arbitrary range.

`transposer` - outputs number to multiply a frequency by in order to shift it by a number of semitones (provided as input or argument)

seq
===
sequencer abstractions

`adsr~` - attack decay sustain release envelope... well, kinda.

`adsr` - same as `adsr~`, but outputs messages instead of audio signal.

`aline~` - automatic line. like `line~` but floats don't jump, they start a line whose time is provided by the first argument.

`aline` - automatic line. like `line` but floats don't jump, they start a line whose time is provided by the first argument.

`amap` - advanced version of `map`. has more features like random selection, insertion, deletion, and dumping the contents.

`anaseq` - a sequencer made of vertical sliders; supports saving, loading, multiple patterns and more.

`beat~` - make beats from a phasor by dividing the phasor into $1 sections and outputting a bang every $2 sections.

`boxseq` - 6x6 "box" sequencer. can be played in any direction, even diagonally. was an experiment. might change it later.

`bpma` - "bpm any". WIP.

`bpmm2` - was supposed to be the next version of `bpmm` with fewer outlets but i might delete this actually.

`bpmm` - metro/gui for outputting bangs on the downbeat, bangs on each quarter note, and numbers for each quarter note. try connecting the third outlet to `anaseq` or `drumseq`

`drumseq` - a 16x4 matrix of toggle boxes. supports saving, loading, multiple patterns and more.

`dust` - output bangs at random intervals lower than the provided argument.

`edger~` - basically a convenient interface to `edge~`. left outlet bangs on a zero to non-zero transition, while the right bangs on a non-zero to zero transition.

`ft` - "friendly table". abstraction to make it easier to edit a table. need to redo this.

`hash` - hash table. operates similarly to `table` except keys and values can be any symbol, rather than just integers. see also: `hashread`, `hashwrite`

`hashread` - read from `hash`'s hash table. analogous to `table`'s `tabread`.

`hashwrite` - write to `hash`'s hash table. analogous to `table`'s `tabwrite`.

`iadsr~` - interface ADSR envelope. WIP.

`ilist` - indexed list manager. insert into or remove from a list by index, just by sending messages.

`listman` - list manager. you can add elements to a list, remove them, check for their existence within the list, etc. you can't remove by index, only by value, so don't use this if you want to have multiple of the same element.

`lmap` - line map. was supposed to be used to generate a complex line. but i might delete this.

`map` - map bangs or floats to elements of a list provided as arguments or set via the right inlet. probably the most useful abstraction you'll ever find.

`ometro` - "on metro". a `metro` that is on by default.

`pattseq` - graphical sequencer similar to `drumseq` but outputs numbers rather than just bangs.

`pb` - processor for betablocker. basically a little computer.

`pmap` - program map. related to `pb`.

`proll` - piano roll-like sequencer. WIP.

`queue` - a first-in-first-out queue. you can enqueue things onto the queue or dequeue them from it. see also: `stack`.

`rchoice` - random choice from either the arguments, or from the incoming list.

`rmap` - receive map. takes as arguments a list of names to receive from, and outputs data received from them with numbers prepended.

`sbox` - box abstraction used by `boxseq` and `pattseq`.

`seqfill` - abstraction used by `drumseq`'s "e" command. might remove this in the future.

`srush` - "snare rush" abstraction. might redo this to make it simpler.

`stack` - a last-in-first-out stack. you can push things onto the stack or pop them off of it. see also: `queue`.

`taptempo` - tap or send bangs to get the tempo.

`td~` - table draw. supposed to draw into a table via messages, but it's not finished yet. probably never will be. might delete this.

`tmap` - timed map that plays through the whole list with one bang.

`tracker` - simple "tracker" sequencer controllable via the keyboard.

`unmap` - get the index of incoming values in a list provided either as arguments or via the right inlet. the opposite of `map`.

`vslz` - extremely simple 8-step vsl-based sequencer.

synths
======
"full-featured" synthesizers. a lot of these are scrapped designs. most of these aren't that great.

`Adder4~` - was supposed to be a four-voice additive synth but i might remove it eventually.

`Adder~` - was supposed to be one of the voices for `Adder4~` but i might remove it.

`Adder_voice~` - voice for `Adder~`

`fmFeedback~` - FM feedback synth stolen from NoizeHack, slightly modified by me.

`hoover~` - hoover synth. WIP.

`kick1~` - extremely basic kick drum synth

`kick2~` - another extremely basic kick drum synth

`snare1~` - extremely basic snare drum synth

`snare2~` - another extremely basic snare drum synth

`tb303~` - TB303 clone. probably doesn't sound much like the real thing. WIP

utils
=====
miscellaneous utilities

`*+~` - multiply and then add to a signal with one object.

`autosend` - use the first item in a message as the destination for the rest of the message.

`chars` - separate a symbol into a list of its characters.

`colors` - outputs a pd color when the left inlet is banged. otherwise, the inlets take floats: from left, the red amount, green amount, and blue amount.

`e` - "every". only pass every $1 inputs, with an offset of $2.

`emptysymbol` - test if a symbol is the empty symbol.

`hue_to_rgb` - convert a hue to rgb colors. see also: `colors`

`interval` - outputs time between bangs, measured with `realtime`.

`itimer` - interface timer. shows minutes, seconds, and milliseconds.

`ktimer` - timer abstraction. outputs minutes, seconds, and milliseconds from an internal `realtime` object. this is used by `itimer` but i might delete this.

`lb` - `loadbang` abstraction. lets you output a specific number or value on load, rather than just a bang.

`limit~` - handy limiter abstraction. basically just outputs a signal limited by `limiter~` in case you're lazy like me. be warned that this introduces a delay of 64 samples, of course.

`list-find-1` - basically the same as `list-find` but only finds the first instance of an item in the list.

`list-replacer` - replaces all instances of one item in a list with another list.

`lists` - list store. basically works how `float` and `symbol` work, except, of course, that it's for lists.

`list-without` - returns a list without all instances of the specified element.

`marquee` - display elements of a list at regular intervals.

`mp3conv` - use the `lame` command-line utility to convert an mp3 to wav, storing the wav in /tmp and outputting the filename of the wav when conversion finishes. obviously you'll need to have `lame` installed in order for this to actually work.

`o~` - interface for mono output to `dac~`.

`parser` - parses lisp-style commands from within the incoming message (i.e. "(function argument1 argument2 ... argumentN)") and outputs the original message with the output of each command replacing the command. currently accepts "rc" for `rchoice` and "rr" for `rrange`. it's a decent start but i will probably add memory to it as well. maybe eventually it will be a full-fledged lisp implementation! ha.

`po~` - panned mono output. same as `o~` but the first argument is the stereo panning position of the input, from -45 to 45.

`porta~` - portamento. might need work.

`qtabwrite` - quick tab write. specify a table as the argument, and then you can send messages to the inlet or to qt-$1 in the format "INDEX VALUE"

`qtimer` - quantizible timer. similar to `interval` but allows you to specify the granularity of output values.

`quote` - surrounds the input with quotes.

`rporta~` - relative portamento. might need work.

`so~` - interface for stereo output to `dac~`. see also: `o~`.

`spacesym` - outputs a symbol that has a character that looks blank. thus, you can make symbols with "spaces" in them without them being lists. it's one of pd's quirks. don't know if this'll work everywhere.

`span~` - simple panner. like `pan~` but lets you specify the panning position as an argument if you're lazy.

`sreceive~` - settable receive. probably don't use this.

`ssend~` - settable send. probably don't use this.

`sym` - turn a list into a symbol (basically just `l2s` with an empty symbol sent to the right inlet. see also: `chars`)

FUTURE
======

In the future i plan to clean up a lot of these. Either by renaming them or by splitting up functionality, etc. There are also a few that i'd like to re-code or rethink entirely. Some of the things i want to change:

* rename `adsr` and `adsr~` to just `adr` and `adr~` and remove the sustain functionality
* remake `adsr` and `adsr~` into actual ADSR envelopes
* `atc`, `cta`, `atr`, and the others should probably be renamed to something like `btu`, `utb`, and `btr`, since the technical term for a signal from 0 to 1 is "unipolar" and the technical term for a signal from -1 to 1 is "bipolar"
* see if there are better ways to analyze the "volume" of a sound for `scroll~`
* fix `mc` and `master` and the stuff that depends on them
  * `mcb`
  * `mck`
  * `m-client` (?)
  * `mcl`
  * `mct`
  * `mstr` (?)
  * have `mc` output empty symbol if `master` isn't detected (so stuff like `o~` doesn't have the wrong "name" from a save)
  * FIX `master` NAME ALLOCATION POSSIBLE FREEZE(!)
* make a better `analog~`
* remove `seqfill` maybe.
* redo `ft` maybe.
* implement voice stealing in `polys`
* get `tracker` to use `kfilename`
* make `randomsong~` use `mp3conv` and fix `mp3conv`
* finish `proll`
* add keyboard shortcuts to `drumseq` and other "bigger" abstractions.
* update `snd~` so that you can also index the sound by samples if the index is above 1.
* finish `looper~`
* replace `drumseq` with the new `drumseq2`
* finish `grain~` and `granular~`
* remove a lot of the stuff in "fx", since a lot of it either sucks or isn't even original material.
* delete `Adder~`, `Adder4~`, and `Adder_voice~`
* move `master` to ctrl
* make an "examples" folder full of better examples instead of cramming as many abstractions as possible into crappy "demos"
* rename `scroll~` to something more descriptive
* finish `tb303~` (add accent function, perhaps improve GUI further)
* make more synths (finish `hoover~`)

Here are some things i'd like to be able to do, but can't (due to either bugs/missing features in Pure Data, or just my lack of knowledge):

* make `keyonchg`, `keyonoff`, etc work properly (pd's `keyname`, `key`, `keyup`, etc, all detect from keyboard "repeat" events rather than actual physical keypresses or releases)
  * actually, this is probably because i'm using X, and X sucks. can't wait for wayland!
* remove `span~` (pd's `pan~` object would need to accept an argument for this to happen)
* make `kfilename` (and all abstractions that use it) able to handle filenames with spaces (should be possible in pd 0.44)

Here are a few ideas i have:

* make a bunch of abstractions for "patterns" based off of SuperCollider's pattern library.
* make `cline` (controllable line using `mc` and keyboard shortcuts or messages)
  * make `o~` and the like use `cline` for the volume controls

Help files still need to be written for:

ctrl:
* `cb`
* `inputn`
* `input`
* `ispigot~`
* `ispigot`
* `kbdm`
* `keynum`
* `keyonchg`
* `keyonoff`
* `keyrow`
* `kfilename`
* `mcb`
* `mck`
* `m-client`
* `mcl`
* `mc`
* `mct`
* `mono`
* `monos`
* `mspigot`
* `mstr`
* `nems`
* `numlock`
* `polys`
* `router`
* `sndsel`
* `sswitcher~`
* `switcher~`
* `switcher`

fx:
* `autocap~`
* `bitflip~`
* `cfilter~`
* `chaospad~`
* `chorus~`
* `comp~`
* `cvol~`
* `delay~`
* `dist1~`
* `dist2~`
* `envdelay~`
* `expspect~`
* `flange~`
* `flanger~`
* `gate~`
* `gater~`
* `hardgate~`
* `icomb~`
* `idelayorama~`
* `ifilter~`
* `ifv~`
* `imoog~`
* `isvf~`
* `kaoss`
* `mcomb~`
* `mfv~`
* `mmf~`
* `phaser~`
* `phaserr~`
* `pingpong~`
* `rateshift2~`
* `rateshifter~`
* `rateshift~`
* `reverb~`
* `sdly~`
* `skip~`
* `soft~`
* `sqtremolo~`
* `svff~`

gen:
* `analog~`
* `fluid~`
* `grain~`
* `granular~`
* `irsong~`
* `noisef~`
* `playsf~`
* `pm~`
* `psndm~`
* `psndp~`
* `random~`
* `randomsong~`
* `rec~`
* `recp~`
* `recsnd~`
* `saw~`
* `sine~`
* `sndcf~`
* `sndcl~`
* `sndcm~`
* `sndd~`
* `snds~`
* `srec~`
* `timestretch~`

math:
* `atc~`
* `atc`
* `atr~`
* `atr`
* `cta~`
* `cta`
* `ctr~`
* `kinv~`
* `kinv`
* `minv`
* `mrange`
* `num`
* `rangem`
* `rrange`
* `rtr`
* `transposer`

seq:
* `adsr~`
* `adsr`
* `amap`
* `anaseq`
* `beat~`
* `boxseq`
* `bpma`
* `bpmm2`
* `bpmm`
* `dust`
* `edger~`
* `ft`
* `iadsr~`
* `ilist`
* `listman`
* `lmap`
* `ometro`
* `pattseq`
* `pb`
* `pmap`
* `queue`
* `sbox`
* `seqfill`
* `srush`
* `taptempo`
* `td~`
* `tmap`
* `tracker`
* `unmap`
* `vslz`

synths:
* `Adder4~`
* `Adder~`
* `Adder_voice~`
* `fmFeedback~`
* `kick1~`
* `kick2~`
* `snare1~`
* `snare2~`
* `tb303~`

utils:
* `autosend`
* `browser`
* `chars`
* `e`
* `hue_to_rgb`
* `itimer`
* `ktimer`
* `limit~`
* `list-find-1`
* `list-replacer`
* `lists`
* `list-without`
* `marquee`
* `mp3conv`
* `o~`
* `parser`
* `*+~`
* `po~`
* `porta~`
* `qtabwrite`
* `qtimer`
* `quote`
* `rporta~`
* `so~`
* `spacesym`
* `span~`
* `sreceive~`
* `ssend~`

repository: miguelzcruz/pd-puredata-vanilla-patches

repo_name: miguelzcruz/pd-puredata-vanilla-patches


text:
# Example Moesif Integration for React Boilerplate

[React Boilerplate](https://github.com/react-boilerplate/react-boilerplate) is a popular template for getting started quickly with a new
single page app (SPA), it supports a lot of features.

[Moesif](https://www.moesif.com) is an API analytics and monitoring platform. [Moesif-browser-js](https://github.com/Moesif/moesif-browser-js) is a SDK that
allows you to capture all the API calls make by your Single Page App from inside the browser, and send to Moesif for analysis and tracking.

This is an example with Moesif integrated.

## Steps to create this example

You can follow these steps to add Moesif into your app based on react-boilerplate.

- Followed React Boilerplate's setup instructions to clone the repo and set up the repo.
  - `git clone --depth=1 https://github.com/react-boilerplate/react-boilerplate.git react-boilerplate-moesif-example`
  - `npm run setup`
- Edit `app/index.html` file to add Moesif between the `head` tags.
  ```html
  <script<EMAIL_ADDRESS>
  <script type="text/javascript">
    var options = {
      applicationId: 'Your Moesif application id'
      // add other option here.
    };

    // for options see below.
    moesif.init(options);

    // this starts the capturing of the data.
    moesif.start();
  </script>

  ```
Your Moesif Application Id can be found in the [_Moesif Portal_](https://www.moesif.com/).
After signing up for a Moesif account, your Moesif Application Id will be displayed during the onboarding steps.

You can always find your Moesif Application Id at any time by logging
into the [_Moesif Portal_](https://www.moesif.com/), click on the top right menu,
and then clicking _Installation_.

- Add a simple test component to verify API calls are captured. (Optional step)
  - Added `app/Containers/App/testSendingApi.js`
  - Since this tester tests with both superagent and axios to sending APIs. `npm install -S superagent axios`.
  - imported `testingSendingApi.js` component and added to `app/Containers/App/index.js` and removed Header and Footer components.
  ```javascript
  import TestSendingApi from './testSendingApi';

  // inside render method:
  return (
   <TestSendingApi />
  );
  //
  ```

## Run this example

- Same as instructed in react-boilerplate. `npm run start`
- Click on the button to sent few example Api requests from the browser. It sends to 'jsonplaceholder', a mock API server.
- Log into your Moesif account and check that data is captured.

## Notes on Server Side Rendering

Often react is setup with server side rendering, including this boilerplate can be configured to do server side rendering. Just
be aware if you setup server side rendering, `moesif-browser-js` will not initiate correctly if started on the server side.
Usually for server side rendering setup, you have to initiate inside a `componentDidMount` life cycle method to ensure that the
code is run on the client side.

Assuming you do not use server side rendering, another option is to add Moesif to the entry point for client side: `app/app.js`.

```javascript
// Option 2 for moesif, add to the entry point for client side code.

import moesif from 'moesif-browser-js';
const options = {
  applicationId:
    'your application id here',
  // add other option here.
};

// if you set up server side rendering, you must do the following two method inside a componentDidMount lifecyle method.
// probably in the top most react component.
moesif.init(options);
// this starts the capturing of the data.
moesif.start();
```

## Note on [create-react-app](https://github.com/facebook/create-react-app)

If you are using Facebook's `create-react-app` tool to setup your initial boilerplate code
for a react app.

For simple setup/integration with Moesif, The best place to initiate Moesif is inside.
`/public/index.html`, which is the same as `app/index.html` of react boilerplate in this repo.

repository: Moesif/moesif-react-boilerplate-example

repo_name: Moesif/moesif-react-boilerplate-example


text:
# GitHub Actions with Node.js

> How to use and develop a GitHub Actions workflow using Node.js

_With [GitHub Actions](https://github.com/features/actions) you can automate **your** workflow from idea to production._
_Focus on what matters: **code**_

Actions can be written in any language, but we will take a closer look in how to write our workflow using Node.js and interact with the full GitHub API.

## License [![license](https://img.shields.io/github/license/sencha-community-days/sencha-community-days-action.svg)](https://github.com/sencha-community-days/sencha-community-days-action/blob/master/license)

MIT © [Stefan Stölzle](https://github.com/stoe)

repository: stoe/github-actions-workshop

gha_language: HCL

repo_name: stoe/github-actions-workshop


text:
# Account data callbacks

Account data callbacks allow module developers to react to changes of the account data
of local users. Account data callbacks can be registered using the module API's
`register_account_data_callbacks` method.

## Callbacks

The available account data callbacks are:

### `on_account_data_updated`

_First introduced in Synapse v1.57.0_

```python
async def on_account_data_updated(
    user_id: str,
    room_id: Optional[str],
    account_data_type: str,
    content: "synapse.module_api.JsonDict",
) -> None:
```

Called after user's account data has been updated. The module is given the
Matrix ID of the user whose account data is changing, the room ID the data is associated
with, the type associated with the change, as well as the new content. If the account
data is not associated with a specific room, then the room ID is `None`.

This callback is triggered when new account data is added or when the data associated with
a given type (and optionally room) changes. This includes deletion, since in Matrix,
deleting account data consists of replacing the data associated with a given type
(and optionally room) with an empty dictionary (`{}`).

Note that this doesn't trigger when changing the tags associated with a room, as these are
processed separately by Synapse.

If multiple modules implement this callback, Synapse runs them all in order.

## Example

The example below is a module that implements the `on_account_data_updated` callback, and
sends an event to an audit room when a user changes their account data.

```python
import json
import attr
from typing import Any, Dict, Optional

from synapse.module_api import JsonDict, ModuleApi
from synapse.module_api.errors import ConfigError

@attr.s(auto_attribs=True)
class CustomAccountDataConfig:
    audit_room: str
    sender: str

class CustomAccountDataModule:
    def __init__(self, config: CustomAccountDataConfig, api: ModuleApi):
        self.api = api
        self.config = config

        self.api.register_account_data_callbacks(
            on_account_data_updated=self.log_new_account_data,
        )

    @staticmethod
    def parse_config(config: Dict[str, Any]) -> CustomAccountDataConfig:
        def check_in_config(param: str):
            if param not in config:
                raise ConfigError(f"'{param}' is required")

        check_in_config("audit_room")
        check_in_config("sender")

        return CustomAccountDataConfig(
            audit_room=config["audit_room"],
            sender=config["sender"],
        )

    async def log_new_account_data(
        self,
        user_id: str,
        room_id: Optional[str],
        account_data_type: str,
        content: JsonDict,
    ) -> None:
        content_raw = json.dumps(content)
        msg_content = f"{user_id} has changed their account data for type {account_data_type} to: {content_raw}"

        if room_id is not None:
            msg_content += f" (in room {room_id})"

        await self.api.create_and_send_event_into_room(
            {
                "room_id": self.config.audit_room,
                "sender": self.config.sender,
                "type": "m.room.message",
                "content": {
                    "msgtype": "m.text",
                    "body": msg_content
                }
            }
        )
```

repository: matrix-org/synapse

repo_name: matrix-org/synapse


text:
292\. Nim Game

Easy

You are playing the following Nim Game with your friend:

*   Initially, there is a heap of stones on the table.
*   You and your friend will alternate taking turns, and **you go first**.
*   On each turn, the person whose turn it is will remove 1 to 3 stones from the heap.
*   The one who removes the last stone is the winner.

Given `n`, the number of stones in the heap, return `true` _if you can win the game assuming both you and your friend play optimally, otherwise return_ `false`.

**Example 1:**

**Input:** n = 4

**Output:** false

**Explanation:**

    These are the possible outcomes:
    1. You remove 1 stone. Your friend removes 3 stones, including the last stone. Your friend wins.
    2. You remove 2 stones. Your friend removes 2 stones, including the last stone. Your friend wins.
    3. You remove 3 stones. Your friend removes the last stone. Your friend wins.
    In all outcomes, your friend wins.

**Example 2:**

**Input:** n = 1

**Output:** true

**Example 3:**

**Input:** n = 2

**Output:** true

**Constraints:**

*   1 <= n <= 231 - 1

repository: javadev/LeetCode-in-Java

gha_language: Java

repo_name: javadev/LeetCode-in-Java


text:
---
layout: post
title: "Idli"
date: 2020-06-07 12:00:00 -0500
image: 2020-06-07-idli.jpg
tags: breakfast
categories: main-course
prep-time: 8-10 hours + 10 minutes
cook-time: 10 minutes
total-time: 8-10 hours + 20 minutes
---

Enjoy some authentic idli with sambar and chutney.

#### Makes 30 Idlis

[Source](https://hebbarskitchen.com/idli-recipe-soft-idli-idli-rava/)

#### Ingredients

| Ingredients |  Quantity  |
|:-----------:|:----------:|
|  Urad Daal  |    1 cup   |
|  Idli Rava  |   2 cups   |
|     Salt    | 1 teaspoon |
|     Oil     |  To grease |

## Directions

1. Firstly, in a large bowl soak 1 cup urad dal for 4 hours.
2. Drain off the water and transfer to blender or grinder.
3. Blend to smooth and fluffy batter adding water as required.
4. Transfer the batter to a large bowl. keep aside.
5. Now in another bowl take 2 cup idli rava.
6. Rinse the idli rava with enough water and drain off the water.
7. Repeat this for 2 or 3 times or till water runs clean.
8. Squeeze off water from idli rava and add to urad dal batter.
9. Mix well making sure rava and urad dal are combined well.
10. Now cover and rest in warm place for 8-10 hours or till the batter ferments and doubles.
11. After 8 hours, batter doubles indicating well fermented with air pockets present.
12. Add 1 tsp salt to the batter and mix gently without disturbing the air pockets.
13. Scoop the batter into idli plate greased with oil.
14. Place in steamer and steam for 10 minutes on medium flame or till a toothpick inserted comes out clean.
15. Finally, soft idli recipe are ready to serve along with chutney and sambar.

extension: markdown

gha_language: CSS


text:
# IoT-mobile-sensor-web-dashboard
The web dashboard that displays the sensor data for user activity from a firebase database.

The application connects to a running instance of firebase real time database. The companion mobile app keeps on running
on the mobile app and writes in the cloud database. A listener in the web dashboard receives the changes and then makes the
visualizations appear in Real Time.

### Project Members:
- 15BCE1098 -> Shwetank Babal
- 15BCE1283 -> Kumar Shubham


text:
### Routing

{name: 'vue-router', group: 'ui-components', link: 'https://github.com/vuejs/vue-router) - The official router for Vue.js.
{name: 'vue-router-storage', group: 'ui-components', link: 'https://github.com/ElderJames/vue-router-storage) - Router storage & resolve solution for Vue.js 2 & vue-router 2

### Lazy Load

{name: 'vue-lazyload', group: 'ui-components', link: 'https://github.com/hilongjw/vue-lazyload) - A Vue.js plugin for lazyload your Image or Component in your application.
{name: 'vue-lazy-background-images', group: 'ui-components', link: 'https://github.com/darrynten/vue-lazy-background-images) - Lazy load background images for Vue 2.
{name: 'vue-progressive-image', group: 'ui-components', link: 'https://github.com/MatteoGabriele/vue-progressive-image) - Vue progressive image loading plugin.
{name: 'vue-l-lazyload', group: 'ui-components', link: 'https://github.com/lsycxyj/vue-l-lazyload) - A lazyload plugin for Vue.js v2.x+.
{name: 'vue-lazyload-img', group: 'ui-components', link: 'https://github.com/JALBAA/vue-lazyload-img) - Especially optimized for mobile browser. support V2 & v1.
{name: 'vue-lazy-images', group: 'ui-components', link: 'https://github.com/yyh1102/vue-lazyload-images) - A plugin of lazyload images for Vue 2.x.
{name: 'v-lazy-img', group: 'ui-components', link: 'https://github.com/nkoehring/v-lazy-img) - Tiny (<0.6kb) directive for progressive image loading for Vue 2.
{name: 'vue-clazy-load', group: 'ui-components', link: 'https://github.com/matheusgrieger/vue-clazy-load) - Lightweight transitionable image lazy loading component using IntersecionObserver for Vue 2.
{name: 'vue-lazy-this', group: 'ui-components', link: 'https://github.com/thangman22/vue-lazy-this) - Lazyloading component using Intersection Observer API.
### Pagination

{name: 'vue-paginate', group: 'ui-components', link: 'https://github.com/TahaSh/vue-paginate) - A simple vue.js plugin to paginate data.
{name: 'vue-pagination-2', group: 'ui-components', link: 'https://github.com/matfish2/vue-pagination-2) - Vue.js 2 pagination component.
{name: 'vuejs-uib-pagination', group: 'ui-components', link: 'https://github.com/sant123/vuejs-uib-pagination) - Best and complete pagination plugin for Vue.js. Inspired in Angular Bootstrap Pagination.
{name: 'vuejs-paginate', group: 'ui-components', link: 'https://github.com/lokyoung/vuejs-paginate) - A Vue.js(v2.x+) component for creating pagination.
{name: 'vue-pagination-bootstrap', group: 'ui-components', link: 'https://github.com/brunoseco/vue-pagination-bootstrap) - A Vue.js (1.x & 2.x) server-side paging component with a template based on Bootstrap
{name: 'laravel-vue-semantic-ui-pagination', group: 'ui-components', link: 'https://github.com/vinayakkulkarni/laravel-vue-semantic-ui-pagination) - A Vue.js 2.x pagination used with Laravel & Semantic-UI.

### Animation

{name: 'vue2-animate', group: 'ui-components', link: 'https://github.com/asika32764/vue2-animate) - A Vue.js 2.0 port of Animate.css. For use with Vue's built-in transitions.
{name: 'animated-vue', group: 'ui-components', link: 'https://github.com/radical-dreamers/animated-vue) - A Vue.js 2.x plugin to easily use Animate.css animations as transitions. As easy as <animated-tada>!
{name: 'vue-lottie', group: 'ui-components', link: 'https://github.com/chenqingspring/vue-lottie) - A Vue.js 2.x plugin to render after effects animations based on bodymovin
{name: 'Vueg', group: 'ui-components', link: 'https://github.com/jaweii/vueg) - Make vue-router have a transition effect / 为 webApp 提供转场特效的开源 Vue 插件

### Meta Tags

*Manage meta information in the document head*

{name: 'vue-head', group: 'ui-components', link: 'https://github.com/ktquez/vue-head) - Manage the meta information of the head tag, a simple and easy way.
{name: 'vue-meta', group: 'ui-components', link: 'https://github.com/declandewet/vue-meta) - Manage page meta info in Vue 2.0 components. SSR + Streaming supported.

### Portal

*Move a DOM node to a target DOM node*

{name: 'vue-dom-portal', group: 'ui-components', link: 'https://github.com/calebroseland/vue-dom-portal) - An escape hatch for DOM Elements in Vue.js components.
{name: 'portal-vue', group: 'ui-components', link: 'https://linusborg.github.io/portal-vue) - A Vue Plugin to render your component's template anywhere in the DOM (Works on the virtualDOM level, doesn't move nodes within the DOM)

### Filters

{name: 'vue2-filters', group: 'ui-components', link: 'https://github.com/freearhey/vue2-filters) - A collection of standard filters Vue 1.* adapted for use in Vue 2.*.
{name: 'morphling', group: 'ui-components', link: 'https://github.com/jofftiquez/morphling) - A collection of standard and custom filters for Vue 2.
{name: 'vue-currency-filter', group: 'ui-components', link: 'https://github.com/mazipan/vue-currency-filter) - Lightweight and Customizeable Vue 2 Currency Filter.

### SVG

{name: 'vue-svgicon', group: 'ui-components', link: 'https://github.com/MMF-FE/vue-svgicon) - A tool to create svg icon components. (vue 2.x).

### Miscellaneous

{name: 'vue-resource-progressbar-interceptor', group: 'ui-components', link: 'https://github.com/staskjs/vue-resource-progressbar-interceptor) - Interceptor that ties a progressbar to all requests, that it is clear that something is loading.
{name: 'vue-images-loaded', group: 'ui-components', link: 'https://github.com/David-Desmaisons/Vue.ImagesLoaded) - Vue.js 2.0 directive to detect images loading.
{name: 'vue-visible', group: 'ui-components', link: 'https://github.com/javisperez/vue-visible) - A v-visible directive for VueJS (2.x), like v-show but for visibility.
{name: 'vue-resize-sensor', group: 'ui-components', link: 'https://github.com/FranckFreiburger/vue-resize-sensor) - Component to detect container resizing (event-based)
{name: 'v-blur', group: 'ui-components', link: 'https://github.com/ndelvalle/v-blur) - Vue directive to blur an element dynamically
{name: 'vue-async-methods', group: 'ui-components', link: 'https://github.com/mokkabonna/vue-async-methods) - Helper utilities for promise based methods
{name: 'vue-openseadragon', group: 'ui-components', link: 'https://github.com/braceslab/vue-openseadragon) - OpenSeaDragon component for Vue.js (zoom and pan)

### WebGL

{name: 'vue-3d-model', group: 'ui-components', link: 'https://github.com/hujiulong/vue-3d-model) - A 3D model viewer in Vue component.
{name: 'vue-pano', group: 'ui-components', link: 'https://github.com/ChiChou/vue-pano) - A panorama viewer in Vue component.
{name: 'vue-threejs', group: 'ui-components', link: 'https://github.com/fritx/vue-threejs) - Vue bindings for Three.js.
{name: 'VueGL', group: 'ui-components', link: 'https://github.com/vue-gl/vue-gl) - Vue.js components rendering 3D graphics reactively via three.js

### Fullscreen

{name: 'vue-fullscreen', group: 'ui-components', link: 'https://github.com/mirari/vue-fullscreen) - A simple Vue component for fullscreen.

## Utilities

*Utilities not directly related to the UI*

### Typescript

{name: 'vue-typed', group: 'ui-components', link: 'https://github.com/vue-typed/vue-typed) - Sets of ECMAScript / Typescript decorators that helps you write Vue component easily.
{name: 'vue-typescript', group: 'ui-components', link: 'https://github.com/itsFrank/vue-typescript) - Typescript decorators to make vue feel more typescripty.
{name: 'vue-property-decorator', group: 'ui-components', link: 'https://github.com/kaorun343/vue-property-decorator) - Vue.js and Property Decorator.
{name: 'vue-typescript-component', group: 'ui-components', link: 'https://github.com/locoslab/vue-typescript-component) - Decorators to use TypeScript classes as Vue.js 2.0 components.
{name: 'vue-typescript-import-dts', group: 'ui-components', link: 'https://github.com/locoslab/vue-typescript-import-dts) - TypeScript declaration file that allows using 'import' with .vue files.
{name: 'vue-ts-loader', group: 'ui-components', link: 'https://github.com/HerringtonDarkholme/vue-ts-loader) - Type-check your script in your vue-loader.

### HTTP Requests

*Retrieve data over HTTP*

{name: 'vue-resource', group: 'ui-components', link: 'https://github.com/pagekit/vue-resource) - The HTTP client for Vue.js.
{name: 'vue-async-computed', group: 'ui-components', link: 'https://github.com/foxbenjaminfox/vue-async-computed) - Async computed properties for Vue.js.
{name: 'vue-jsonp', group: 'ui-components', link: 'https://github.com/LancerComet/vue-jsonp) - A tiny library for handling JSONP request.
{name: 'v-model', group: 'ui-components', link: 'https://github.com/huanleguang/v-model) - V-Model is a model plugin for Vue.js, like ng-resource.
{name: 'vue-resource-mock', group: 'ui-components', link: 'https://github.com/noru/vue-resource-mock) - A helper to mock your http response, based on vue-resource's interceptor.
{name: 'vue-async-data-2', group: 'ui-components', link: 'https://github.com/kamijin-fanta/vue-async-data) - Async data loading plugin for Vue.js.
{name: 'vue-api-request', group: 'ui-components', link: 'https://github.com/ftgibran/vue-api-request) - A plugin that provides full control on your APIs, making your request simple, fast and easy to implement.

### i18n

*Internationalization / L10n / localization / translation*

{name: 'vue-i18n', group: 'ui-components', link: 'https://github.com/kazupon/vue-i18n) - Internationalization plugin for Vue.js.
{name: 'vue-translate-plugin', group: 'ui-components', link: 'https://github.com/javisperez/vuetranslate) - VueJS plugin for translations.
{name: 'vuex-i18n', group: 'ui-components', link: 'https://github.com/dkfbasel/vuex-i18n) - Localization plugin for vue.js 2.0 using vuex as store.
{name: 'vue-gettext', group: 'ui-components', link: 'https://github.com/Polyconseil/vue-gettext) - Translate your Vue.js applications with gettext.
{name: 'vue-i18n', group: 'ui-components', link: 'https://github.com/MattyRad/vue-i18n) - A small plugin for implementing translations in Vue.js.
{name: 'vue-multilanguage', group: 'ui-components', link: 'https://github.com/leonardovilarinho/vue-multilanguage) - Support many languages in Vue.js 2.
{name: 'vue-ts-locale', group: 'ui-components', link: 'https://github.com/twcapps/vue-ts-locale) - A plugin for implementing translations using Intl in Vue.js 2 with typescript support.
{name: 'vue-i18next', group: 'ui-components', link: 'https://github.com/panter/vue-i18next) - A i18next wrapper to support translations in Vue.js 2.
{name: 'vue-polyglot', group: 'ui-components', link: 'https://github.com/guillaumevincent/vue-polyglot) - Basic translation plugin for Vue.js 2 with async loading.
{name: 'v-localize', group: 'ui-components', link: 'https://github.com/neetjn/v-localize) - Simple localization plugin for
the amazing Vue.js.

### Custom Events

{name: 'vue-events', group: 'ui-components', link: 'https://github.com/cklmercer/vue-events) - Simple event handling for Vue.js.
{name: 'vue-event-handler', group: 'ui-components', link: 'https://github.com/sandeepk01/vue-event-handler) - Event handling plugin for VueJS.
{name: 'vue-event-manager', group: 'ui-components', link: 'https://github.com/pagekit/vue-event-manager) - The global event manager for Vue.js.
{name: 'vue-geb', group: 'ui-components', link: 'https://github.com/vouill/vue-geb) - A global event bus using Observables.
{name: 'vue-bus', group: 'ui-components', link: 'https://github.com/fffixed/vue-bus) - Tiny simple central event bus plugin for Vue.js 2.

### Persistence

*LocalStorage etc.*

{name: 'vue-localstorage', group: 'ui-components', link: 'https://github.com/pinguinjkeke/vue-local-storage) - Vue.js localStorage plugin with types support.
{name: 'vue-ls', group: 'ui-components', link: 'https://github.com/RobinCK/vue-ls) - Vue plugin for work with LocalStorage from Vue context.
{name: 'vue-pouch', group: 'ui-components', link: 'https://github.com/qurateinc/vue-pouch) - Live and reactive bindings for PouchDB. Persist data in IndexedDB and sync with CouchDB.
{name: 'vue-idb', group: 'ui-components', link: 'https://github.com/ddgll/vue-idb) - Lists and huge lists management with IndexedDB (Dexie.js) only or automatically created and extendible vuex modules
{name: 'vuejs-storage', group: 'ui-components', link: 'https://github.com/maple3142/vuejs-storage) - Vue.js and vuex plugin to persistence data with localStorage/sessionStorage.

### State Management

{name: 'vuex', group: 'ui-components', link: 'https://github.com/vuejs/vuex) - Centralized State Management for Vue.js.
{name: 'vue-sync', group: 'ui-components', link: 'https://github.com/buhrmi/vue-sync) - Synchronize Vue State with the Browser URL, Server Backend, and other endpoints.
{name: 'vuelm', group: 'ui-components', link: 'https://github.com/keuller/vuelm) - Lightweight state management inspired by Elm architecture.
{name: 'vue-duo', group: 'ui-components', link: 'https://github.com/haoxins/vue-duo) - A tiny state management for Vue.js.
{name: 'vuez', group: 'ui-components', link: 'https://github.com/markselby9/vuez) - A simple but powerful State Management for Vue.js, with only 2 APIs.
{name: 'vuet', group: 'ui-components', link: 'https://github.com/medevicex/vuet) - Vue.js state management model for Agile Development
{name: 'vue-ya-stash', group: 'ui-components', link: 'https://github.com/qgp9/vue-ya-stash) - Yet Another stash storage with update/patch event emitters simillar with v-bind.sync
{name: 'vue-assign-model', group: 'ui-components', link: 'https://github.com/midnightSuyama/vue-assign-model) - Automatically assign elements value to model for Vue.js.

#### Redux

{name: 'revue', group: 'ui-components', link: 'https://github.com/revue/revue) - Redux binding for Vue.
{name: 'vuedeux', group: 'ui-components', link: 'https://github.com/Vuedeux/vuedeux) - Binding Solutions for Vue & Redux.

#### Mobx

{name: 'movue', group: 'ui-components', link: 'https://github.com/nighca/movue) - Mobx integration for Vue.js.

#### Authentication/Authorization

{name: 'vue-kindergarten', group: 'ui-components', link: 'https://github.com/JiriChara/vue-kindergarten)
{name: 'vue-authenticate', group: 'ui-components', link: 'https://github.com/dgrubelic/vue-authenticate) - Simple Vue.js authentication library for login/register and OAuth (1.0/2.0) authentication

#### Vuex Utilities

{name: 'vuex-persistedstate', group: 'ui-components', link: 'https://github.com/robinvdvleuten/vuex-persistedstate) - Persist Vuex state with localStorage.
{name: 'vuex-plugin-jsdata', group: 'ui-components', link: 'https://github.com/AlexandreBonaventure/vuex-jsdata-plugin) - A plugin for syncing Vuex store with js-data.
{name: 'vuex-local', group: 'ui-components', link: 'https://github.com/ktsn/vuex-local) - Local state management within Vuex.
{name: 'vuex-action', group: 'ui-components', link: 'https://github.com/varHarrie/vuex-action) - Utilities for vuex to easily create and manage actions.
{name: 'vuex-rest-api', group: 'ui-components', link: 'https://github.com/christianmalek/vuex-rest-api) - A Helper utility to simplify the usage of REST APIs with Vuex. Based on axios.
{name: 'vuex-cache', group: 'ui-components', link: 'https://github.com/superwf/vuex-cache) - A Vuex plugin utility to cache action those will make remote request.
{name: 'vuex-persist', group: 'ui-components', link: 'https://github.com/championswimmer/vuex-persist) - A Typescript-ready Vuex plugin to help save the store to localStorage or any custom Storage (that you can configure).
{name: 'vuex-local-state', group: 'ui-components', link: 'https://github.com/biluochun/vuex-localState) - Add 'localState/sessionState' options to vuex. Keep the Vuex state with localStorage.
{name: 'vuex-cli-scaffold', group: 'ui-components', link: 'https://github.com/ndabAP/vuex-cli-scaffold) - Scaffold vuex actions, mutations, getters and the state.
{name: 'vuex-action-reload', group: 'ui-components', link: 'https://github.com/chlab/vuex-action-reload) - A vuex plugin that reloads actions when a condition is met.
{name: 'vuejs-storage', group: 'ui-components', link: 'https://github.com/maple3142/vuejs-storage) - Vue.js and vuex plugin to persistence data with localStorage/sessionStorage.

###### Sync Between Tabs

{name: 'vuex-basement', group: 'ui-components', link: 'https://github.com/RashadSaleh/vuex-basement) - Vuex state persistance and synchronization between tabs/windows.
{name: 'vuex-shared-mutations', group: 'ui-components', link: 'https://github.com/xanf/vuex-shared-mutations) - Share vuex mutations between tabs/windows.

### Concurrency Management

{name: 'vuency', group: 'ui-components', link: 'https://github.com/alidcastano/vuency) - Concurrency management for for Vue.js.

### Code Style

*Improve readability of code*

{name: 'vue-types', group: 'ui-components', link: 'https://github.com/dwightjack/vue-types) - Vue Prop Types definitions.
{name: 'vue-factory', group: 'ui-components', link: 'https://github.com/ye-will/vue-factory) - A simple factory/provider extension for Vue.js, like services in Angular.
{name: 'eslint-plugin-vue', group: 'ui-components', link: 'https://github.com/vuejs/eslint-plugin-vue) - Eslint plugin for Vue.js projects.
{name: 'vue-decorators', group: 'ui-components', link: 'https://github.com/partyka95/vue-decorators) - Decorators for Vue.js (beta).
{name: 'vue-computed-helpers', group: 'ui-components', link: 'https://github.com/michalsnik/vue-computed-helpers) - Computed helpers for Vue.js apps

### CSS

{name: 'vue-bem-cn', group: 'ui-components', link: 'https://github.com/c01nd01r/vue-bem-cn) - Simple BEM class name generator for Vue.JS.
{name: 'vue-css', group: 'ui-components', link: 'https://github.com/NxtChg/pieces/tree/master/js/vue/vue-css) - Vue.js plugin that allows you to bundle CSS with your components.

### Asset Management

*Utilities for building / compiling / bundling / loading assets*

{name: 'vue-script2', group: 'ui-components', link: 'https://github.com/taoeffect/vue-script2) - Standardized, designer-friendly script tag behavior for your Single Page App.
{name: 'vue-loader', group: 'ui-components', link: 'https://github.com/vuejs/vue-loader) - Webpack loader for Vue.js components.
{name: 'vueify', group: 'ui-components', link: 'https://github.com/vuejs/vueify) - Browserify transform for single-file Vue components.
{name: 'vue-compiler', group: 'ui-components', link: 'https://github.com/paulpflug/vue-compiler) - A simple cli wrapper around the vue-component-compiler.
{name: 'vue-brunch', group: 'ui-components', link: 'https://github.com/nblackburn/vue-brunch) - Adds support to Brunch for pre-compiling single file Vue components.
{name: 'poi', group: 'ui-components', link: 'https://github.com/egoist/poi) - Start writing an app with a single .js file, Poi could handle all the development setups for you, no more configuration hell.
{name: 'http-vue-loader', group: 'ui-components', link: 'https://github.com/FranckFreiburger/http-vue-loader) - Load .vue files directly from your html/js without node.js environment nor build step.
{name: 'vue-jsx-hot-loader', group: 'ui-components', link: 'https://github.com/skyrpex/vue-jsx-hot-loader) - Enable HMR for Vue.js components with JSX render functions.

### Page Navigation

{name: 'vue-navigation', group: 'ui-components', link: 'https://github.com/zack24q/vue-navigation) - A page navigation library, record routes and cache pages, like native app navigation. 一个页面导航库，记录路由并缓存页面，像原生APP导航一样。
{name: 'vue-acl', group: 'ui-components', link: 'https://github.com/leonardovilarinho/vue-acl) - Access Control List for VueJS 2.
{name: 'vue-breadcrumbs', group: 'ui-components', link: 'https://github.com/samturrell/vue-breadcrumbs) - Implements simple breadcrumb functionality with vue-router for both Vue 1.x and Vue 2.x.
{name: 'vue-2-breadcrumbs', group: 'ui-components', link: 'https://github.com/GitScrum/vue-2-breadcrumbs) - breadcrumb together with vue-router for Vue 2.x. and Bootstrap 4
{name: 'vs-crumbs', group: 'ui-components', link: 'https://github.com/NxtChg/pieces/tree/master/js/vue/vs-crumbs) - Vue breadcrumbs in 40 lines of code that allows nested paths without child views.
{name: 'vue-nav', group: 'ui-components', link: 'https://github.com/nearspears/vue-nav) - Page navigation manager, support all navigation function of native mobile app. 页面导航管理器，支持手机原生应用的所有导航功能。

### Miscellaneous
{name: 'vue-container', group: 'ui-components', link: 'https://github.com/dealloc/vuec) - A simple dependency injection library for Vue 2.
{name: 'vue-super', group: 'ui-components', link: 'https://github.com/rpkilby/vue-super) - A simple plugin to call methods on parent components.
{name: '@skyrpex/props-to-local', group: 'ui-components', link: 'https://github.com/skyrpex/props-to-local) - Vue mixin that maps props to local data.
{name: 'vue-inject', group: 'ui-components', link: 'https://github.com/jpex-js/vue-inject) - Dependency injection for Vue 2.x Components
{name: 'vue-deepset', group: 'ui-components', link: 'https://github.com/bhoriuchi/vue-deepset) - Interact with deeply nested fields in Vue/Vuex objects/state with v-model in Vue 1.x and 2.x
{name: 'vue-gaspard', group: 'ui-components', link: 'https://github.com/lucaperret/vue-gaspard) - DOM helpers plugin for Vue.js

### Web Workers
{name: 'vue-worker', group: 'ui-components', link: 'https://github.com/israelss/vue-worker) - A Vue.js plugin to use webworkers in a simply way.

### JSX
{name: 'jsx-vue-functional', group: 'ui-components', link: 'https://github.com/nickmessing/babel-plugin-jsx-vue-functional) - A Babel plugin that brings syntactic sugar for Vue functional components.
{name: 'jsx-event-modifiers', group: 'ui-components', link: 'https://github.com/nickmessing/babel-plugin-jsx-event-modifiers) - A Babel plugin that adds event modifiers similar to Vue templates to JSX.
{name: 'jsx-v-model', group: 'ui-components', link: 'https://github.com/nickmessing/babel-plugin-jsx-v-model) - A Babel plugin that brings `v-model` to JSX.

### Migration

{name: 'vue-backbone', group: 'ui-components', link: 'https://github.com/mikeapr4/vue-backbone) - Vue.js Plugin to facilitate Backbone integration.

### Web Sockets
{name: 'vue-socket.io', group: 'ui-components', link: 'https://github.com/MetinSeylan/Vue-Socket.io) - Socket.io implementation for vuejs.
{name: 'vue-websocket', group: 'ui-components', link: 'https://github.com/icebob/vue-websocket) - Simple websocket (socket.io) plugin for Vue.js.
{name: 'vue-echo', group: 'ui-components', link: 'https://github.com/happyDemon/vue-echo) - Integrates Laravel Echo into Vue, allows for easy registration of socket events.
{name: 'vue-socket-cluster', group: 'ui-components', link: 'https://github.com/nigeltiany/vue-socket-cluster) - Web Sockets for vue with uws(Micro web sockets) through socket cluster

### Payment

Payment utilities.

###### Stripe

{name: 'vue-stripe-checkout', group: 'ui-components', link: 'https://github.com/jofftiquez/vue-stripe-checkout) A simple vue plugin for Stripe checkout.

## Integrations

*Integrate with services or other frameworks*

{name: 'vue-disqus', group: 'ui-components', link: 'https://github.com/ktquez/vue-disqus) - Vue component to integrate Disqus comments in your application, with support for SPA.
{name: 'vue-youtube-embed', group: 'ui-components', link: 'https://github.com/kaorun343/vue-youtube-embed) - Vue.js and YouTube.
{name: 'vue-add-to-calendar', group: 'ui-components', link: 'https://github.com/nicolasbeauvais/vue-add-to-calendar) - A Vue.js component that provides "Add to Calendar" functionality, works with Vue 2.X.
{name: 'Vue + Meteor', group: 'ui-components', link: 'https://github.com/Akryum/vue-meteor) - Vue first-class integration in Meteor.
{name: 'vue-apollo', group: 'ui-components', link: 'https://github.com/Akryum/vue-apollo) - Apollo/GraphQL integration for VueJS.
{name: 'av-ts', group: 'ui-components', link: 'https://github.com/HerringtonDarkholme/av-ts) - A modern, type-safe, idiomatic Vue binding library.
{name: 'Neutronium', group: 'ui-components', link: 'https://github.com/NeutroniumCore/Neutronium) - Build .NET desktop applications using HTML, CSS and javascript.
{name: 'vue-typescript-jest', group: 'ui-components', link: 'https://github.com/locoslab/vue-typescript-jest) - Jest preprocessor.js for Vue.js components (supporting html, pug, and babel) and TypeScript.
{name: 'vue-jest-utils', group: 'ui-components', link: 'https://github.com/locoslab/vue-jest-utils) - Utilities for testing Vue.js components using Jest.
{name: 'vue-custom-element', group: 'ui-components', link: 'https://github.com/karol-f/vue-custom-element) - Vue Custom Element - Custom Elements for Vue.js.
{name: 'vue-cordova', group: 'ui-components', link: 'https://github.com/kartsims/vue-cordova) - Vue.js plugin for Cordova.
{name: 'vue-wamp', group: 'ui-components', link: 'https://github.com/lajosbencz/vue-wamp) - AutobahnJS wrapper library fo Vue.js.
{name: 'express-vue', group: 'ui-components', link: 'https://github.com/danmademe/express-vue) - Vue rendering engine for Express.js. Use .Vue files as templates using res.render().
{name: 'vue-grecaptcha', group: 'ui-components', link: 'https://github.com/drozdzynski/vue-grecaptcha) - Google reCAPTCHA for VueJS 2
{name: 'vue-recaptcha', group: 'ui-components', link: 'https://github.com/DanSnow/vue-recaptcha) - Google reCAPTCHA component for Vue.js
{name: 'require-vuejs', group: 'ui-components', link: 'https://github.com/edgardleal/require-vuejs) - RequireJS plugin to async and dynamic load and parse .vue components.
{name: 'facebook-login-vuejs', group: 'ui-components', link: 'https://github.com/iliran11/facebook-login-vue.git) - Vue Component for Authenticating your Facebook App and get the benefits of Facebook Login.
{name: 'vuejs/vuefire', group: 'ui-components', link: 'https://github.com/vuejs/vuefire) - Official Firebase Integration for VueJS
{name: 'vuefire', group: 'ui-components', link: 'https://github.com/nigeltiany/vuefire) - Firebase for VueJS and Vuex
{name: 'vue-runkit', group: 'ui-components', link: 'https://github.com/maple3142/vue-runkit) - RunKit Embed for Vue.js
{name: 'vue-youtube', group: 'ui-components', link: 'https://github.com/anteriovieira/vue-youtube) - Provides a simple layer for you to use your imagination while over the [YouTube IFrame Player API', group: 'ui-components', link: 'https://developers.google.com/youtube/iframe_api_reference). (Compatible with SSR)
{name: 'vue-introjs', group: 'ui-components', link: 'https://github.com/alex-oleshkevich/vue-introjs) - Integrates intro.js step-by-step guide and feature introduction with Vue.js [http://introjs.com/', group: 'ui-components', link: 'http://introjs.com/).

###### Google Analytics

{name: 'vue-ua', group: 'ui-components', link: 'https://github.com/ScreamZ/vue-analytics) - Google Universal Analytics support in Vue.js.
{name: 'vue-analytics', group: 'ui-components', link: 'https://github.com/MatteoGabriele/vue-analytics) - Vue plugin for Google Analytics.
{name: 'vue-gtm', group: 'ui-components', link: 'https://github.com/mib200/vue-gtm) - Vue plugin for Google Tag Manager

## Dev Tools

{name: 'vue-dev-server', group: 'ui-components', link: 'https://github.com/paulpflug/vue-dev-server) - A small development server for building `vue` components.
{name: 'vuepack.org', group: 'ui-components', link: 'http://vuepack.org) - A simple page that allows you to select Vue components and download them as a single minified JS file.
{name: 'Storybook', group: 'ui-components', link: 'https://storybook.js.org) - The UI Development Environment. works with v3.2+ later.
{name: 'Font Awesome Finder', group: 'ui-components', link: 'https://chrome.google.com/webstore/detail/font-awesome-icon-finder/kjejboahkcobalmgldloeinebmbomgog) - Chrome extension to search, preview and choose Font Awesome icons and copy the selected icon HTML code & Unicode to clipboard.
{name: 'vue-dummy', group: 'ui-components', link: 'https://github.com/paulcollett/vue-dummy) - Placeholder Text and Dummy Images as a simple `v-dummy` directive

### Inspect

*Inspecting & debugging*

{name: 'Vue.js devtools', group: 'ui-components', link: 'https://github.com/vuejs/vue-devtools) - Chrome devtools extension for debugging Vue.js applications.
{name: 'DejaVue', group: 'ui-components', link: 'https://github.com/MiCottOn/DejaVue) - Visualization and debugging tool built for Vue.js.
{name: 'vue-clicky', group: 'ui-components', link: 'https://github.com/Herteby/vue-clicky) - Right click any component to show info about it in the console.
{name: 'vuejs-logger', group: 'ui-components', link: 'https://github.com/justinkames/vuejs-logger) - Provides customizable logging functionality for Vue.js.
{name: 'vue-bugsnag', group: 'ui-components', link: 'https://github.com/ankurk91/vue-bugsnag) - Vue.js plugin for [bugsnag', group: 'ui-components', link: 'https://www.bugsnag.com/) error reporting

### Docs

*Create documentation*

{name: 'vue-markdown-loader', group: 'ui-components', link: 'https://github.com/QingWei-Li/vue-markdown-loader) - Convert Markdown file to Vue Component.
{name: 'vue-play', group: 'ui-components', link: 'https://github.com/vue-play/vue-play) - A minimalistic framework for demonstrating your Vue components.
{name: 'vue-styleguide-generator', group: 'ui-components', link: 'https://github.com/shershen08/vue-styleguide-generator) - React inspired style guide generator for Vue.js.
{name: 'CheatSheet', group: 'ui-components', link: 'https://vuejs-tips.github.io/cheatsheet) - Complete Interactive API.
{name: 'propdoc', group: 'ui-components', link: 'https://github.com/propellant/doctor) - A single component that provides simple documentation of Vue.js components/props.
{name: 'Vuex CheatSheet', group: 'ui-components', link: 'https://vuejs-tips.github.io/vuex-cheatsheet) - Complete Interactive Vuex API.
{name: 'vue-styleguidist', group: 'ui-components', link: 'https://github.com/vue-styleguidist/vue-styleguidist) - A style guide generator for Vue components with a living style guide.
### Test

{name: 'avoriaz', group: 'ui-components', link: 'https://github.com/eddyerburgh/avoriaz) - A Vue.js testing utility library.
{name: 'vue-container', group: 'ui-components', link: 'https://github.com/dealloc/vuec) - A simple dependency injection library for Vue 2.
{name: 'vuenit', group: 'ui-components', link: 'https://github.com/jackmellis/vuenit) - Utilities for testing Vue components and directives.
{name: 'vue-unit', group: 'ui-components', link: 'https://github.com/wrseward/vue-unit) - A library for Vue.js that makes it easier to create and unit test components.
{name: 'vue-a2b', group: 'ui-components', link: 'https://github.com/fromAtoB/vue-a2b) - A library for Split Testing with Vue.js. Highly configurable and tiny (1.2k gzipped).
{name: 'vue-test-utils', group: 'ui-components', link: 'https://github.com/vuejs/vue-test-utils) - Official utilities for testing Vue components.

###### Browser-less require

*Load Vue components without browser*

{name: 'vuegister', group: 'ui-components', link: 'https://github.com/iatsiuk/vuegister) - Vuegister (an acronym for vue-register) is a require hook for loading of the Vue.js single-file components (or .vue files).
{name: 'vue-node', group: 'ui-components', link: 'https://github.com/knpwrs/vue-node) - Load vue components in node.

## Scaffold

*Scaffold / boilerplate / seed / starter kits / stack ensemble / Yeoman generator*

{name: 'vue-cli', group: 'ui-components', link: 'https://github.com/vuejs/vue-cli) - Simple CLI for scaffolding Vue.js projects.
{name: 'Vue-Django', group: 'ui-components', link: 'https://github.com/NdagiStanley/vue-django) - A boilerplate to set you up in bringing the awesomeness of VueJS into a Django (Python) app.
{name: 'python-vuejs', group: 'ui-components', link: 'https://github.com/cstrap/python-vuejs) - Gluing Python web frameworks and Vue.js with a set of scripts. Basically a `vue-cli` wrapper.
{name: 'generator-vue-plugin', group: 'ui-components', link: 'https://github.com/jeneser/generator-vue-plugin) - Yeoman generator generating vue plugin.
{name: 'vue-seed', group: 'ui-components', link: 'https://github.com/dulin666/vue-seed) - vue-seed is minimal seed for those looking to get up-and-running with Vue
{name: 'nuxt-seed', group: 'ui-components', link: 'https://github.com/dulin666/nuxt-seed) - nuxt-seed is minimal seed for those looking to get up-and-running with Vue and Nuxt
{name: 'rails_vue_melt', group: 'ui-components', link: 'https://github.com/midnightSuyama/rails_vue_melt) - Rails view with webpack=vue optimizer.
{name: 'vue-starter', group: 'ui-components', link: 'https://github.com/rohitkrai03/vue-starter) - A Vue.js starter kit that lets you focus on more programming and less configuration.
{name: 'vue-standalone-component', group: 'ui-components', link: 'https://github.com/InCuca/vue-standalone-component) - A standalone component generator with documentation support using jsdoc and vue-styleguidist

### Client

*Render Vue application in the browser only*

{name: 'Vue Plugin Boilerplate', group: 'ui-components', link: 'https://github.com/kazupon/vue-plugin-boilerplate) - Boilerplate for Vue.js plugin.
{name: 'Bourgeon', group: 'ui-components', link: 'https://github.com/rayfranco/bourgeon) - Bourgeon is an opinionated-featured VueJS 2.0 setup for Webpack.
{name: 'VuePack', group: 'ui-components', link: 'https://github.com/egoist/vuepack) - A modern starter which uses Vue 2, Vuex, Vue-router and Webpack 2 (and even Electron).
{name: 'Vue Settler', group: 'ui-components', link: 'https://github.com/weavingbird/vue-settler) - An opinionated Vue 2.0 SPA Starter.
{name: 'vue-build', group: 'ui-components', link: 'https://github.com/brianvoe/vue-build) - Ultra Simple, Development, Testing and Production Build Cli.
{name: 'Vue Element Starter', group: 'ui-components', link: 'https://github.com/Metnew/vue-element-starter) - Robust Vue 2 starter with Element-UI.
{name: 'vue-multiple-pages', group: 'ui-components', link: 'https://github.com/Plortinus/vue-multiple-pages) - A modern Vue.js multiple pages starter which uses Vue 2, Webpack2, and Element-UI
{name: 'vue-typescript-boilerplate', group: 'ui-components', link: 'https://github.com/twcapps/vue-typescript-boilerplate) - A Vue.js typescript SPA starter with Vue 2, Vue Typed, Vuex, Vue Router and localization
{name: 'vue-tachyons-template', group: 'ui-components', link: 'https://github.com/colorful-tones/vue-tachyons-template) - A Vue 2 project starter template w/ Tachyons, Webpack, and ESLint
{name: 'Vuets', group: 'ui-components', link: 'https://github.com/AkiraLaine/Vuets) - A Vue, TypeScript ready boilerplate using class-style components, vue plugin options, webpack & vue-cli.
{name: 'MMF-FE/vue-typescript', group: 'ui-components', link: 'https://github.com/MMF-FE/vue-typescript) - A vue2.x typescript template.
{name: 'Friendly Vue Starter', group: 'ui-components', link: 'https://github.com/mcongy/friendly-vue-starter) - A full featured Vue.js starter project with GraphQL support via Apollo-client (Vuex, Vue-router, Vue-i18n, Webpack 3, Eslint, Prettier, ...)
{name: 'vue-webpack-typescript', group: 'ui-components', link: 'https://github.com/ducksoupdev/vue-webpack-typescript) - A Vue 2.2 Webpack 2 and Typescript 2 setup with hot reload, unit testing, code coverage, sass and bundling/minification.
{name: 'vue-ts-amd', group: 'ui-components', link: 'https://github.com/Micene09/vue-ts-amd) - A full-featured Vue.js 2 boilerplate using AMD pattern (RequireJS) and Typescript.
{name: '**vue-2-boilerplate**', group: 'ui-components', link: 'https://github.com/petervmeijgaard/vue-2-boilerplate) - Vue 2 boilerplate for developing medium to large single page applications by [petervmeijgaard', group: 'ui-components', link: 'https://github.com/petervmeijgaard/)
{name: 'layout', group: 'ui-components', link: 'https://github.com/ktquez/layout) - A full-featured Webpack + Vue Extend layout
{name: 'layout-simple', group: 'ui-components', link: 'https://github.com/ktquez/layout-simple) - A simple Webpack + Vue Extend layout

### Universal

*Render Vue application to HTML on the server and to the DOM in the browser*

{name: 'SPA Starter Kit', group: 'ui-components', link: 'https://github.com/codecasts/spa-starter-kit) - A highly opinionated starter kit for building Single Page Applications with Laravel and Vue.js.
{name: 'SSR Boilerplate', group: 'ui-components', link: 'https://github.com/fenivana/vue-ssr-boilerplate) - Vue.js Server Side Rendering Boilerplate without Polluting Vuex.
{name: 'neutrino-preset-vue-static', group: 'ui-components', link: 'https://github.com/shyiko/neutrino-preset-vue-static) - A minimalistic starter kit for building static sites using Vue.js.
{name: 'Vueniverse', group: 'ui-components', link: 'https://github.com/rlindskog/vueniverse) - A fully featured, universal Vue template for user-based applications, powered by Nuxt.js and Express.

### Server

*Includes a backend boilerplate*

{name: 'Vuetober', group: 'ui-components', link: 'https://github.com/scottbedard/oc-vuetober-theme) - Single page apps with Laravel, Vue.js, and October CMS.
{name: 'Toucan', group: 'ui-components', link: 'https://github.com/mrellipse/toucan) - Boilerplate for building single page apps. Server is multi-project .Net Core solution designed around SOLID principles. Client is TypeScript 2, Vuejs 2, Vuex 2.
{name: 'vue-server-demo', group: 'ui-components', link: 'https://github.com/fritx/vue-server-demo) - Writing koa server in Vue.

### Electron

{name: 'Electron Vue', group: 'ui-components', link: 'https://github.com/SimulatedGREG/electron-vue) - An Electron & Vue.js quick start boilerplate with vue-cli scaffolding, common Vue plugins, electron-packager/electron-builder, unit/e2e testing, vue-devtools, and webpack.
{name: 'VuePack', group: 'ui-components', link: 'https://github.com/egoist/vuepack) - A modern starter which uses Vue 2, Vuex, Vue-router and Webpack 2 (and even Electron).

### Parts

*Scaffold parts of the app*

{name: 'vue-generator', group: 'ui-components', link: 'https://github.com/hjeti/vue-generator) - A CLI generator for Vue components, views and store modules.
{name: 'vue-component-generator', group: 'ui-components', link: 'https://github.com/lakb248/vue-component-generator) - A generator for vue component, supports Vue1.X and Vue2.X.
{name: 'rapydml_cmp', group: 'ui-components', link: 'https://github.com/valq7711/rapydml_cmp) - Vue-component pythonic generator, built on top of RapydML & RapydScript.

## Runtime

### Command Line / Terminal
{name: 'blessed-vue', group: 'ui-components', link: 'https://github.com/lyonlai/blessed-vue) - A VueJS runtime to let you write command line UI in Vue Edit

repository: mazipan/awesome-vue-list

repo_name: mazipan/awesome-vue-list


text:
# EBIMobileDeviceWatcher

Observe iOS/Android device connect/disconnect on macOS.

## How to use

```
self.watcher = [[EBIMobileDeviceWatcher alloc] init];
self.watcher.delegate = self;
[self.watcher startWatcing];
```

repository: iseebi/EBIMobileDeviceWatcher

gha_language: Objective-C

repo_name: iseebi/EBIMobileDeviceWatcher


text:
![Creator Logo](../images/creatorlogo.png)

# Scope

Creator Kit has been designed to be the building blocks of your IoT solution. Ci40 is the hub and gateway, Clicker boards offer remote sensors and actuators, and FlowM2M services allow data to be sent, stored and visualized.

The kit itself has 5 example projects which are detailed in this guide. Setting them up is easy, and will give you a working IoT system. These examples are open source and therefore useful not only as a learning resource, but also as the starting point for your own project. This covers embedded software for Ci40 and Clicker boards, as well as iOS/Android apps, and FlowM2M services like LWM2M messaging.

## The Example Projects

#### Project 1 - IoT Button
[Click here to view the project page](Project 1.md)

The first project will allow you to press a button on one Clicker board and turn on an LED on the other. This establishes the basics of communication between your devices. Ci40 acts as the hub for this communication.

After getting this project running, browsing through the source code will give you an insight into how to send messages between devices on your network.

repository: CreatorKit/creator-docs

repo_name: CreatorKit/creator-docs


text:
### What are error boundaries in React?

#### Answer

Error boundaries are React components that catch JavaScript errors anywhere in their child component tree, log those errors, and display a fallback UI instead of the component tree that crashed.

Class components become error boundaries if they define either (or both) of the lifecycle methods `static getDerivedStateFromError()` or `componentDidCatch().`

```js
class ErrorBoundary extends React.Component {
  constructor(props) {
    super(props)
    this.state = { hasError: false }
  }

  // Use componentDidCatch to log the error
  componentDidCatch(error, info) {
    // You can also log the error to an error reporting service
    logErrorToMyService(error, info)
  }

  // use getDerivedStateFromError to update state
  static getDerivedStateFromError(error) {
    // Display fallback UI
     return { hasError: true };
  }

  render() {
    if (this.state.hasError) {
      // You can render any custom fallback UI
      return <h1>Something went wrong.</h1>
    }
    return this.props.children
  }
}
```

#### Good to hear

* Error boundaries only catch errors in the components below them in the tree. An error boundary can’t catch an error within itself.

##### Additional links
https://reactjs.org/docs/error-boundaries.html

<!-- tags: (react) -->

<!-- expertise: (2) -->