GithubHelp home page GithubHelp logo

malware-dev / mdk-se Goto Github PK

View Code? Open in Web Editor NEW
1.0K 76.0 124.0 3.54 MB

Malware's Development Kit for SE

License: MIT License

C# 99.84% Batchfile 0.01% PowerShell 0.15%
space-engineers mdk ingame-script mdk-se malware-development-kit programmable-block game

mdk-se's People

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  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

mdk-se's Issues

The minifier simply crashes.

Since the minifier uses an assembly which is not strong-named, and the wizard project must be strong-named, I'm in a bit of a bind.

Proposed solutions:

  1. Extract the wizard to its own assembly set, and remove the strong-naming of the VSPackage.
  2. Extract the Minifier to its own executable that doesn't need to be strong-named.

Cannot create new project D:

System.Runtime.InteropServices.COMException (0x80004005): Project unavailable.
at EnvDTE.Project.Save(String FileName)
at Malware.MDKServices.ScriptUpgrades.AnalyzeProject(Project project, ScriptUpgradeAnalysisOptions options)
at Malware.MDKServices.ScriptUpgrades.<>c__DisplayClass13_0.b__1()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Malware.MDKServices.ScriptUpgrades.d__13.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MDK.MDKPackage.d__48.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\MDKPackage.cs:line 260

Tried creating a new project while another windows of VS was open, got this

MDK.vsix Not able to be installed in VS2015 Community Edition

Hi Malware, I tried installing the .vsix file following the steps outlined in you getting started guide (I only got as far as Step 2) when the installer complained that the extension cannot be installed with with the currently VS2015 community installation, please help?

Screenshot:
image

Install log:
`2017/08/13 21:12:12 - Microsoft VSIX Installer
2017/08/13 21:12:12 - -------------------------------------------
2017/08/13 21:12:12 - Initializing Install...
2017/08/13 21:12:12 - Extension Details...
2017/08/13 21:12:12 - Identifier : MDK.Morten Aune Lyrstad.e02b602e-3099-44a5-88c6-cb30cab978f6
2017/08/13 21:12:12 - Name : MDK/SE
2017/08/13 21:12:12 - Author : Morten Aune Lyrstad
2017/08/13 21:12:12 - Version : 0.9.36
2017/08/13 21:12:12 - Description : A toolkit to help with ingame script (programmable block) development for Keen Software House's space sandbox Space Engineers.

Space Engineers is trademarked to Keen Software House. This toolkit is fan-made, and its developer has no relation to Keen Software House.
2017/08/13 21:12:12 - Locale : en-US
2017/08/13 21:12:12 - MoreInfoURL : https://github.com/malware-dev/MDK-SE
2017/08/13 21:12:12 - InstalledByMSI : False
2017/08/13 21:12:12 - SupportedFrameworkVersionRange : [4.6.1,)
2017/08/13 21:12:12 -
2017/08/13 21:12:12 - SignatureState : Unsigned
2017/08/13 21:12:12 - Supported Products :
2017/08/13 21:12:12 - Microsoft.VisualStudio.Community
2017/08/13 21:12:12 - Version : [15.0]
2017/08/13 21:12:12 -
2017/08/13 21:12:12 - References :
2017/08/13 21:12:12 - -------------------------------------------------------
2017/08/13 21:12:12 - Identifier : Microsoft.VisualStudio.MPF.15.0
2017/08/13 21:12:12 - Name : Visual Studio MPF 15.0
2017/08/13 21:12:12 - Version : [15.0]
2017/08/13 21:12:12 - MoreInfoURL :
2017/08/13 21:12:12 - Nested : No
2017/08/13 21:12:12 -
2017/08/13 21:12:12 - Signature Details...
2017/08/13 21:12:12 - Extension is not signed.
2017/08/13 21:12:12 -
2017/08/13 21:12:12 - Searching for applicable products...
2017/08/13 21:12:12 - Found installed product - Microsoft Visual Studio Community 2015
2017/08/13 21:12:12 - Found installed product - Microsoft Visual Studio 2015 Shell (Integrated)
2017/08/13 21:12:12 - Found installed product - Global Location
2017/08/13 21:12:12 - VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.
at VSIXInstaller.App.InitializeInstall(Boolean isRepairSupported)
at VSIXInstaller.App.InitializeInstall()
at System.Threading.Tasks.Task.InnerInvoke()
at System.Threading.Tasks.Task.Execute()`

Using MDK for Mod API?

Perhaps the Mod API is not in your line of interest, but thought I would ask just in case. Would it be possible to introduce another template aimed at the Mod API, with references to relevant libraries, and where the debug feedback could say "The type or member x is prohibited in the Space Engineers Mod API" like it does currently for the In-Game API? Or, would it make things too troublesome, or mess with the point or "target audience" of the kit? Would it be pointless to use the MDK just for availability feedback?

Of course, the minifier wouldn't work, nor would deployment, hmm. Maybe in the Script Options, if a particular library is referenced, or if a "Mod API"-option has been ticked, then one would be unable to highlight or select the minifer and deployment options.

Visual Studio sometimes generates an invalid path to whitelist.cache

Some times, it seems after installing a new version, Visual Studio will generate an erroneous path for the whitelist.cache file in a new scripting project.

Workaround: Reloading the project should kick in the update checker, prompting you to allow the update of the project. It should work after that.

Deployment Class Order

When deploying with a shared Project and Utility Classes.

Items are added in alphabetical order So any customize variables, Program(), Save(), Main(string argument) gets further down in the code instead of at the front.

May be user training.

Deployment File Order (specification)

It should be possible to manually specify the order of files as they get merged together with the deployment builder.

This is a split from issue #17 by Elfiwolfe.

Deploy Rejected - A deployment is currently in progress.

If the script (previously deployed) is open in another program like Notepad++, and you try to deploy, it won't deploy, which is fine, but the script cannot be attempted to be deployed again until Visual Studio is restarted. Or, there is some other reason behind why it is trying to deploy indefinitely. Try opening the script up in Notepad++, deploy, and if it works, wait a couple of seconds, and try to deploy again. At this point it should be stuck in deploying state.

Detect updates from GitHub?

I'm wondering whether I should autodetect when an update release is uploaded to GitHub, and push a notification to VS's notification area...

Plugin System

Allow for plugins to do pre- and postprocessing of the code during deployment. The preprocessors work on the individual code files, the postprocessors work on the merged script file.

[bug] Cannot create new project - parameter "path" is null

Value cannot be null
Parameter name: path

Visual Studio Community 2017 throws this error when I try to create any project using MDK-SE. It creates 2 directories (of name of the project)

  • SelectedDirectory
    • [NameOfProject]
      - [NameOfProject]

Thats all, no .sln files, no .cs files, no .csproj files, nothing. It's the first time I use MDK-SE, what should I do? Downloaded Gold Release 1.0

Minifyer skips some variables when written below Main()

I suppose this behavior is expected if it minifies from top-to-bottom, going through A to Z. I tried to see if I could balance characters written and instruction count by writing a sort of library of strings that has to be repeated throughout the script. Since I found it messy to keep the library above Program(), I moved it below Main(). As a result, not all of the variables got abbreviated upon deploy.

string
            _TARGET = "Target",
            _RANGE = "Range",
            _METEORS = "Meteors",
            _MISSILES = "Missiles",
            _SMALLSHIPS = "SmallShips",
            _LARGESHIPS = "LargeShips",
            _CHARACTERS = "Characters",
            _STATIONS = "Stations",
            _NEUTRALS = "Neutrals",
            _ON = "_On",
            _OFF = "_Off",
            _ONOFF = "OnOff",
            _ATMOSPHERIC = "atmospheric",
            _HYDROGEN = "hydrogen",
            _ION = "ion";

string y="Target",_RANGE="Range",_METEORS="Meteors",_MISSILES="Missiles",C="SmallShips",D="LargeShips",E="Characters",F="Stations",G="Neutrals",H="_On",_OFF="_Off",J="OnOff",K="atmospheric",L="hydrogen",M="ion";

When I moved the collection of strings back up to the top, above Program(), it was no longer an issue.

Easiest solution: User writes variables at the top where they are expected to be found procedurally.

Crash with 0.9.37-RC

When I open the solution of the attached project, VS stopped working
devenv.exe
System.nullReferenceExpection
'Object reference not set to an instance of an object.'

Debugger says

  •   $exception	{"Object reference not set to an instance of an object."}	System.NullReferenceException
    

Output says
An unhandled exception of type 'System.NullReferenceException' occurred in mscorlib.dll
Object reference not set to an instance of an object.

Oh Noez (deploying minified script).

As requested, here is the log. Will also attempt repro.

MDK.Build.BuildException: Error loading script projects from C:\Users\saett\OneDrive\Documents\Visual Studio 2017\Projects\MDK Nav\MDK Nav.sln ---> System.InvalidOperationException: The operation cannot be completed because a build is already in progress.
at Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(String resourceName, Object[] args)
at Microsoft.Build.Execution.BuildManager.BeginBuild(BuildParameters parameters)
at Microsoft.CodeAnalysis.MSBuild.ProjectFile.BuildAsync(BuildManager buildManager, BuildParameters parameters, BuildRequestData requestData, CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.MSBuild.ProjectFile.d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.CodeAnalysis.MSBuild.ProjectFile.d__14.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.CodeAnalysis.CSharp.CSharpProjectFileLoader.CSharpProjectFile.d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Microsoft.CodeAnalysis.MSBuild.MSBuildProjectLoader.d__23.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.CodeAnalysis.MSBuild.MSBuildProjectLoader.d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.CodeAnalysis.MSBuild.MSBuildProjectLoader.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.CodeAnalysis.MSBuild.MSBuildWorkspace.d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MDK.Build.BuildModule.d__30.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\Build\BuildModule.cs:line 116
--- End of inner exception stack trace ---
at MDK.Build.BuildModule.d__30.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\Build\BuildModule.cs:line 123
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at MDK.Build.BuildModule.<b__29_0>d.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\Build\BuildModule.cs:line 102
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at MDK.MDKPackage.d__49.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\MDKPackage.cs:line 359

Correction Wiki / The Grid Terminal System

Just a little Copy&Paste slip in the sample code of The Grid Terminal System and Subclasses :

public class SomeUsefulSubclass
{
    Program _program;

    public AirlockSystem(Program program) 
    {
        _program = program;
    }

I believe the constructor should be named SomeUsefulSubclass instead of AirlockSystem.
Nevertheless the documentation is awesome! Same valid for the MDK! Thankyou.

Type 'string' prohibited

The error "type or member 'string' is prohibited in Space Engineers" appeared after I had used Ctrl+ X (cut & paste) on two methods that were seemingly unrelated to the method in which the error appeared. Seemed to me that IntelliSense wants data types ("var") to be more specifically defined ("string").

string[] ss = { "stuff", "stuff" };
// "var" was underlined red as an error
foreach (var s in ss) {
	// do
}

Note: I have Program.cs, Program1.cs, etc in the same IngameScript project, which may be improper usage of the MDK. The error(s) also disappeared as soon as I backspaced and rewrote the "r" in one of the "var"s. There were no crash. I view this bug as irrelevant, but for all I know it may be the cause for other issues, which is why I'm mentioning it.

Ps. I've never used GitHub before so I apologize if I'm not following GitHub bug report customs.

Using classes from separate files breaks the final script

When a class is used from a separate file (no matter if from the same project or from a Shared Library), the final script is broken because it contains an invalid closing bracket between program part and extension part and the last closing bracket of the extension class gets removed.

I found this location in source code, which is propably the root cause? :-)

if (extensionPart.EndsWith("}"))
script = $"{programPart}\n\n}}\n\n{extensionPart.Substring(0, extensionPart.Length - 1)}";

The "Deploy MDK Script" button is gone with 0.9.38

After updating to 0.9.38, the deploy button in the context menu of the project (as well as some other buttons in the Tools menu) is gone. After going back to 0.9.37, all buttons where back again. Visual Studio version is 15.2.

Edit: Forgot to mention: Maybee this is related to #27? But closing and reloading solution did not fix the issue.

Update window gives mixed information

In the 1.0 release 2017/08/12, The Tools-->MDK menu has two options: "Blueprint Manager" and "Check for Updates."

Clicking "Check for Updates" opens a dialogue box with the header "New MDK Version Available," but the text in the dialogue explains "There's no new version available for download at this time." (Should the header change?)

Furthermore, the grey text that follows advises me to "Go to Tools | Options | MDK | SE to set your options for update checks" ... but as explained above, there are only two menu options: "Blueprint Manager" and "Check for Updates." I do not have "SE" as an available option!

Build multilingual game translation content

Request to add identification xml file inside the text help document content, the establishment of multi-language xml document, so that the game can not identify the translation after the update content. (Such as: Sandbox.Common.xml inside the

Ignores broadcasts sent by neutral and enemy antenna </ summary>, can identify / summary> between the content, build the multi-language translation game help documentation)

Failed to create project: "path" cannot be null

I cannot create an Ingame Script project with the extension. Every time I confirm Visual Studio says the parameter "path" cannot be null, therefore making the directory for the project but leaving nothing inside.

Some warnings are given in the Activity Log when I open the Create Project dialog, if related to this issue:

615 | Warning | Found templates with duplicate template ids at "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\CSharp\Windows\2052\ClassLibrary_WorkerRole.vstemplate" and "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\CSharp\Windows\2052\ClassLibrary\csClassLibrary.vstemplate" 616 | Warning | Found templates with duplicate template ids at "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\CSharp\2052\SharedProject\SharedProject.vstemplate" and "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\CSharp\Windows\2052\SharedProject\SharedProject.vstemplate" 617 | Warning | Found templates with duplicate template ids at "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\VisualBasic\Windows\2052\ClassLibrary_WorkerRole.vstemplate" and "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\ProjectTemplates\VisualBasic\Windows\2052\ClassLibrary\classlibrary.vstemplate" 618 | Warning | Error! Cannot access file (C:\Users\[USERNAME]\AppData\Roaming\Microsoft\VisualStudio\15.0_3f523700\ProjectTemplatesCache\cache.bin).

And the "null" dialog will pop up together with this line of log:

619 | Warning | Performance warning: String load failed. Pkg:{D15F5C78-D04F-45FD-AEA2-D7982D8FA429} (VisualBasicProjectSystemPackage) LANG:0804 ID:2

Issue starting VS2017 Pro after MDK 1.3 install

I've installed the latest MDK but after opening a project in VS2017 (not an MDK project) I get the following error from VS...

mdk_1 3_error

System.NotImplementedException: The method or operation is not implemented. at EnvDTE.Project.Save(String FileName) at Malware.MDKServices.ScriptUpgrades.AnalyzeProject(Project project, ScriptUpgradeAnalysisOptions options) at Malware.MDKServices.ScriptUpgrades.<>c__DisplayClass13_0.<AnalyzeAsync>b__1() at System.Threading.Tasks.Task'1.InnerInvoke() at System.Threading.Tasks.Task.Execute() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Malware.MDKServices.ScriptUpgrades.<AnalyzeAsync>d__13.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at MDK.MDKPackage.<OnSolutionLoaded>d__48.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\MDKPackage.cs:line 260

MDK RC stripping off #endregion

#endregion being stripped off. starting with RC version. was working on prerelease versions

example.
shared project autogyro
namespace IngameScript {
partial class Program {
#region Autogyro
// http://forums.keenswh.com/threads/aligning-ship-to-planet-gravity.7373513/#post-1286885461

    double CTRL_COEFF = 0.5;

...
void gyrosOff() {
for (int i = 0; i < gyros.Count; ++i) { gyros[i].GyroOverride = false; }
}
#endregion
//endof autogyro

the #endregion and //endof autogyro are getting stripped off during the code being packaged together.

Deploying script error

When i try deploying the script, i get this error
System.ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: obj bei Microsoft.Internal.VisualStudio.PlatformUI.Utilities.GetObjectData(IVsUIObject obj) bei Microsoft.VisualStudio.PlatformUI.StatusBarService.GetImageListFromMonikers(IEnumerable1 monikerList)
bei Microsoft.VisualStudio.PlatformUI.StatusBarService.GetBuiltInAnimation(StatusBarAnimationIndex statusBarAnimationIndex)
bei Microsoft.VisualStudio.PlatformUI.StatusBarService.StartAnimation(Object animationInfoKey, Boolean isBuiltInAnimation)
bei Microsoft.VisualStudio.PlatformUI.StatusBarService.Animation(Int32 fOnOff, Object& pvIcon)
bei MDK.VisualStudio.StatusBarAnimation.set_IsEnabled(Boolean value) in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\VisualStudio\StatusBarAnimation.cs:Zeile 69.
bei MDK.MDKPackage.d__49.MoveNext() in C:\Users\Morten\Dropbox\Projects\Space Engineers\MDK-SE\Source\MDK\MDKPackage.cs:Zeile 0.`

Deployment File Order (default behavior)

The default behavior of the deployment builder should be to order the files with Program first, then the rest in an alphabetical order.

This is a split from issue #17 by Elfiwolfe.

Typing error in "Debugging your Scripts"

Minor typo programmers will usually notice immediately => not critical:
_logOutput = GridTerminalSystem.GetBlockWithName("Log LCD") as IMyTextBlock;

Very neat info in that blog, btw. :-)

Lambdas can cause variable name conflict when using minifier

If there's a lambda (or may be a more global program) that uses a variable, it can conflict with the generated variable names and cause an error. When using minifier.

For example: groups[groupIndex].GetBlocks(theBlocks, (x => x.CubeGrid == Me.CubeGrid));

image

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.