Giter Club home page Giter Club logo

react-native-photos-framework's Issues

Consider allowsCachingHighQualityImages=NO

https://developer.apple.com/reference/photos/phcachingimagemanager/1616959-allowscachinghighqualityimages?language=objc

What is the point in using the cache when displaying single images / few images?

I think it should it be set to NO.

There could be a point of using the cache and having allowsCachingHighQualityImages=YES, for a some view where images are prepared and cached beforehand.

Maybe having NO as default and an method to change it (globally, since it is shared)?

Support for ImageLoader rendering different mime types

Hi there! If I save a .gif to iCloud, getAssets indeed returns a valid photos:// uri and a gif mimeType, which is great... but passing this uri into the Image component doesn't actually render a moving gif. I have confirmed that a network-based gif does render correctly. Is there something that needs to be modified in the image loader? Is there a workaround? Thanks!!

Doesn't show hidden photos?

I'm seeing hidden photos showing up as blank instead of rendering. Is this some sort of permissions issue?

api acess

This is not a GUI-component, it's an API

Any plans to make it available as an API?

Get full resolution image?

Thanks for a great library!

In our use case we first present photo thumbnails in a collection (user can keep scrolling to see all theirs photos), user picks one to preview and then send it. We want to make sure the max resolution image gets sent at that point.

After checking around in this library/RN and apple docs, I think I have understood the following:

  • The size of the Image will determine the targetSize to get from photos. In our case, since the thumbnails are small they get downloaded quickly while scrolling down, even without using the caching option. When going into preview a larger version version of the image gets downloaded, nice!
  • The high quality deliveryMode (which is default), will download a smaller than full resolution image, depending on the Image view component size.
  • Max resolution is downloaded with resizeMode=PHImageRequestOptionsResizeModeNone and targetSize= PHImageManagerMaximumSizewhich RCTImageLoaderRNPhotosFramework sets if size is CGSizeZero, but that is only the case for Image using capInsets (?? according to reloadImage in RCTImageView.m)

Could we add an option to withOptions to support this?

Sporadic Crash

Issue Description

This happens to 0.35% of users in my application. I obtained these statistics using AppSee.

Steps to Reproduce / Code Snippets / Screenshots

Error information:

iPhone 6s
iOS 11.3  Wi-Fi

Terminating app due to an uncaught exception 'RCTFatalException: Exception '*** -[__NSDictionaryM setObject:forKey:]: object cannot be nil (key: title)' was thrown while invoking getAlbumsMany on target RNPFManager with params ( ( { assetCount = exact; fetchOptions = { includeAllBurstAssets = 0; includeHiddenAssets = 0; sortDescriptors = ( { ascending = 1; key = title; } ); }; previewAssets = 1; subType = any; trackChanges = 0; trackInsertsAndDeletes = 0; type = smartAlbum; }, { assetCount = exact; fetchOptions = { includeAllBurstAssets = 0; includeHiddenAssets = 0; sortDescriptors = ( { ascending = 1; key = title; } ); }; previewAssets = 1; subType = any; trackChanges = 0; trackInsertsAndDeletes = 0; type = album; } ), 8570, 8571 ) callstack: ( 0 CoreFoundation 0x0000000184d7eda4 <redacted> + 252 1 libobjc.A.dylib 0x0000000183f385ec objc_exception_throw + 56 2 CoreFoundation 0x0000000184d17750 _CFArgv + 0 3 CoreFoundation 0x0000000184c4cc6c <redacted> + 948 4 Finery 0x0000000104d89954 Finery + 563540 5 Finery 0x0000000104d890f0 Finery + 561392 6 Finery 0x0000000104d88c80 Finery + 560256 7 Finery 0x0000000104d887d4 Finery + 559060 8 Finery 0x0000000104d97a84 Finery + 621188 9 CoreFoundation 0x0000000184d86580 <redacted> + 144 10 CoreFoundation 0x0000000184c65748 <redacted> + 284 11 CoreFoundation 0x0000000184c6a56c <redacted> + 60 12 Finery 0x0000000104f60614 _ZN14RNWebGLContext27jsTypedArrayFreeDeallocatorEPvS0_ + 1601380 13 Finery 0x0000000104fa1450 RCTFBQuickPerformanceLoggerConfigureHooks + 109428 14 Finery 0x0000000104fa11b0 RCTFBQuickPerformanceLoggerConfigureHooks + 108756 15 libdispatch.dylib 0x0000000184670b24 <redacted> + 24 16 libdispatch.dylib 0x0000000184670ae4 <redacted> + 16 17 libdispatch.dylib 0x000000018467aa38 <redacted> + 608 18 libdispatch.dylib 0x000000018467b380 <redacted> + 336 19 libdispatch.dylib 0x000000018467bd4c <redacted> + 340 20 libdispatch.dylib 0x000000018468411c <redacted> + 668 21 libsystem_pthread.dylib 0x00000001849a3e70 _pthread_wqthread + 860 22 libsystem_pthread.dylib 0x00000001849a3b08 start_wqthread + 4 )', reason: 'Exception '*** -[__NSDictionaryM setObject:forKey:]: object cannot be nil (...'

captura de pantalla 2018-08-23 a la s 10 53 12 am



Environment

Base in this issue i'm pointing directly to this commit:
"react-native-photos-framework": "https://github.com/olofd/react-native-photos-framework.git#adaa91d8bd13e93cb18c5884d9fde27228a44ebb",

Environment:
  OS: macOS Sierra 10.12.6
  Node: 8.9.1
  Yarn: 1.3.2
  npm: 5.5.1
  Watchman: 4.7.0
  Xcode: Xcode 9.2 Build version 9C40b
  Android Studio: 3.1 AI-173.4819257

Packages: (wanted => installed)
  react: 16.0.0 => 16.0.0
  react-native: 0.51.0 => 0.51.0

NSSortDescriptor displays unexpected assets when sortDescriptors are sorted by creationDate or modificationDate

I'm trying to list assets in my project in the same way the native photo app displays assets. (Most recent assets first including assets that have been modified)

When I sort assets by creationDate, edited photos do not appear at the top of the list. For example, a photo edited and exported using Adobe Lightroom for iOS appears next to the original photo instead at the top of the list since the createdDate remains the same. I would expect this newly created edited photo to be displayed at the top of my list, but it is still listed next to the original photo since the creationDate property did not change.

I've tried sorting by modificationDate, but this also leaves me with unexpected results since activities like favoriting or un-favoriting a photo changes the modificationDate and moves that asset to the top of the list, which doesn't happen in the native Photos app and is an unexpected behavior for sorting photos.

Just curious to know if you were aware of this issue and if you can think of a fix. This stackoverflow question discusses this issue and provides a possible solution by removing the sortDescriptors to achieve the same sorting as the native Photos app. I tried implementing this solution, which sort of worked, but the assets were sorted oldest to newest instead of my desired functionality of newest to oldest. Can you think of a way to implement this functinoality?

Cheers!

http://stackoverflow.com/questions/31696701/sorting-photos-exactly-like-native-photoapp-using-photokit

How to get video associated with live photo?

Hi

I am trying to get access to the video file that is associated with a live photo. How do I go about this? I've been trying to get a uri for the video file with no success.

Thanks in advance

Can't get this to work with <Video />

Hey! I'd love to use this for picking and showing videos, but I'm currently stuck.

I can use the API to get a list of video assets, but trying to use react-native-video (master or your fork) crashes my app.

Any help or tips would be amazing!! :)

P.S. I tried to get the example app in this repo running, but failed to do so

package.json

	"dependencies": {
		"react": "~15.4.0",
		"react-native": "0.41.2",
		"react-native-photos-framework": "^0.1.1",
		"react-native-video": "git://github.com/olofd/react-native-video.git#react-native-photos-framework",
		...
	}

App

import RNPhotosFramework from 'react-native-photos-framework'
import Video from 'react-native-video'

...

  async componentDidMount() {
    const status = await RNPhotosFramework.requestAuthorization()

    if (status.isAuthorized) {
      const {assets} = await RNPhotosFramework.getAssets({
        startIndex: 0,
        endIndex: 1,
        includeMetadata: true,
        fetchOptions : {
          mediaTypes: ['video'],
          sourceTypes: ['userLibrary', 'cloudShared', 'itunesSynced'],
        }
      })
      this.setState({videos: assets})
    }
  }

...
  render() {
...

            {this.state.videos.map((video, i) => {
              console.log(video.video) // THIS IS UNDEFINED
              // return <Image key={i} source={{uri: video.uri}} style={{width : 100, height : 100}}></Image> // THIS WORKS
              return <Video  //THIS CRASHES
                source={{uri: video.uri}}
                key={i}
                resizeMode='cover'
                muted={false}
              />
            })}

Here's the crash:

screen shot 2017-02-23 at 10 30 46 pm

Unable to save video asset into album

I'm trying to save a video into a specific album, I use similar structure for the images and that works but the videos do not get saved into a album. This is on ios. I get the uri and the album but

if(Platform.OS === 'ios') {
        this.camera
          .capture({ mode: Camera.constants.CaptureMode.video })
          .then(
            (data) => {
              const album = this.state.albumUsed;
              return RNPhotosFramework.createAssets({
                album: album,
                videos: [{
                  uri: data.path
                }],
              })
            .then(() => console.log('Video taken and saved in a album'))})
          .catch((err) => console.log('Video taken error log:' + err));
        this.setState({
          isRecording: true,
        });

In the createasset code below

createAssets(params, onProgress) {
   const images = params.images;
   const videos = params.videos !== undefined ? params.videos.map(videoPropsResolver) : params.videos;
   let media = [];
   if (images && images.length) {
     media = media.concat(images.map(image => ({
       type: 'image',
       source: image
     })));
   }
   if (videos && videos.length) {
     media = media.concat(videos.map(video => ({
       type: 'video',
       source: video
     })));
   }

   const {
     args,
     unsubscribe
   } = this.withUniqueEventListener('onCreateAssetsProgress', {
       media: media,
       albumLocalIdentifier: params.album ?
         params.album.localIdentifier : undefined,
       includeMetadata: params.includeMetadata
     }, onProgress);
   return RNPFManager
     .createAssets(args)
     .then((result) => {
       unsubscribe && this.nativeEventEmitter.removeListener(unsubscribe);
       return result
         .assets
         .map(this.createJsAsset);
     });
 }

I get the media as

isAsset : true
isNetwork:false
type:undefined
uri:"assets-library://asset/asset.mov?id=A226D7D9-07FD-4583-B651-DA2EFBD585C4&ext=mov"

and videos as

isAsset:true
isNetwork:false
type:undefined
uri:"assets-library://asset/asset.mov?id=A226D7D9-07FD-4583-B651-DA2EFBD585C4&ext=mov"

then when runnnig result become com up with assets as empty

result
:
assets:Array(0)
length:0

Am I not using this correctly or should I rather be using RCTCameraRollRNPhotosFrameworkManager.createVideoAsset(videoWithUriProp); and then album.addAssetToAlbum(asset).then((status) => {}); ?

Build fails using RN 0.45.1

I had an existing RN project using 0.43.3 and RNPhotosFramework worked fine. I updated to the latest (0.45.1) and now I cannot build my project unless I comment out line 3 on PHChangeObserver.m shown below.

I also created a new 0.45.1 project and it builds fine up until I add react-native-photos-framework and link it. Here are some screenshots of the issues -

screen shot 2017-06-19 at 6 51 18 pm
image

Deleting an asset from a smart album

Thank you for this awesome library. I am running into an issue deleting an asset from a smart album. I am trying to delete an image from the Screenshots album to be exact. I am getting back this error as a Promise rejection when calling:

album.removeAsset(myAsset)

I am getting back this error:

Error: The operation couldn’t be completed. (Cocoa error -1.)
    at createErrorFromErrorData (NativeModules.js:116)
    at NativeModules.js:79
    at MessageQueue.__invokeCallback (MessageQueue.js:290)
    at MessageQueue.js:127
    at guard (MessageQueue.js:46)
    at MessageQueue.invokeCallbackAndReturnFlushedQueue (MessageQueue.js:126)
    at debuggerWorker.js:71

I googled Cocoa error -1, but I am not sure I found anything helpful.

Any help would be appreciated. Thanks again!

Assets in <Image> sometimes render a placeholder when the dimensions are "wrong"

Hi, I've noticed that sometimes, the size of my images affects if they're rendered at all. For example, giving an image {width: 100, height: 100} works fine, but {width: 75, height: 100} does not work. It renders a JPG placeholder instead. How can I go about fixing this? I noticed the prepareForSizeDisplay param but I am not sure if it will help or how to format it.

Thanks!

Accessing Screenshots album

I am trying to access system 'Screenshot' album (ios 10.3.3.) with the the RNPhotosFramework.getAlbumsByTitle(). It seams I can only acess albums under 'My Albums' heading. How can I acess 'Screenshots'?

PHAssetCollectionSubtypeSmartAlbumLivePhotos Fail to Compile Issue

install the latest version 1.0.3
RN 0.43.3
xcode 8.2.1 8C1002

I have got this error

/.../node_modules/react-native-photos-framework/ios/RNPhotosFramework/RCTConvert+RNPhotosFramework.m:103:77: Use of undeclared identifier 'PHAssetCollectionSubtypeSmartAlbumLivePhotos'; did you mean 'PHAssetCollectionSubtypeSmartAlbumVideos'?

/.../node_modules/react-native-photos-framework/ios/RNPhotosFramework/RCTConvert+RNPhotosFramework.m:103:77: Use of undeclared identifier 'PHAssetCollectionSubtypeSmartAlbumLivePhotos'; did you mean 'PHAssetCollectionSubtypeSmartAlbumVideos'?

How to get MimeType?

I tried using this library today however the asset does not return the MimeType. And neither is it in the extension. I need the mimeType to upload it without using the in-built ajaxHelper.

CreateAssets(): Got memory pressure notification (critical)

Hi,

I try to upload 400 Pictures to the camera roll and after 5 seconds i got the following errors and the app crashed:

RNPhotosFramework.createAssets({
                images : images,
                album : album, 
                includeMetadata : false
            }).then((res) => {
                console.log('done');
            }).catch((err) => {
                console.log(error);
            });
[812:43385] Error: Timeout waiting for response from assetsd in -[PHChangeRequestHelper _generateUUIDIfNecessary:]
[812:43385] [PhotoKit] Timeout waiting for response from assetsd in -[PHChangeRequestHelper _generateUUIDIfNecessary:] (retries 3)
[812:43001] Got memory pressure notification (critical)
Message from debugger: Terminated due to memory issue

The pics are very big and the first 5 pics are uploaded to the camera roll.

Is there anything i can do to avoid that or improve the memory?

Many thanks!

Seems to be missing the function from the readme getAlbumByLocalIdentifier

I got an error trying to use this function from the readme but it seems to not exist. I searched the Repo and was able to find the get by title but not getAlbumByLocalIdentifier. On another note this Repo looks wonderful as the native CameraRoll is a no go. I was building a native solution but after seeing this I am willing to try to help with this. Looks great. Getting ready to test some more.

Asset delete issue - unreocgnized selector sent to instance

If you have an ImageAsset and call the delete function on it you'll receive unreocgnized selector sent to instance.

This is due to the problem with following code -

src/asset.js -

delete() {
  //return NativeApi.deleteAssets([this.localIdentifier]); // WRONG
  return NativeApi.deleteAssets([this]); // RIGHT
}

src/index.js

deleteAssets(assets) {
  return RNPFManager.deleteAssets(assets.map(asset => asset.localIdentifier));
}

If you call RNPhotosFramework.deleteAssets manually with an array of ImageAssets it will work but not if you call the delete function on an individual ImageAsset. I modified src/asset.js to the above and both calls work correctly. I can submit a PR if you would like.

ndefined symbols for architecture x86_64:

after installing and linking I get this error
Undefined symbols for architecture x86_64:
"OBJC_CLASS$_RCTSRWebSocket", referenced from:
objc-class-ref in libReact.a(RCTInspectorPackagerConnection.o)
"OBJC_CLASS$_RCTReconnectingWebSocket", referenced from:
objc-class-ref in libReact.a(RCTPackagerConnection.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Can’t run android after installing lib

After installing lib, I faced with the problem after runing android app, in result I have this error Could not find react-native-photos-framework’s native module. It seems it’s not linked correctly in your xcode-project.. How to resolve this issue? I want to use this lib only for ios, but for android - default CameraRoll from RN. Thanks for any help.
p.s. IOS works fine

prepareForSizeDisplay doesn't work (docs are incorrect)

The docs state that prepareForSizeDisplay takes Rect(width, height) but that's not a thing in JavaScript.

I tried supplying an Object instead but that also doesn't work.

Can the docs be updated with the correct information, because currently prepareForSizeDisplay doesn't seem to be usable.

Fetch random photo(s)

Hi! Is there any (efficient) way of fetching X number of randomly chosen photos using this API?

Unable to resolve module `react/lib/ReactPropTypes`

I'm using RN 0.45.1 and the import ReactPropTypes from 'react/lib/ReactPropTypes' in src/index.js fails. It results in "Module does not exist in the module map..."

The PropTypes module is not used on src/index.js so you can safely comment it out. If PropTypes are needed you can use import ReactPropTypes from 'prop-types'.

Error: Cannot find module 'plist'

When trying to install I'm getting this error during postinstall

Xcode v10.0
react-native v0.57.1

$ npm i --save react-native-photos-framework

> [email protected] postinstall /Users/tommy/Git/noisolation/FamilyFrame/node_modules/react-native-photos-framework
> node install.js

module.js:549
    throw err;
    ^

Error: Cannot find module 'plist'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/tommy/Git/noisolation/FamilyFrame/node_modules/react-native-photos-framework/local-cli/link/ios/copyAssets.js:5:21)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] postinstall: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

build failed

⚠️ ld: object file (/Users/Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(PHAssetsService.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users/Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(RNPFFileDownloader.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users//Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(PHFetchOptionsService.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users//Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(RNPFImageLoader.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users//Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(PHChangeObserver.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users//Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(RNPFUrlRequestHandler.o)) was built for newer iOS version (10.0) than being linked (9.0)
⚠️ ld: object file (/Users//Documents/reactnative/gl/ios/build/glwork/Build/Intermediates/ArchiveIntermediates/gl/BuildProductsPath/Release-iphoneos/libRNPhotosFramework.a(RCTConvert+RNPhotosFramework.o)) was built for newer iOS version (10.0) than being linked (9.0)

❌ ld: symbol(s) not found for architecture arm64

❌ clang: error: linker command failed with exit code 1 (use -v to see invocation)

[21:05:27]: Exit status: 65

RCTImageResizer.h problems

I have been using "react-native-image-resizer" in my project and after I added "react-native-photos-framwork' it won't link because of duplicated symbols.

It looks like you have included most of the ImageResizer code in your project. I have tried to comment out the resizer code and import like this #import <RCTImageResizer/RCTImageResizer.h>
but it seems there is a mismatch in the APIs.

What is the the bes way to move forward? What do you recommend?

Feature Request: requestImageForAsset

Add the requestImageForAsset function of the UIImage component to allow your plugin to access the jpg version of heic images. HEIC is really making developers cry.

Android?

Does this work for android as well?

No meta data returned when calling getAssets

On a fresh project:

RNPhotosFramework.getAssets({
        includeMetaData: true,
        startIndex: 0,
        endIndex: 100,
        fetchOptions : {
          mediaTypes: ['image'],
          sourceTypes: ['userLibrary'],
          sortDescriptors : [
            {
              key: 'creationDate',
              ascending: true,
            }
          ],
        }
      }).then((data) => {
        console.log('FETCHED DATA:',data);
      }, (e) => {
        console.log('ERROR:',e);
      })

Array of ImageAssets are returned, but no creationDate or modificationDate.
NSLog of params in getAssets on iOS native code(RNPFManager.m):

{
    assetDisplayStartToEnd = 1;
    endIndex = 100;
    fetchOptions =     {
        mediaTypes =         (
            image
        );
        sortDescriptors =         (
                        {
                ascending = 1;
                key = creationDate;
            }
        );
        sourceTypes =         (
            userLibrary
        );
    };
    includeMetaData = 1;
    startIndex = 0;
}

..but all the following RCTConvert calls seems to resolve to null, including this:

BOOL includeMetadata = [RCTConvert BOOL:params[@"includeMetadata"]];

My Objective C skills are limited so didn't manage to solve this. Hopefully my javascript call above is correct.
Tested on React Native 0.41.0 (and 0.43.1) using react-native-photos-framework 1.0.1

Unable to install due to incorrect xcodeproj being picked up

My install kept failing with this error on [email protected]:

/Users/chris.rowley/rn-project/node_modules/react-native-photos-framework/install.js:23
    if (!plist.NSPhotoLibraryUsageDescription) {
              ^

TypeError: Cannot read property 'NSPhotoLibraryUsageDescription' of null
    at Object.<anonymous> (/Users/chris.rowley/rn-project/node_modules/react-native-photos-framework/install.js:23:15)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.runMain (module.js:605:10)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:151:9)
    at bootstrap_node.js:542:3

I've done some digging, and the issue seems to be that findProject in react-native-photos-framework/local-cli/core/config/ios/findProject.js takes the first *.pbxproj file it finds... In my case, that was

ios/build/Build/Products/Debug-iphonesimulator/rn-project/LinkingIOS/RCTLinking.xcodeproj

which has no INFOPLIST_FILE field... Removing the ios/build dir fixes the issue, but it'd be great if findProject could be more specific in the file it picks up?

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.