open-index/open-npm huggingface dataset:
npm package: @rbxts/fflag
Description: TypeScript wrapper for Boatbomber's SheetValues FFlag implementation.
Latest version: 1.0.5

# SheetValues

This is a Typescript wrapper for [SheetValues](https://devforum.community/t/sheetvalues-using-google-sheets-for-live-updating-values/364), by BoatBomber. The goal of this package is to provide a typesafe way of accessing FFlag values.

## Example
`fflag-provider.ts`
```typescript
const SPREAD_ID = "Spreadsheet ID";
const FFlagProvider = new FFlagManager(SPREAD_ID);

export = FFlagProvider;
```

`fflag-definitions.ts`
```typescript
export const FFLAG_TEST = new FFlag("SomeTestFFlag", t.boolean, false);
```

`test.server.ts`
```typescript
while (wait(1)) {
    print(FFlagProvider.GetFFlag(FFLAG_TEST));
}
```
npm package: @rbxts/find-up
Description: Find an Instance by walking up ancestors
Author: csqrl
Latest version: 1.1.0

<!-- Project Link References -->

[latest release]: https://github.com/csqrl/find-up/releases/latest
[library url]: https://www.roblox.com/library/7959218626
[npm package]: https://npmjs.com/package/@rbxts/find-up

<!-- Articles -->

[rojo]: https://rojo.space
[wally]: https://github.com/upliftgames/wally
[roblox-ts]: https://roblox-ts.com

<!-- Images -->

[shield gh release]: https://img.shields.io/github/v/release/csqrl/find-up?label=latest+release&style=flat
[shield npm release]: https://img.shields.io/npm/v/@rbxts/find-up?style=flat
[shield wally release]: https://img.shields.io/endpoint?url=https://runkit.io/clockworksquirrel/wally-version-shield/branches/master/csqrl/find-up&color=blue&label=wally&style=flat

# FindUp

[![GitHub release (latest by date)][shield gh release]][latest release]
[![NPM release (latest)][shield npm release]][npm package]
[![Wally release (latest)][shield wally release]][latest release]

Find an Instance by walking up ancestors.

```lua
local humanoid = FindUp(script, "Humanoid", {
    className = "Humanoid",
})

local roact = FindUp(script, "Roact", {
    className = "ModuleScript",
})
```

## Installation

### [Wally][wally]

Add `find-up` to your `wally.toml` and run `wally install`

```toml
# wally.toml
[dependencies]
FindUp = "csqrl/find-up@1.1.0"
```

```sh
$ wally install
```

### [Roblox-TS][roblox-ts]

Install the [`@rbxts/find-up`][npm package] package using npm or yarn.

```sh
$ npm i @rbxts/find-up
$ yarn add @rbxts/find-up
$ pnpm i @rbxts/find-up
```

# Documentation

Documentation can be found at https://csqrl.github.io/find-up.
npm package: @rbxts/fitumi
Description: Fake It 'Till You Make It - A unit testing utility for faking everything from Roblox Instances to custom objects.
Author: Bytebit
Latest version: 1.0.11

# Fake It 'Till You Make It
<p align="center">
	<a href="https://github.com/Bytebit-Org/fitumi/actions">
        <img src="https://github.com/Bytebit-Org/fitumi/workflows/CI/badge.svg" alt="CI status" />
    </a>
	<a href="http://makeapullrequest.com">
		<img src="https://img.shields.io/badge/PRs-welcome-blue.svg" alt="PRs Welcome" />
	</a>
	<a href="https://opensource.org/licenses/MIT">
		<img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="License: MIT" />
	</a>
	<a href="https://discord.gg/QEz3v8y">
		<img src="https://img.shields.io/badge/discord-join-7289DA.svg?logo=discord&longCache=true&style=flat" alt="Discord server" />
	</a>
</p>

Fake It 'Till You Make It, or fitumi, is a Lua faking library intended for helping to create comprehensive unit tests for Lua code bases. While not required, fitumi was designed with Roblox development as the primary use-case. Fitumi's design is inspired in part by [FakeItEasy](https://fakeiteasy.github.io/).

Fitumi comes paired with TypeScript annotation files for easy installation into a roblox-ts project and is published to NPM under the [@rbxts/fitumi](https://www.npmjs.com/package/@rbxts/fitumi) package.

## Installation
### roblox-ts
Simply install to your [roblox-ts](https://roblox-ts.com/) project as follows:
```
npm i @rbxts/fitumi
```

### Wally
[Wally](https://github.com/UpliftGames/wally/) users can install this package by adding the following line to their `Wally.toml` under `[dependencies]`:
```
fitumi = "bytebit/fitumi@1.0.10"
```

Then just run `wally install`.

### From model file
Model files are uploaded to every release as `.rbxmx` files. You can download the file from the [Releases page](https://github.com/Bytebit-Org/fitumi/releases) and load it into your project however you see fit.

### From model asset
New versions of the asset are uploaded with every release. The asset can be added to your Roblox Inventory and then inserted into your Place via Toolbox by getting it [here.](https://www.roblox.com/library/7881397561/fitumi-Package)

## Links
- [API Documentation](DOCUMENTATION.md)

## Example
```lua
local fitumi = require(path.to.fitumi)
local a = fitumi.a

local fakeDependency = a.fake()
a.callTo(fakeDependency["foo"], fakeDependency, fitumi.wildcard):returns("bar")

local targetObject = TargetClass.new(fakeDependency)
targetObject:doSomething()

assert(a.callTo(fakeDependency["foo"], fakeDependency, fitumi.wildcard):didHappen(), "No call to foo happened")
assert(targetObject.fooResult == "bar", "targetObject's foo result does not match provided foo result")
assert(a.writeTo(fakeDependency, "expectedKey", "expectedValue"):didHappen(), "targetObject did not write \"expectedValue\" to \"expectedKey\"")
```
npm package: @rbxts/flamework-di-toolkit
Description: Library that buffs flamework dependency injection system
Author: sumer_real
Latest version: 1.1.0

# 💉 flamework dependency injection toolkit

Library that buffs flamework dependency injection system

# ✒️ Credits
SUMER (discord sumer_real): for creating this library

# 🌠 Install
``npm install @rbxts/flamework-di-toolkit``

# 📚 Documentation

## Inject marker

first thing you need to do is to mark fields you need to inject

```ts
export type Version = string;

export class MyClass {
	@Inject()
	public version: Version;
}
```

## DependencyContainer

this used to inject dependencies

```ts
const container = new DependencyContainer();

container.register<Version>("1.0");  // firstly you need to register all dependencies

print(container.resolve<Version>());  // will output -> 1.0

// there two ways to inject into classes

// first way is to inject into constructed class
const myClass = new MyClass();
container.inject(myClass);

print(myClass.version);  // will output -> 1.0

// second way is to directly inject into constructor, this way is better in case that the class will use dependencies inside constructor
container.injectIntoConstructor(MyClass);

const myClass = new MyClass();
print(myClass.version);  // will output -> 1.0

// also you can register factory method
type Car = { name: string };
container.registerFactory<Car>(() => { name: "best car" });

// you can add or set default resolver, so you can modify dependency injection logic in case dependency isn't registered
container.setDefaultResolver((dependency) => {
	return "1";
});

container.setDefaultResolver((dependency) => {
	return "2";
});  // will replace previous default resolver

container.insertDefaultResolver((dependency) => {
	return undefined;
});  // this will not replace previous default resolver and if your default resolver returns undefined it will give a try for previous resolver
```

## work with flamework
```ts
// in default mode container will not inject flamework dependencies
// so you need to manually enable it
container.enableFlameworkResolver();  // this will set default resolver

// you can inject into services and components using this method
// notice that you need to do that before ignite
Flamework.addPath("src/shared");
Flamework.addPath("src/server");

container.injectIntoFlamework();

Flamework.ignite();
```
npm package: @rbxts/flipper
Description: An animation library for Roblox
Author: Reselim
Latest version: 2.0.1

<p align="center">
	<img src=".github/logo.svg" height="180">
	<br>
	Flipper is an animation library for Roblox based around Motors and Goals.
</p>

# Installation

## Rojo

### 0.6.x+

Add this repository as a submodule into your packages directory. This example assumes the directory is `packages`.

```
git submodule add https://github.com/Reselim/Flipper packages/Flipper
```

### 0.5.x

Copy the `src` folder from this repository into your packages directory.

## npm (for roblox-ts)

Install the [`@rbxts/flipper`](https://www.npmjs.com/package/@rbxts/flipper) package using `npm` or `yarn`.

```
npm i @rbxts/flipper
```

## Without Rojo

Download the latest .rbxm file from [the releases page](https://github.com/Reselim/Flipper/releases) and drag it into studio.

# Usage

## With Roact

This example creates a button that shrinks when pressed.

```lua
local Example = Roact.Component:extend("Example")

function Example:init()
	self.motor = Flipper.SingleMotor.new(0)

	local binding, setBinding = Roact.createBinding(self.motor:getValue())
	self.binding = binding

	self.motor:onStep(setBinding)
end

function Example:render()
	return Roact.createElement("ImageButton", {
		Size = self.binding:map(function(value)
			return UDim2.new(0, 100, 0, 100):Lerp(UDim2.new(0, 80, 0, 80), value)
		end),
		Position = UDim2.new(0.5, 0, 0.5, 0),
		AnchorPoint = Vector2.new(0.5, 0.5),

		[Roact.Event.MouseButton1Down] = function()
			self.motor:setGoal(Flipper.Spring.new(1, {
				frequency = 5,
				dampingRatio = 1
			}))
		end,

		[Roact.Event.MouseButton1Up] = function()
			self.motor:setGoal(Flipper.Spring.new(0, {
				frequency = 4,
				dampingRatio = 0.75
			}))
		end
	})
end

return Example
```

Flipper works wonderfully with Roact on its own, but if you plan on using it for a lot of your components, [roact-flipper](https://github.com/Reselim/roact-flipper) will make that *much* easier.

## Without Roact

Check out the [demo script](test/demo.client.lua) in the test project!

# License

Flipper is licensed in full under the [MIT license](LICENSE). Note that it [contains code](src/Spring.lua) from another author, which is also under the MIT license.
npm package: @rbxts/forge-vfx
Description: Typescript typings for [zilibobi's forge vfx emit module](https://github.com/zilibobi/forge-vfx)
Author: jso
Latest version: 2.2.2

# @rbxts/forge-vfx

Typescript typings for [zilibobi's forge vfx emit module](https://github.com/zilibobi/forge-vfx)