Skip to content

Commit

Permalink
Merge branch 'main' of github.com:software-mansion-labs/react-native-…
Browse files Browse the repository at this point in the history
…audio-api
  • Loading branch information
Maciej Makowski committed Nov 28, 2024
2 parents 2e193a6 + 0490832 commit 2bec6fc
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 81 deletions.
1 change: 1 addition & 0 deletions .github/actions/spelling/allow.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,5 @@ rnaa
tada
vec
rnaa
javac

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ android/keystores/debug.keystore
.turbo/

packages/react-native-audio-api/lib
react-native-audio-api*.tgz

# Android
.kotlin
Expand Down
8 changes: 2 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
<img src="./docs/assets/react-native-audio-api-gh-cover.png?v0.0.1" alt="React Native Audio API" width="100%">

### ⚠️ Early version warning!

This library is at a very early stage of development. There are known performance issues and the library might not yet suitable for real production applications.

### React Native Audio API

`react-native-audio-api` provides system for controlling audio in React Native environment compatible with Web Audio API specification,
Expand Down Expand Up @@ -41,7 +37,7 @@ Our current coverage of Web Audio API specification can be found here: [Web Audi

</div>

The source code for the example application is under the [`/apps/common-app`](./apps/common-app/) directory. If you want to play with the API but don't feel like trying it on a real app, you can run the example project. Check [Example README](./apps/common-example/README.md) for installation instructions.
The source code for the example application is under the [`/apps/common-app`](./apps/common-app/) directory. If you want to play with the API but don't feel like trying it on a real app, you can run the example project. Check [Example README](./apps/fabric-example/README.md) for installation instructions.

## Your feedback

Expand All @@ -63,4 +59,4 @@ This project has been built and is maintained thanks to the support from [Softwa

## react-native-audio-api is created by Software Mansion

Since 2012 [Software Mansion](https://swmansion.com) is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – [Hire us](https://swmansion.com/contact/projects?utm_source=audioapid&utm_medium=readme).
Since 2012 [Software Mansion](https://swmansion.com) is a software agency with experience in building web and mobile apps. We are Core React Native Contributors and experts in dealing with all kinds of React Native issues. We can help you build your next dream product – [Hire us](https://swmansion.com/contact/projects?utm_source=audioapi&utm_medium=readme).
3 changes: 0 additions & 3 deletions apps/common-app/src/examples/DrumMachine/usePlayer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@ export default function usePlayer(options: PlayerOptions) {
playingInstruments.value = getPlayingInstruments();
}

return () => {
audioContext.close();
};
// \/ Shared values are not necessary in deps array
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [isPlaying, setup]);
Expand Down
81 changes: 11 additions & 70 deletions apps/fabric-example/README.md
Original file line number Diff line number Diff line change
@@ -1,79 +1,20 @@
This is a new [**React Native**](https://reactnative.dev) project, bootstrapped using [`@react-native-community/cli`](https://github.com/react-native-community/cli).
# React Native Reanimated example app with Fabric

# Getting Started
## Installing & running application

>**Note**: Make sure you have completed the [React Native - Environment Setup](https://reactnative.dev/docs/environment-setup) instructions till "Creating a new application" step, before proceeding.
Before running application you need to install all dependencies. To do that:

## Step 1: Start the Metro Server
- In project's root directory run `yarn install`
- In FabricExample directory run `yarn install`

First, you will need to start **Metro**, the JavaScript _bundler_ that ships _with_ React Native.
### Android

To start Metro, run the following command from the _root_ of your React Native project:
To run this application on Android you need to have Java 17 active on your computer. You can check which version you are using by running `javac --version`. You can change it by changing `JAVA_HOME` environment variable or in Android Studio settings.

```bash
# using npm
npm start
Then you can run this application by `yarn android` or from Android Studio.

# OR using Yarn
yarn start
```
### iOS

## Step 2: Start your Application
To run on iOS first go to `FabricExample/ios` and run `pod install`. This will install pods for Fabric architecture.

Let Metro Bundler run in its _own_ terminal. Open a _new_ terminal from the _root_ of your React Native project. Run the following command to start your _Android_ or _iOS_ app:

### For Android

```bash
# using npm
npm run android

# OR using Yarn
yarn android
```

### For iOS

```bash
# using npm
npm run ios

# OR using Yarn
yarn ios
```

If everything is set up _correctly_, you should see your new app running in your _Android Emulator_ or _iOS Simulator_ shortly provided you have set up your emulator/simulator correctly.

This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.

## Step 3: Modifying your App

Now that you have successfully run the app, let's modify it.

1. Open `App.tsx` in your text editor of choice and edit some lines.
2. For **Android**: Press the <kbd>R</kbd> key twice or select **"Reload"** from the **Developer Menu** (<kbd>Ctrl</kbd> + <kbd>M</kbd> (on Window and Linux) or <kbd>Cmd ⌘</kbd> + <kbd>M</kbd> (on macOS)) to see your changes!

For **iOS**: Hit <kbd>Cmd ⌘</kbd> + <kbd>R</kbd> in your iOS Simulator to reload the app and see your changes!

## Congratulations! :tada:

You've successfully run and modified your React Native App. :partying_face:

### Now what?

- If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps).
- If you're curious to learn more about React Native, check out the [Introduction to React Native](https://reactnative.dev/docs/getting-started).

# Troubleshooting

If you can't get this to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page.

# Learn More

To learn more about React Native, take a look at the following resources:

- [React Native Website](https://reactnative.dev) - learn more about React Native.
- [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment.
- [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**.
- [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts.
- [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native.
Then in `FabricExample` run `yarn ios` or run application from Xcode.
6 changes: 4 additions & 2 deletions packages/react-native-audio-api/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "react-native-audio-api",
"version": "0.1.0",
"version": "0.2.0",
"description": "react-native-audio-api provides system for controlling audio in React Native environment compatible with Web Audio API specification",
"main": "lib/commonjs/index",
"module": "lib/module/index",
Expand Down Expand Up @@ -45,7 +45,9 @@
"keywords": [
"react-native",
"audio",
"audio-api"
"audio api",
"web audio api",
"react"
],
"repository": {
"type": "git",
Expand Down

0 comments on commit 2bec6fc

Please sign in to comment.