avirias / grey Goto Github PK
View Code? Open in Web Editor NEWA material designed music player developed in Flutter
License: MIT License
A material designed music player developed in Flutter
License: MIT License
As of today, latest code does not compile.
Appears to be referencing missing fields in Song from flute_music_player library (0.0.6)
error: The getter 'Columns' isn't defined for the class 'Song'. (undefined_getter at [musicplayer] lib/database/database_client.dart:38)
error: The setter 'count' isn't defined for the class 'Song'. (undefined_setter at [musicplayer] lib/database/database_client.dart:53)
error: The getter 'timestamp' isn't defined for the class 'Song'. (undefined_getter at [musicplayer] lib/database/database_client.dart:55)
error: The getter 'isFav' isn't defined for the class 'Song'. (undefined_getter at [musicplayer] lib/database/database_client.dart:58)
Got the following error message:
Error output from CocoaPods:
↳
[!] `<PBXGroup UUID=`97C146E51CF9000F007C117D`>` attempted to initialize an
object with an unknown UUID. `CF3B75C9A7D2FA2A4C99F110` for attribute:
`children`. This can be the result of a merge and the unknown UUID is being
discarded.
[!] Automatically assigning platform `ios` with version `8.0` on target
`Runner` because no platform was specified. Please specify a platform for
this target in your Podfile. See
`https://guides.cocoapods.org/syntax/podfile.html#platform`.
Error running pod install
Error launching application on iPhone 11.
Any idea? Thanks.
I can't install the app.
I have run "flutter upgrade": flutter version = 1.12.12+hf.8,
Dart - latest,
All packages upgraded via "flutter pub upgrade".
Even tried migrating the app to AndroidX, still fails.
DEBUG CONSOLE:(log)
Launching lib\main.dart on ONEPLUS A6000 in debug mode...
[!] Your app isn't using AndroidX.
To avoid potential build failures, you can quickly migrate your app by following the steps on https://goo.gl/CP92wY.
C:\Users\GauravXd.gradle\caches\transforms-1\files-1.1\appcompat-v7-27.1.0.aar\53e70c88da1f458ae08ac47cbf755c38\res\values\values.xml:251:5-69: AAPT: error: resource android:attr/fontVariationSettings not found.
C:\Users\GauravXd.gradle\caches\transforms-1\files-1.1\appcompat-v7-27.1.0.aar\53e70c88da1f458ae08ac47cbf755c38\res\values\values.xml:251:5-69: AAPT: error: resource android:attr/ttcIndex not found.
C:\Users\GauravXd\Downloads\Compressed\Grey1\Grey-master\Grey-master\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:226: error: resource android:attr/fontVariationSettings not found.
C:\Users\GauravXd\Downloads\Compressed\Grey1\Grey-master\Grey-master\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:226: error: resource android:attr/ttcIndex not found.
error: failed linking references.
Failed to execute aapt
com.android.ide.common.process.ProcessException: Failed to execute aapt
at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
at sun.reflect.GeneratedMethodAccessor97.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
... 47 more
Caused by: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
at com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
... 1 more
Caused by: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)
FAILURE: Build failed with an exception.
Failed to execute aapt
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
Get more help at https://help.gradle.org
BUILD FAILED in 17s
AndroidX incompatibilities may have caused this build to fail. Please migrate your app to AndroidX. See https://goo.gl/CP92wY.
Gradle task assembleDebug failed with exit code 1
Exited (sigterm)
Would be great is there was a way for my recent data table to be synchronised across all my devices.
Maybe some open simple data storage solution. In order to not have a clash on sync all mutations need to go to a queue.
The onboard storage needs to be indempotent so an insert for an already existing row does not fail. This will happen when the mutation ripples to the device it came from.
You could maybe make the db P2P with no cloud by use webrtc. All devices need a global key so each knows all the others
Anyway just brainstorming ideas.
I'm download and import your project in my Mac and try to run with IPhone X .
Message error.
I try to research found flute_music_player not support IOS.
You have any solution?
{
"resource": "/H:/Flutter Workshop/Github Project/Grey/lib/database/database_client.dart",
"owner": "dart",
"code": {
"value": "undefined_getter",
"target": {
"$mid": 1,
"external": "https://dart.dev/tools/diagnostic-messages#undefined_getter",
"path": "/tools/diagnostic-messages",
"scheme": "https",
"authority": "dart.dev",
"fragment": "undefined_getter"
}
},
"severity": 8,
"message": "The getter 'Columns' isn't defined for the type 'Song'.\nTry importing the library that defines 'Columns', correcting the name to the name of an existing getter, or defining a getter or field named 'Columns'.",
"source": "dart",
"startLineNumber": 38,
"startColumn": 67,
"endLineNumber": 38,
"endColumn": 74,
"tags": []
}
Cannot run the app and there where is the the package flute_music_player no file song.timestamp, song.count etc
hello, I just cloned your repo and want to run it but it gives me exceptions seems like you changed a lot of things in flute_plugin song class, if you can share that code too, it'll be very helpful.
pod install
Analyzing dependencies
[!] No podspec found for `flute_music_player` in `.symlinks/plugins/flute_music_player/ios`
[!] `<PBXGroup UUID=`97C146E51CF9000F007C117D`>` attempted to initialize an object with an unknown UUID. `CF3B75C9A7D2FA2A4C99F110` for attribute: `children`. This can be the result of a merge and the unknown UUID is being discarded.
[!] Automatically assigning platform `iOS` with version `8.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
gradle-wrapper.properties
#Tue Apr 23 05:24:54 BRT 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
build.gradle
dependencies {
classpath 'com.android.tools.build:gradle:3.4.0'
}
What can I do.
build environments are:
Flutter 0.5.1 • channel beta • https://github.com/flutter/flutter.git
Framework • revision c7ea3ca377 (5 months ago) • 2018-05-29 21:07:33 +0200
Engine • revision 1ed25ca7b7
Tools • Dart 2.0.0-dev.58.0.flutter-f981f09760
compiler message: lib/database/database_client.dart:37:67: Error: Getter not found: 'Columns'.
compiler message: List<Map> results2 = await _db.query("songs", columns: Song.Columns);
compiler message: ^^^^^^^
compiler message: lib/database/database_client.dart:51:18: Error: The getter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'count'.
compiler message: if (song.count == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:52:16: Error: The setter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'count'.
compiler message: song.count = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:54:18: Error: The getter 'timestamp' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'timestamp'.
compiler message: if (song.timestamp == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:55:16: Error: The setter 'timestamp' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'timestamp'.
compiler message: song.timestamp = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:57:18: Error: The getter 'isFav' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'isFav'.
compiler message: if (song.isFav == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:58:16: Error: The setter 'isFav' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'isFav'.
compiler message: song.isFav = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:60:68: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: if (!songs3.contains(song)) await _db.insert("songs", song.toMap());
compiler message: ^
compiler message: lib/database/database_client.dart:69:14: Error: The getter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'count'.
compiler message: if (song.count == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:70:12: Error: The setter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'count'.
compiler message: song.count = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:72:14: Error: The getter 'timestamp' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'timestamp'.
compiler message: if (song.timestamp == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:73:12: Error: The setter 'timestamp' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'timestamp'.
compiler message: song.timestamp = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:75:14: Error: The getter 'isFav' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'isFav'.
compiler message: if (song.isFav == null) {
compiler message: ^
compiler message: lib/database/database_client.dart:76:12: Error: The setter 'isFav' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'isFav'.
compiler message: song.isFav = 0;
compiler message: ^
compiler message: lib/database/database_client.dart:83:43: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: id = await _db.insert("songs", song.toMap());
compiler message: ^
compiler message: lib/database/database_client.dart:87:33: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: .update("songs", song.toMap(), where: "id= ?", whereArgs: [song.id]);
compiler message: ^
compiler message: lib/database/database_client.dart:111:48: Error: Getter not found: 'Columns'.
compiler message: await _db.query("songs", columns: Song.Columns, orderBy: "title");
compiler message: ^^^^^^^
compiler message: lib/database/database_client.dart:203:45: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: id = await _db.insert("recents", song.toMap());
compiler message: ^
compiler message: lib/database/database_client.dart:206:40: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: await _db.update("recents", song.toMap(),
compiler message: ^
compiler message: lib/database/database_client.dart:274:43: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: id = await _db.insert("songs", song.toMap());
compiler message: ^
compiler message: lib/database/database_client.dart:278:33: Error: The method 'toMap' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing method, or defining a method named 'toMap'.
compiler message: .update("songs", song.toMap(), where: "id= ?", whereArgs: [song.id]);
compiler message: ^
compiler message: lib/musichome.dart:262:18: Error: Method not found: 'CircularNotchedRectangle'.
compiler message: shape: CircularNotchedRectangle(),
compiler message: ^^^^^^^^^^^^^^^^^^^^^^^^
compiler message: lib/musichome.dart:262:11: Error: No named parameter with the name 'shape'.
compiler message: shape: CircularNotchedRectangle(),
compiler message: ^^^^^
compiler message: file:///D:/dev/flutter/packages/flutter/lib/src/material/bottom_app_bar.dart:45:9: Context: Found this candidate, but the arguments don't match.
compiler message: const BottomAppBar({
compiler message: ^
compiler message: lib/pages/now_playing.dart:126:10: Error: The setter 'timestamp' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'timestamp'.
compiler message: song.timestamp = new DateTime.now().millisecondsSinceEpoch;
compiler message: ^
compiler message: lib/pages/now_playing.dart:127:14: Error: The getter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'count'.
compiler message: if (song.count == null) {
compiler message: ^
compiler message: lib/pages/now_playing.dart:128:12: Error: The setter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'count'.
compiler message: song.count = 0;
compiler message: ^
compiler message: lib/pages/now_playing.dart:130:12: Error: The getter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'count'.
compiler message: song.count++;
compiler message: ^
compiler message: lib/pages/now_playing.dart:130:12: Error: The setter 'count' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing setter, or defining a setter or field named 'count'.
compiler message: song.count++;
compiler message: ^
compiler message: lib/pages/now_playing.dart:133:18: Error: The getter 'isFav' isn't defined for the class '#lib1::Song'.
compiler message: Try correcting the name to the name of an existing getter, or defining a getter or field named 'isFav'.
compiler message: isfav = song.isFav;
compiler message: ^
Compiler failed on D:\temp\flutter\Grey-0.2.12\lib\main.dart
FAILURE: Build failed with an exception.
* Where:
Script 'D:\dev\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 435
* What went wrong:
Execution failed for task ':app:flutterBuildDebug'.
> Process 'command 'D:\dev\flutter\bin\flutter.bat'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
* Get more help at https://help.gradle.org
BUILD FAILED in 16s
Finished with error: Gradle build failed: 1
I cloned this repository and run pub get.
But some problem still show in the terminal.
Maybe something with the code.
The getter 'Columns' isn't defined for the class 'Song'.
Try importing the library that defines 'Columns', correcting the name to the name of an existing getter, or defining a getter or field named 'Columns'.
class Song {
int id;
String artist;
String title;
String album;
int albumId;
int duration;
String uri;
String albumArt;
Song(this.id, this.artist, this.title, this.album, this.albumId,
this.duration, this.uri, this.albumArt);
Song.fromMap(Map m) {
id = m["id"];
artist = m["artist"];
title = m["title"];
album = m["album"];
albumId = m["albumId"];
duration = m["duration"];
uri = m["uri"];
albumArt = m["albumArt"];
}
}
When playing most of the songs, it gives me this exception.
When I tried developing a music player app with flutter, I had the same issue but removed it by casting the songs var ( which is returned from await MusicFinder.allSongs(); ) to Song class.
I wanted to suggest that you do the same, but then I tried to remove the casting and stick to ( new List.from(songs); ) as before, and it didn't give me this exception anymore, don't know why.
so now I don't actually know what is causing the exception, but you can try my solution and tell me the results, and your conclusions.
If I close NOW PLAYING page ,the next song will not play,how to solve it..?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.