Giter VIP home page Giter VIP logo

retroarcher-plex's People

Contributors

dependabot[bot] avatar lizardbyte-bot avatar reenignearcher avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

retroarcher-plex's Issues

Improve RetroArch history section

Is your feature request related to a problem or just thought of something cool? Please describe.
RetroArch does not display thumbnails in history of items played from CLI

Describe the solution you'd like
RetroArch should display the thumbnails.

Describe alternatives you've considered
For each item in content_history.lpl file look in each <system_name>.lpl file and match the path (split by # for archives). If it matches replace the item in the content_history.lpl with that of what's in the <system_name>.lpl file. Rewrite the content_history.lpl file.

Additional context
https://www.reddit.com/r/RetroArch/comments/l8okd6/boxart_in_history_for_games_run_from_command_line/?utm_source=share&utm_medium=web2x&context=3

Add ability to use Launchbox database for metadata

Is your feature request related to a problem or just thought of something cool? Please describe.
A user on Discord requested the ability to use Launchbox database for metadata.

Describe the solution you'd like
The metadata (for platforms) is stored in LaunchBox\Data\Platforms\*.xml
The metadata (for playlists eg Doom) is stored in LaunchBox\Data\Playlists\*.xml

There is also a full metadata stored here: LaunchBox\Metadata\Metadata.xml

The images are stored in LaunchBox\Images\*

Theme music is stoed in `LaunchBox\Music*'

Theme videos are stored in LaunchBox\Videos\* ... use them as game specific "pre-rolls"?

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Have an option for each type of LaunchBox data.

  • Metadata
  • Images
  • Music
  • Videos (as pre-roll)
  • Videos (as extra)

[POSSIBLE BUG] Roms inside folders

Describe the bug
Roms inside folders may behave a little differently during scanning and/or matching.

Expected behavior
Testing needed. We can using DOOM folder (PRBOOM) as an example which would need .wad files.

Use the folder name as the ROM name or have user rename wad files?

romType inside dPlatformMapping dictionary is intended to help handle this. 0 means standard rom file, 1 means folder rom.

Add PS4/PS5 games to library

Is your feature request related to a problem or just thought of something cool? Please describe.
PS4 and PS5 are able to be remote streamed to mobile devices and Windows PC. Let's try to integrate into RetroArcher.

Describe the solution you'd like
Link RetroArcher to a playstation and/or sony account.

A list of purchased games can be seen at this url (https://library.playstation.com/recently-purchased) after the user is logged in.

This home assistant integration (https://www.home-assistant.io/integrations/ps4/) is able to launch playstation apps and games. Let's use it as reference. They also collect the games as they are normally launched; however I think it's better to just get the full list directly from the website.

This is a game page example (https://store.playstation.com/en-us/product/UP0002-CUSA08829_00-CODWARZONE000001)... I don't actually have a playstation linked to my account... Does the page have a start game button if the console is linked?

Here is the Remote play app on android (https://play.google.com/store/apps/details?id=com.playstation.remoteplay&hl=en_US&gl=US)... I don't know if it works on Android TV (probably need to sideload it)

Windows download and other information available here (https://www.playstation.com/en-us/remote-play/)

Improve game streaming options in Plex plug-in settings

Is your feature request related to a problem or just thought of something cool? Please describe.
Get machine uuid and app id automatically.

Describe the solution you'd like
The machine uuid can be gotten from this url. http://localhost:47989/serverinfo This will work for any game stream implementation (Nvidia, Sunshine, Open-Stream, etc, etc.)

A temporary method to get the app id... It can be found in these documents for nvidia.

Look for Title=RetroArcher in these files. Then grab the next AppId=xxxxxxxxxxxx
C:\ProgramData\NVIDIA Corporation\nvstreamersvr\nvstreamsvcOld.log
C:\ProgramData\NVIDIA Corporation\nvstreamersvr\nvstreamsvcCurrent.log

Look for Title=RetroArcher in these files. Then look for <AppTitle>RetroArcher</AppTitle>. Then grab the next <ID>xxxxxxxxx</ID>
C:\ProgramData\NVIDIA Corporation\nvstreamersvr\nssOld.log
C:\ProgramData\NVIDIA Corporation\nvstreamersvr\nssCurrent.log

Additional context
The app id can probably be gotten from this url; however authentication is required. This would probably be better than parsing the logs, but will need to reverse engineer moonlight to use this method and probably need assistance as well. http://localhost:47989/applist

Tried finding where this file is hosted from locally but couldn't.

Add Screenscraper.fr for metadata

Is your feature request related to a problem or just thought of something cool? Please describe.
Add Screenscraper.fr for metadata

Additional context
https://translate.google.com/translate?hl=en&sl=fr&tl=en&u=https://www.screenscraper.fr/webapi.php?alpha=0&numpage=0&langue=en

We can search by rom hash, I believe

Limited to a few calls at once depending on user credentials. Need a way to tell Plex how many requests are active before starting a new call, as plex can make several searches and updates simultaneously.

[BUG] Start videos

Describe the bug
If the start video is changed RetroArcher will not generate a new video.

Additional context
At start of script hash each start video and create a dictionary.

At start of each directory scan, check the system video hash against a saved json file. If it matches then skip generating (assuming the rom already existed). If it doesn't match create a new video for every rom found.

Save the dictionary over the old saved json file (after scanning is 100% complete)

Add client play as alternative to game streaming

Is your feature request related to a problem or just thought of something cool? Please describe.
Some users do want to game stream and would prefer to play locally on each client.

Describe the solution you'd like
Use ADB to transfer the below to and from server:

  • rom
  • game save (is this dependent on core?)
  • overlays
  • artwork
  • configs (would this work, different configs for different clients is likely)

Obviously transfer to client when game is played from Plex.

When to transfer back to server?

How to launch RetroArch on android with specific core and rom?

Hash rom file before starting emulator

If hard drive isn't spun up desktop of server will show on Moonlight client briefly before emulator is started.

Rom path is found in this line:
https://github.com/ReenigneArcher/RetroArcher.bundle/blob/5a356ad8cdaaa15ffed7355d41f15848d003e54c/Contents/Code/retroarcher/retroarcher.py#L311

Emulator starts in this line:
https://github.com/ReenigneArcher/RetroArcher.bundle/blob/5a356ad8cdaaa15ffed7355d41f15848d003e54c/Contents/Code/retroarcher/retroarcher.py#L363

Should hash the file after L311 to initiate a hard drive spin up and locate the file. A partial hash should be sufficient.

[BUG] Scanner doesn't allow new games to be played until scanning is 100% finished

Describe the bug
New games cannot be played while scanner is still running. (The json file isn't written until the end)

To Reproduce
Steps to reproduce the behavior:

  1. Scan new games
  2. Wait for plex to add them
  3. Try to play
  4. The game isn't in the json database yet

Expected behavior
Be able to play the game right away

Screenshots
n/a

Server (please complete the following information):

  • OS: Windows
  • Architecture: 64 bit
  • Version: n/a

Client(please complete the following information if applicable):

  • Device: Nvidia Shield TV
  • OS: Android 9
  • App: Moonlight
  • App Version: 9.8.1
  • Connection: Ethernet 1GB/s

Gamepad(please complete the following information if applicable):

  • Manufacturer: Microsoft
  • Type: Xbox One S/X
  • Connection: Bluetooth

Additional context
Add any other context about the problem here.

Extras don't work

Describe the bug
Extras from youtube will not play

To Reproduce
Steps to reproduce the behavior:

  1. Play extra from any device
  2. Get error s1001

Expected behavior
Extras should play

Additional context
The agent is using a youtube Service plugin provided by plex. The plugin is no longer functional.

Trailer Addict has a Service that plays extras from their site. Could we replicate this somehow for YouTube?

Other option is to save each extra locally (yuck) by youtube ID as to not have duplicates at all. Let user specify save directory.

[FEATURE REQUEST] Add ffmpeg settings

Is your feature request related to a problem or just thought of something cool? Please describe.
Add some ffmpeg settings to specify how file is generated

Describe the solution you'd like
These options should be included:

  • encoder (enum list)
  • video length (seconds) ... we will trim the video to this length

These options would be nice: (remove all these from platform mapping table)... could probably get font from Fonts\platform name folder in Resources directory...

  • font size
  • font color
  • font horizontal alignment (left, center, right)
  • font vertical alignment (top, middle, bottom) ... is this a thing?
  • font x position (as percentage)
  • font y position (as percentage)
  • border (bool)
  • border size
  • border transparency

[BUG] Enable all possible retroarch systems

Describe the bug
During testing only Nintendo 64 has been available.

Expected behavior
Before release we need to enable all (or atleast a lot more) of the RetroArch supported systems.

Add Parsec game streaming

Is your feature request related to a problem or just thought of something cool? Please describe.
It would be amazing if RetroArcher worked with remote multiplayer.

Describe the solution you'd like
Parsec could be an option to accomplish this.

Additional context
Windows servers only

Launch Xbox One and Series S/X games through RetroArcher

Is your feature request related to a problem or just thought of something cool? Please describe.
It would be amazing if RetroArcher could launch Xbox One/Series S/X games.

Describe the solution you'd like
List and launch xbox one games (apps optional) in RetroArcher. Give the option to get posters from console or from standard agent database. See if it's possible to get game metadata from console or Microsoft Store.

For android clients would need to start xbox game stream through official xbox app.

Describe alternatives you've considered
The new xbox integration for Home Assistant can list and start games/apps on an xbox console.

Additional context
This is related to #2

Screenshots from HomeAssistant integration
image
image
image

Add requirements.txt

  • Add requirements.txt
  • Modify readme so users know how to install the requirements
  • Remove modules from \Contents\Libraries\Modules ... remove entire folder
  • Remove sys.path.append(paths['retroarcherModulesDir']) from retroarcher.py
  • Probably can also remove sys.path.append(paths['agentModulesDir']) from retroarcher.py

Add Steam Link game streaming

Is your feature request related to a problem or just thought of something cool? Please describe.
Steam Link support chord combinations, maybe we can use it for a RetroArcher client.

Describe the solution you'd like
Add Steam Link as game stream client app. Can we have app intents and launch directly to a specific game? Do we need app intents or just launch Steam in big picture mode on the server?

Additional context
Windows and Linux servers!

Xbox One/Series (S/X) as client

Is your feature request related to a problem or just thought of something cool? Please describe.
Could it be possible to use the Xbox One Plex app to initiate RetroArcher?

Describe the solution you'd like
Game stream on Xbox One from Plex server.

Describe alternatives you've considered
The new xbox integration for Home Assistant can list and start games/apps on an xbox console. Using the Microsoft Wireless Display Adapter app and maybe the AirServer Xbox Edition app, it could be possible to game stream by mirroring the servers display to the console.

Could switch back to Plex app automatically once game session ended (user exits emulator or rdp session ends).

Additional context
The Wireless Display app does support game pad passthrough. I don't know if the AirServer app supports this or not.

Add AMD Re-Live game streaming

Is your feature request related to a problem or just thought of something cool? Please describe.
Moonlight won't work with AMD GPUs.

Describe the solution you'd like
Use AMD Re-Live as client app. Need to get an AMD GPU for testing and see if we can use app intents to launch the "game" we want directly.

Additional context
Fairly small user base for AMD GPUs, but would still like to support.
https://www.reddit.com/r/RetroArcher/comments/l6f6ey/what_gpu_are_you_using/?utm_source=share&utm_medium=web2x&context=3

Remove or replace Plex generated poster and art

Plex says they don't want to display an empty image, or default image...

https://forums.plex.tv/t/how-can-i-really-actually-disable-video-thumbnails/141641/6

https://www.reddit.com/r/PleX/comments/47wfqc/is_there_a_way_to_prevent_plex_from_generating_a/

One possible solution is to TRY putting our own generic image with the video and see if Plex still tries to generate one.

Another could be to use PlexAPI and delete the last image in poster and art... not sure if it's possible or if Plex will just try to generate it again and again.

And another option could be to use PlexAPI to REPLACE the files generated by Plex. This seems feasible!

Game stream using Debian/Ubuntu Linux

Is your feature request related to a problem or just thought of something cool? Please describe.
Add game stream support for Debian/Ubuntu Linux

Describe the solution you'd like
If GeForce Experience is working on Linux we can use that, otherwise Sunshine may be an option.

Additional context
Large Linux user base. Would like to include this for sure.
https://www.reddit.com/r/RetroArcher/comments/l6f505/where_is_your_server_installed/?utm_source=share&utm_medium=web2x&context=3

Multi Plex user environment

Is your feature request related to a problem or just thought of something cool? Please describe.
Separate certain retroarch aspects depending on user. (game saves, re-map files for example)

Describe the solution you'd like
Separate common folders from user specific folders.

User specific folders/files would be:

  • game saves
  • re-map files
  • content_history.lpl
  • ???

[FEATURE REQUEST] Add documention

Is your feature request related to a problem or just thought of something cool? Please describe.
Need to develop clear instructions for using this plugin.

Describe the solution you'd like
Start with instructions for server setup.

  • Plex Media Server... (just link to this)
  • GeForce Experience / Sunshine (Linux)... (just link to these)... ensure we include adding a custom program
  • Tautulli... (just link to these)
  • Download and install RetroArcher bundle (include easy option to use WebTools)

Then follow with client setup including how to sideload apps.

  • Moonlight... (just link to this)

Then finish configuration.

  • Agent configuration, describing each and every setting.
  • Scan job (scheduled task, cron job, or manual)
  • Tautulli notification setup.

Add RPCS3 emulator

Is your feature request related to a problem or just thought of something cool? Please describe.
Add additional emulator support

Describe the solution you'd like
Include RPCS3 emulator with plugin.

Also include the option for each system to specify a custom path to an emulator instead of using the one included with the plugin. If the path is empty use the one included, else use the one in the path.

Additional context
Need Windows and Linux folder structure.

[FEATURE REQUEST] Alternate name matching and fix match

Is your feature request related to a problem or just thought of something cool? Please describe.
Roms with alternate names, such as region specific names, don't match well with IGDB.

Describe the solution you'd like
Search using the alternate name end point in the api instead of exact matching.

Describe alternatives you've considered
Build a complete rom name dictionary matching each rom name to it's appropriate id on each database. This would take a ton of manpower and be nearly impossible.

[BUG] Scanner is re-encoding videos even when start videos didn't change

Describe the bug
Scanner is re-encoding videos even when start videos didn't change

To Reproduce
Steps to reproduce the behavior:

  1. Scan videos
  2. After scanning completes, scan again
  3. Notice videos being re-encoded.

Expected behavior
Don't re-encode videos that are already encoded (assuming start videos didn't change AND settings didn't change)

Screenshots
n/a

Server (please complete the following information):

  • OS: [e.g. Windows, Ubuntu] Windows 10
  • Architecture [e.g. 32 bit, 64 bit, arm] 64 bit
  • Version [e.g. 20210130]

Client(please complete the following information if applicable):

  • Device: [e.g. Nvidia Shield TV, Bravia TV, Fire Stick 4k, Pixel 3a]
  • OS: [e.g. Android 11]
  • App: [e.g. Moonlight]
  • App Version: [e.g. 9.8.1 (Apps Drawer... Apps/Games/Information]
  • Connection: [e.g. Wireless 2.4 GHz, Wireless 5 GHz, Ethernet 1GB/s]

Gamepad(please complete the following information if applicable):

  • Manufacturer: [e.g. Microsoft, Sony, Logitech]
  • Type: [e.g. Xbox One, Xbox One S/X, Xbox Series X/S, PS3, PS4]
  • Connection: [e.g. USB, Bluetooth, Dongle, WiFi]

Additional context
Add any other context about the problem here.

Improve and fix ADB port scanner

[FEATURE REQUEST] Add theme songs

Is your feature request related to a problem or just thought of something cool? Please describe.
Theme songs from http://gamethemesongs.com/

Describe the solution you'd like
Naming of the songs is terrible on the site and there is not really any way to search by metadata (game name for example). I think a dictionary is required to make this work.

themeSongs = {
    0 : {
        'title' : 'Goldeneye 007 - N64',
        'url' : 'http://blahblahblah/12345'
        'romNames' : ['Nintendo 64\\007 - GoldenEye (Europe)', 'Nintendo 64\\007 - GoldenEye (Japan)', 'Nintendo 64\\007 - GoldenEye (USA)', 'etc', 'etc', 'etc' ]
        },
    1 : {.......},
    2 : etc, etc, etc.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
The entire website is backed up on wayback machine. So we can try to get the url and if we get a bad request then we modify the url to be the wayback machine url.

Add comic book reader to plex

Is your feature request related to a problem or just thought of something cool? Please describe.
The request has been on Plex forum since 2012

Describe the solution you'd like
Add a method for viewing comic books. Could be similar to adding additional emulators. Streaming could stream the computer desktop as long as the reader supports gamepad input (I think most Windows store apps support this). Copy to client could be better if there are good comic readers on Android TV.

Additional context
https://www.reddit.com/r/RetroArcher/comments/l9iz06/ebooks_and_comics/?utm_source=share&utm_medium=web2x&context=3

https://forums.plex.tv/t/plexreader-comics-books-pdfs/26684/840?u=reenignearcher

This will be implemented only after we add support for at least one more emulator (to ensure we have a good structure for adding additional emulators)

We will need a platform start video (similar to marvel movie intro? ... maybe the plex Preroll like this?)

Platform names will be comic_book_reader and e_book_reader (can sort differently and different platform start video)

Comicvine for comic book metadata? https://comicvine.gamespot.com/api/

Books
ISBNdb for book metadata... https://isbndb.com/apidocs/v2
OpenLibrary... https://openlibrary.org/developers/api

Apply dynamic backgrounds in RetroArch

Is your feature request related to a problem or just thought of something cool? Please describe.
Using XMB menu driver in RetroArch it's possible to apply dynamic backgrounds. It would be cool to apply the fanarts of the game launched as the backgrounds.

Describe the solution you'd like
Using PlexAPI we can get the background files. item.arts() according to Blacktwin in PlexAPI discord server

Save the images as these paths inside the RetroArch directory. (check the order, so it appears same as in RetroArch)

  • wallpapers/Explore.png
  • wallpapers/Favorites.png
  • wallpapers/History.png
  • wallpapers/Images.png
  • wallpapers/Import Content.png
  • wallpapers/Main Menu.png
  • wallpapers/Music.png
  • wallpapers/Netplay.png
  • wallpapers/Settings.png
  • wallpapers/Videos.png

If there are not enough arts then reuse them.

Additional context
Add any other context (information, screenshots, related repositories, hyperlinks) about the feature request here.

Potential end result
image
image

[FEATURE REQUEST] Add PleXBMC (Kodi) as client app

Is your feature request related to a problem or just thought of something cool? Please describe.
Add Kodi as a client player for RetroArcher

Describe the solution you'd like
It could be possible to stream to kodi using a kodi plug-in. Not sure if this plug-in actually works (https://github.com/kodi-game/game.moonlight) or what clients it supports...

Kodi should be able to be controlled through http api requests. (On original xbox with xbmc it was possible to launch a program or run shell commands)

[BUG] Licensing

Describe the bug
Need to determine the licensing for this project before opening the repository up to anyone

Preconfigure RetroArch hotkeys

Is your feature request related to a problem or just thought of something cool? Please describe.
Pre-configured hotkeys would be beneficial for users not experiences in setting up retroarch

[FEATURE REQUEST] M3U file generation

Is your feature request related to a problem or just thought of something cool? Please describe.
Multi disk games have always been a hurdle in RetroArch. I believe the best practice solution is to use m3u playlist files.

Describe the solution you'd like
Generate the m3u file automatically for the user. Need to have very well defined logic for this.

For systems specified as multi disk in the platform mapping dictionary.

  • If the rom name contains (Disk or (Disc or etc. etc. create a new list with the name of the rom before the disk number tag.
  • Sort the list so disks appear in order.
  • Write the m3u file (we will end up writing it a few times)... name will exclude the disk number tag
  • Generate the video (it will only generate if it doesn't exist so no need to worry about generating it multiple times)

Describe alternatives you've considered
Force the user to supply their own m3u files.

Additional context
Add any other context (information, screenshots, related repositories, hyperlinks) about the feature request here.

Add Epic Games as platform

Is your feature request related to a problem or just thought of something cool? Please describe.
Adding ability to scan and launch games from PC game stores would be a nice addition.

Describe the solution you'd like
We can possibly use this (https://github.com/derrod/legendary) to tie into Epic Games.

Multiplatform RetroArch directory

Is your feature request related to a problem or just thought of something cool? Please describe.
If we are to include RetroArch we need to include for several platforms.

Describe the solution you'd like
Include folder structure, cores, etc. for each platform (linux, win32, win64)

Separate common folders such as thumbnails, overlays, etc.

List of common folders: (needs lots of testing)

  • assets
  • autoconfig
  • cheats
  • config
  • database
  • downloads
  • info
  • layouts
  • overlays
  • platforms
  • playlists
  • recordings
  • saves
  • screenshots
  • states
  • system
  • thumbnails
  • *.cfg (files in retroarch root folder)

https://www.reddit.com/r/RetroArch/comments/l6et07/cross_platform_retroarch_install/?utm_source=share&utm_medium=web2x&context=3

Scanning needs optimization

Need to improve scanning

Firstly...

  • Need to rename media folder to games
    • This will make it easier to add books, comic books, and other types of media later on

At start of scanning...

  • Check each key in database json.
    • If video no longer exists, delete the key from the database.
    • If rom no longer exists, delete the video if it still exists, then delete the key from the database.

Also...

  • Implement settings that ignore certain strings found in the game name.
    • If a rom is found to match these settings we need to see if it's already in the database... if so we need to delete the video, and delete the key from the database.

Auto configure tautulli notifier

Is your feature request related to a problem or just thought of something cool? Please describe.
Instead of the user needing to setup the notification agent in Tautulli, I believe it could be possible to automate this.

Describe the solution you'd like
Use tautulli API to configure the notification agent. Here is a python wrapper for the Tautulli api that should be able to help achieve this task.

Describe alternatives you've considered
None.

Additional context
Add any other context (information, screenshots, related repositories, hyperlinks) about the feature request here.

[BUG] posters and thumbnails

Describe the bug
When a poster on igdb is changed, the new poster is added to plex, but not as the primary.

When any image is removed from igdb, it is not removed from plex.

To Reproduce
Steps to reproduce the behavior:

  1. [e.g. Go to '...']
  2. [e.g. Click on '....']
  3. [e.g. Scroll down to '....']
  4. [e.g. See error]

Expected behavior
Replace the old igdb poster with the new poster (use igdb-poster as the name)

Remove photos removed from igdb (need to add igdb as a prefix in the name, and check if they're all still on the site)

Screenshots
If applicable, add screenshots to help explain your problem.

Server (please complete the following information):

  • OS: [e.g. Windows, Ubuntu]
  • Architecture [e.g. 32 bit, 64 bit, arm]
  • Version [e.g. 20210130]

Client(please complete the following information if applicable):

  • Device: [e.g. Nvidia Shield TV, Bravia TV, Fire Stick 4k, Pixel 3a]
  • OS: [e.g. Android 11]
  • App: [e.g. Moonlight]
  • App Version: [e.g. 9.8.1 (Apps Drawer... Apps/Games/Information]
  • Connection: [e.g. Wireless 2.4 GHz, Wireless 5 GHz, Ethernet 1GB/s]

Gamepad(please complete the following information if applicable):

  • Manufacturer: [e.g. Microsoft, Sony, Logitech]
  • Type: [e.g. Xbox One, Xbox One S/X, Xbox Series X/S, PS3, PS4]
  • Connection: [e.g. USB, Bluetooth, Dongle, WiFi]

Additional context
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.