Hello @threespeak Community Members & Hive Community Members,
With this post, I'll share the development updates & items on which I (@sagarkothari88) was working. Accidentally, OBS decided to pick a different audio device & due to which no audio was captured. You can find updates as follows.
## Setting Up Acela-core
- Acela-Core is a new backend core for decentralized video applications on HIVE.
- It supports both off-chain & on-chain data.
- I (@sagarkothari88) checked it out locally & resolved all the issues he faced.
### Setting up .env & resolving related issues
- To run, you need some of the configs.
- After coordinating with the team, I got the necessary env variables.
- Even after that, I faced some errors due to missing env variables.
- After turning off cluster-related services, I was able to move forward.
### TUSd uploader
- At first, I was unaware & I was running the TUSd instance independently.
- After knowing there was a script already for it, I closed that instance & ran on my own.
- https://github.com/spknetwork/acela-core/blob/main/runTusd.sh
- With that, I had running the TUSd uploader locally
### TUSd Hooks
- Even after running it, It kept throwing errors.
- I created a `data` folder locally & updated `runTusd.sh` as follows.
- It resolved TUSd issues.
- As you can see here, I changed `upload-dir` from `/data` to `./data`
Important Links:
|||
|:-:|:-:|
|[3Speak Linktree](https://linktr.ee/3speak)|[SPK Network Linktree](https://linktr.ee/spknetwork)|
| | | | |
|-|-|-|-|
|[3Speak.tv](https://3speak.tv)| [3Speak Twitter](https://twitter.com/3speakonline) | [3Speak Hive Blog](https://hive.blog/@threespeak) | [3Speak Telegram](https://t.me/threespeak) |
| [3Speak in Spanish](https://peakd.com/@threespeak-es/posts) | [Download Android App](https://play.google.com/store/apps/details?id=tv.threespeak.app) | [Download iOS App](https://apps.apple.com/us/app/3speak/id1614771373) | [Download Desktop App](https://github.com/spknetwork/3Speak-app/releases)
| [Join 3Speak Discord](https://discord.gg/NSFS2VGj83) | [Setup Encoder Node](https://ecency.com/hive-181335/@sagarkothari88/retfajht) | [Vote for SPK Network Proposal](https://peakd.com/hive-112019/@spknetwork/spk-network-funding-proposal-rhnv7e) | [Badge Recipients](https://peakd.com/b/badge-181335/recipients) |
|||
|:-:|:-:|
[](https://apps.apple.com/us/app/3speak/id1614771373) | [](https://play.google.com/store/apps/details?id=tv.threespeak.app)|
### [Vote for 3Speak as Witness](https://vote.hive.uno/@threespeak) - [](https://vote.hive.uno/@threespeak)
### [Vote for Sagarkothari88 as Witness](https://vote.hive.uno/@sagarkothari88) - [](https://vote.hive.uno/@sagarkothari88)
tusd -upload-dir=./data/ \
-base-path="/files" \
-host="127.0.0.1" \
-port="1080" \
-behind-proxy \
--hooks-enabled-events pre-create,post-create,post-finish,post-finish,post-terminate,post-receive \
-max-size 5000000000 \
-hooks-http http://localhost:4569/api/v1/upload/tus-callback
### Other errors
- I also encountered IPFS Cluster issues.
- Those I managed to resolve by coordinating with the teI also encountered some compilation errors & got them fixed locally.
- After all of these, I was all set.

## Learning NestJS
- Acela core is written using the NestJS Framework.
- It's been over a year & I have not learned about NestJS.
- I found a playlist on YouTube to learn NestJS.
- I completed approximately 18 videos from [that playlist](https://www.youtube.com/playlist?list=PLqLR2H326bY6eRNOXJxWQkvKNlzmJQfLj).
- After 18 videos, I started contributing to the Acela-core project.


## Acela-Core - Posting Authority before logging in

- https://github.com/spknetwork/acela-core/pull/8/files.
- Granting JWT Token only if posting authority is found.
- This JWT Token will be used for upvotes, comments, and posts.
- Without posting authority, all of the operations may fail.
- So, it's best to check at the time of login /login_singleton
- It would be the front-end's responsibility to get posting authority first.
- After that front-ends can generate proof & proof of payload & - execute/login_singleton for logging in.

## Acela-Core - Max 5 GB Upload

- We need to ensure that file size is no bigger than 5 GB.
- https://github.com/spknetwork/acela-core/pull/9.
- In `src/services/uploader/uploading.service.ts,` I added an extra check & it then shows an error if the file size is too big.

## New FrontEnd - Video Format
- This will be the third check we'll add to the upload process.
- It makes sure that users are uploading videos in the right format.
- With this, we wish to improve the upload experience.
- This work is in progress.

## Exchanging GQL queries
- Juneroy & I exchanged several GraphQL queries.
- With this, he could implement it on New 3Speak FrontEnd.
- Shared Queries for the following:
- Subscribed feed
- Trending feed
- New feed
- First upload
- Community Feed
- Tags Feed

## What are the next tasks?
- Acela-Core - Fix Upvote API.
- Acela-Core - `create-upload` API failing.
- 3Speak Legacy Studio - Add posting authority using Active Key, which is not working.
- 3Speak Legacy Studio - Connect the account using Active Key, which is not working.
- 3Speak Legacy FrontEnd - 3Speak Twitter handle.
- 3Speak Legacy FrontEnd - Update Twitter Icon.
- New tasks will be assigned based on daily stand-ups.

## Feedback / Info
- Do you want more Info? Please let me know via the comment section.
- Do you have feedback to share? Please use the comment section.
- Please check the above video & share feedback.
---

###