GithubHelp home page GithubHelp logo

microsoftedge / webview2samples Goto Github PK

View Code? Open in Web Editor NEW
830.0 57.0 460.0 22.92 MB

Microsoft Edge WebView2 samples

C++ 52.59% C 1.21% HTML 9.07% C# 27.97% JavaScript 1.05% TypeScript 0.07% Rich Text Format 0.01% XSLT 0.09% CSS 0.10% ShaderLab 2.03% HLSL 0.07% PowerShell 0.24% GLSL 5.51%

webview2samples's Introduction

WebView2 Samples

Welcome to the WebView2Samples repo. This repo contains several types of samples for WebView2:

  • Getting Started tutorial projects - Completed Visual Studio projects that result from following the steps in the Getting Started tutorials. These are like Hello World basic apps.

  • Sample apps - WebView2 sample apps for various frameworks and platforms, as Visual Studio projects. These samples have menus and demonstrate various APIs. For more information, see Sample apps.

  • Deployment samples - Samples that demonstrate deploying the WebView2 Runtime. For more information, see Deployment samples.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft Trademark and Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

webview2samples's People

Contributors

aluhrs13 avatar champnic avatar davidshoe avatar dianaqu avatar feich-ms avatar howardwolosky avatar jasonstephen15 avatar lflores-ms avatar liminzhu avatar liu-lichen avatar maurawinstanley avatar michaelfarnsworth avatar mikehoffms avatar nishitha-burman avatar oggy22 avatar pagoe-msft avatar peiche-jessica avatar pieths-ms avatar plantree avatar shangminx avatar syul968 avatar tochukwuibeekeocha avatar tofuandeve avatar vchapel avatar vickiez avatar webview2githubbot avatar yunate 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  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

webview2samples's Issues

Detzection logic in Bundle.wxs seems wrong

To detect whether Webview2 is installed, WebView2Samples/SampleApps/WV2DeploymentWiXBurnBundleSample/Bundle.wxs uses
<util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\EdgeUpdate\Clients\{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}" Value="EBWebView" Variable="WVRTInstalled" Win64="no" />

According to https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/distribution and my own experience, the value should however be "pv", not "EBWebView". i.e.
<util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\EdgeUpdate\Clients\{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}" Value="pv" Variable="WVRTInstalled" Win64="no" />

cppwinrt Callback

Callback<ICoreWebView2CreateCoreWebView2ControllerCompletedHandler>(
		[hWnd](HRESULT result, ICoreWebView2Controller* controller) -> HRESULT {

Is there a modern C++/WinRT version of Microsoft::WRL::Callback?

WebView2 stand-alone sample with WPF, WinUi3

Hi Team
Couldn't find any working sample with stand-alone, packaged ( Not ever-green one) sample for using WebView2 in WPF/WinUi3 application.

It will be great if added as starter code and updated Readme.md

Only one sample

Hi, I downloaded the repository and there is only the one sample. It is actually just a web browser application. I would like to see a sample that demonstrates display of html content that is compiled into the executable, and the handling of ajax calls programmatically within the application itself.
Its not at all clear that webview2 is capable of doing any of this.

Where can I get up to date public key for bootstrapper?

Hello,

I'm trying to make bootstrapper package for deploy WebView2 via clickonce.

I followed bootstrapper example in 'WV2DeploymentVSInstallerSample'.

But, I have problem with WebView2 download link.
I guess the key has changed.

Error message is popuped when try install like below.
'Setup has detected that the file ***\MicrosoftEdgeWebview2Setup.exe' has changed since it waw initially published. Click OK to retry the download, or Cancle to exit setup.'

So maybe I need new public key for fix this problem.

Where can I get the key?

Problem in README.md (links and images)

First, congratulations on the documentation and examples!

I maintain some C ++ code for Microsoft (MFC and Win32) and it is increasingly difficult to find good documentation for this.

I'm thinking of using WebView2, I used CEF a while ago, but I didn't like how it worked, with this API everything is easier to maintain!

Can you tell me when Edge with chromium becomes official and will be updated directly on windows?

about the problems are two:
1) Images are not showing in the browser, it appears broken.
2) In (RegisterEventHandlers) the documentation link is wrong. In the part (To read more about event handlers in WebView2, you can refer to this documentation.)

WebView2WebView->Navigate requires full URL?

It seems in the sample and in my own code when calling WebView2WebView->Navigate the URL must be a full URL such as "https://www.whatismybrowser.com". If you specify a string like "www.whatismybrowser.com" the function fails with an invalid arguments error. In the WebBrowser control you can specify any sort of string for the URL and the control parses and resolves it correctly.

Will the release version add this partial URL resolve functionality to WebView2WebView->Navigate?
Without this it is a severe drawback to existing code where the WebBrowser IE control works easily.

Cannot run extension

I've installed a Chrome extension on Microsoft Edge (Chromium) to play HLS video. I've tried on Microsoft Edge (Chromium) and it works fine. The HLS URL is http://localhost/hls/taiguo/playlist.m3u8 and the Microsoft Edge browser displays the full URL as: extension://ekcifneimckhkjdfklkkpdlnckcjhmke/index.html#http://localhost/hls/taiguo/playlist.m3u8.

I want to use the code sample from Getting Started with WebView2 (developer preview) to play the media in a Windows program. If I call Navigate(...) using the .m3u8 URL as follows:
webviewWindow->Navigate(L"http://localhost/hls/taiguo/playlist.m3u8");
the application will download the playlist file, but not play the media automatically. If I use the full extension like:
webviewWindow->Navigate(L"extension://ekcifneimckhkjdfklkkpdlnckcjhmke/index.html#http://localhost/hls/taiguo/playlist.m3u8");
the app will display the following error message:
ekcifneimckhkjdfklkkpdlnckcjhmke is blocked
Requests to the server have been blocked by an extension.
Try disabling your extensions.

I hope someone can tell me what is the correct way to run extension using WebView2. Thanks in advance!

Javascript bridge window.external.notify

Add a sample demonstrating best practice to communicate events between the host and javascript both ways.

An messaging abstraction would benefit the WebView2 spec. There is a supported 'WebMessageReceived' API but is only from Host originated events which await a JS response.

The WebView2_spec says: "WebMessageReceived – Occurs when the content contained in the WebView2 control passes a string to the application by using JavaScipt."
a sample showing how to send messages from JavaScript to the Native application hosting the WebView would be very useful.

"Win32 WebViewControl did not support ObjectForScripting or AddWebAllowedObject", @rjmurillo made a fine example of a necessary workaround to create a Javascript to Natvie notification 'JavaScriptBridge'.

It's basis was :

window.external.notify(event.data);

The browser MDN web docs on Window.external say it is deprecated. What would be the Chrome equivalent?

An iOS Safari webView compatible example:
https://github.com/lovesunstar/WKBridge/blob/fb30c123e68b4dcd4c4a2a8087d7383dbac0afe9/Example/WKBridge/test.html

WPF WebView2 Mouse Emulation Touch Mode for Windows

Hi,
I cant find the way for the mouse left click to emulate mobile touch.
This is similar to the option we have under "Developer Tools" > "Toggle device emulation"
image

I need to be able to drag on the screen as you will do it in a mobile device but in Windows.

Any help will be greatly appreciated
Diego

Just say no to wil::com_ptr

Is a legitimate call :)

I made that work (after setting to "no exceptions" in project properties) and by replacing two usages of wil::com_ptr with Microsoft::WRL::ComPtr.

There is now the warning about not having /EHsc, emanating from ppltasks.h , but that is a much larger subject.

I assume now I need to install WV2 RT to make it work.

navigator.mediaDevices is undefined

Steps to reproduce

static TCHAR htmlProgram[] = 
L"<!doctype html>"
L"<html>"
L"    <body>"
L"        <script>alert(navigator.mediaDevices);</script>"
L"    </body>"
L"</html>";

// ...

webviewWindow->NavigateToString(htmlProgram);

Expected behavior

An alert box saying [object MediaDevices], which is what Microsoft Edge Canary gives.

Actual behavior

An alert box saying undefined.

Notes

I can't find any API to enable this functionality. Where is it?

Is there away to use postmessage syncronsly in JS/C# (Question)

I'm looking at using WebView2 to create a browser with some custom functionality. This is something I've been trying to do in both CEFSharp and GeckoFX for sometime now without success.

Essentially, I'm trying to build a desktop browser that will allow me to debug TV Applications conforming to the HbbTV/Oipf standard on my windows desktop due to the difficulty involved in doing this remotely against a real TV set.

The exact API I have to implement can be found documented here: https://www.oipf.tv/web-spec/volume5.html if anyone is interested, but for the purposes of this question, I'm just going to concentrate on one of the basic API calls "isObjectSupported" which is part of the "oipfObjectFactory" static global window object.

This call, returns a bool that is either true/false informing the caller that the mime type string passed to it is or is-not supported by the device running the application.

Right now, the only way I seem to be able to get that data passed to my C# app and for and for my C# app to respond to the browser, is to use

window.chrome.webview.postMessage({type: "isObjectSupported", mime: mimeType});

in Javascript, and respond with:

webView.CoreWebView2.PostWebMessageAsString("true"); // or "false"

in C#

In an async fashion, this all works great, but the apps using the implemented function call in the API extension will NOT be calling isObjectSupported in an async way. That is, they won't be awaiting, and they will expect the first return they see to be the answer to the function called.

The HbbTV specification was defined before browsers started to get clever with things like async/await, so in the actual TV's themselves most of them run something like Opera for TV's V4x.0

In order fro me to implement the API calls correctly, I essentially need to be able to provide a JavaScript shim that does the following:

1) Send the mime string to my C# code.
2) Spins in a loop until a message event is received back from the C# code.
3) Decodes the message and returns the result.

Item 2 however as we know cannot be done in JavaScript without holding up the single threaded loop that it all runs on, which in turn would hold up 3 and deadlock.

And there seems no way I can send the message and wait on the result.

I can't make the exposed API async either, as that will cause a promise to be returned, which the caller will not be expecting (or even know how to deal with) and will so just assume a true response (As I've already tried)

What would work perfectly would be something along the lines of:

function isObjectSupported(mimeType)
{
  result = window.chrome.webview.postMessage({type: "isObjectSupported", mime: mimeType}).waitForReply();
  var actualResult = parse(result);
  return actualResult;
}

or some other way of calling say:

result = window.chrome.webview.isObjectSupported("blah...");

which would automatically find and call

public bool isObjectSupported(mime){ ... return true; }

in the C# code in the app itself.

I had hoped that

webView.CoreWebView2.AddHostObjectToScript("oipfObjectFactory", new oipfObjectFactory());

would have worked, but all I get no matter what I try is "System.ArgumentException: value does not fall within the expected range".

Ideally we would be able to add objects with both public properties and public methods and have them appear in the global object, then we could just build out the extensions in pure C#

It is partially possible to do this using CEFSharp, but you either only get properties, or methods, not both, and since some of the more complex API's in the specification return a mix of methods and properties CEFSharp has been a non starter.

So, in summary: is there a way I can do this synchronous call in WebView2 that I've not noticed in the doc's or is there a way we can make the coll to postmessage and wait on the result so that I can at least try to build the functionality out in a JS shim/polyfill.

Doesn't Work?

Downloaded opened in VS2019, got some Wiix errors, ignored as not deploying.

Opened WebView2Samples solution. Ran WebView2WindowsFormsBrowser.

Clicked Go. Nothing. Blank grey form.

Clicked Refresh. System.InvalidOperationException: 'The instance of CoreWebView2 is uninitialized and unable to complete this ...

Clicked Events. System.NullReferenceException: 'Object reference not set to an instance of an object.'

????

Windows 7 compatible?

Hi , Did someone test the basic sample with Windows 7 x32/x64? Does it work?

Thanks

How to load flash plugin in winfrom?

I use VS2019 + Windows Form + WebView2 (0.9.538-prerelease),There are no problems with the development environment or project operation,But the web doesn't seem to be able to load the Flash plug-in。

WebView2APISample fails to start, "abort() has been called"

Went starting the WebView2APISample in Debug configuration, it stops just after showing the window, with a modal dialog.

image

When starting in Release, it exits without message just after showing briefly the window.

I did the following steps to test the sample :

  • cloned the master branch (commit eecf384)
  • upgraded my Edge to Version 87.0.664.47 (64 bits)
  • installed WebView2 Runtime (evergreen @ 87.0.664.47)
  • built with Microsoft Visual Studio Community 2019, Version 16.8.2
  • on Windows 10 Pro, Version 10.0.19041 Numéro 19041

I was unable to get a proper call stack, the error happens in the message pump's "external code".

Please find the console-output attached.

doubt to synchronize!

I tried to do some ways to synchronize Callback (NavigationCompleted), but I was unsuccessful.

For example, I want to execute (ExecuteScript or PostWebMessageAsString). But I need to make sure the page loads before! I know that AddScriptToExecuteOnDocumentCreated exists and I could use it, but it's not just in the creation, in some moments if I need to run a script I have no way of knowing if the full navigation was done.

One of the examples I tested:

webviewWindow->add_NavigationCompleted(Callback<IWebView2NavigationCompletedEventHandler>(
	[&](IWebView2WebView* webview, IWebView2NavigationCompletedEventArgs * args) -> HRESULT {	
	SetEvent(NavigationCompletedEvent.Get());
	return S_OK;
}).Get(), &token);

ResetEvent(NavigationCompletedEvent.Get());

webviewWindow->Navigate(GetFullPathFor(L"htmls\\MyAppWeb.htm"));

WaitForSingleObjectEx(NavigationCompletedEvent.Get(), INFINITE, FALSE);

// Scripting Check Page HTML is READ to CLOSE!
webviewWindow->ExecuteScript(L"window.fnIsReadyToClose();", Callback<IWebView2ExecuteScriptCompletedHandler>(
	[](HRESULT errorCode, LPCWSTR resultObjectAsJson) -> HRESULT {
	LPCWSTR IsReadyToClose = resultObjectAsJson;
	//Close Window or change page etc...	
}).Get());

I tried how to run with Navigate with RunAsync (using POSTMESSAGE), but nothing!

From what I saw it is on the same thread and does not run async on another! I also didn't see anything like std :: future using a myFuture.wait (); I tried with CreateEvent and condition_variable, but it ends up the same.

I don't know if it's the best way! What do you suggest?

run error(1.0.781-prerelease)

WebView2Samples\SampleApps\packages\Microsoft.Windows.ImplementationLibrary.1.0.201120.3\include\wil\result_macros.h(6126)\WebView2APISample.exe!006716EA: (caller: 006710A3) Exception(1) tid(1498) 80004002 不支持此接口
0x75EF4402 处(位于 WebView2APISample.exe 中)引发的异常: Microsoft C++ 异常: wil::ResultException,位于内存位置 0x00DFD7CC 处。
0x006AEF32 处有未经处理的异常(在 WebView2APISample.exe 中): 请求了严重的程序退出。

Wpf Full Framework Any CPU can't reference/compile

Basically "Hello, world", just add the package Microsoft.Web.WebView2 (v0.9.579) to a new full framework wpf app and try to add the namespace from XAML:

xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf"

Reproduced in this repo: https://github.com/ajtowf/WebView2WpfAppFullFx

Also looking in Microsoft.Web.WebView2.targets I don't understand how this is supposed to work without getting a BadImageFormat exception when unchecking "Prefer 32 bit" for "Any CPU".

image

WebView2 using canary - why not release edge browser

All,
I have created com interop control to use WebView2 control in VB6, it is working fine with minor issues.
But edge canary should be installed in that machine. Since edge canary is not released on how can we use that control in production. Please help me.

Is it works in regular edge chromium?

Thanks
Prabu

Address bar URL throws an error if URL does not start with http or https

When working on WebView2WpfBrowser sample, I get the following error at the following code in MainWindow.xaml.cs file. The sample runs fine except when in the address bar I type a URL without using http:// or https:// and click on Go button next to the address bar. It throws the following error if you, for example, just type microsoft.com or even www.microsoft.com.

Error:

System.UriFormatException
HResult=0x80131537
Message=Invalid URI: The format of the URI could not be determined.
Source=System.Private.Uri

Code:

void GoToPageCmdExecuted(object target, ExecutedRoutedEventArgs e)
{
    webView.Source = new Uri((string)e.Parameter);
}

DevTools working?

With DevTools enabled, I press F12 and the app crashes. This is with Edge 80.0.361.45 beta.

I need DevTools because I want to see about a CORS, Cross Origin Resource Sharing, issue.

Thanks.

Possible to view-source:url in code?

Hello,
I'm doing a little sample application with WebView2. I try to get the source-code of the current page,
the same as you can see in e.g. view-source:https://www.bing.com/
Is this possible from within C#?

Already did this with javascript, but there is missing data in comparison to the browser variant.

        try
        {
            string html = await webView.CoreWebView2.ExecuteScriptAsync("document.documentElement.outerHTML");
            string unescaped = Regex.Unescape(html);
            html = unescaped.Substring(1, unescaped.Length - 2).Replace("&amp;", "&");

            if (!html.StartsWith("<html"))
            {
                Debug.WriteLine("Invalid source");
                return null;
            }
            var doc = new HtmlDocument();
            doc.LoadHtml(html);
            return doc;
        }
        catch (Exception exc)
        {
            Debug.WriteLine(exc.Message);
            return null;
        }

`

Sample app only for netcoreapp3.0?

Tried to run the WPF sample app with both netcoreapp3.1 or net5.0-windows.
Neither seem to work. They are crashing when the "Go" button is pressed.

Do I have to install the obsolete 3.0 version to get it running?

Cannot create IWebView2WebView

I am able to get the CreateWebViewEnvironmnetWithDetails working and an environment pointer is returned. The next step with CreateWebView returns with no failure but the IWebView2WebView pointer value is always zero. And if I use a separate oncreate handler it never gets called (entry breakpoint never hits). I am passing a top level window handle to CreateWebView for a window previously created and either shown or hidden, makes no difference. Is there a prerequisite for something with the window that CreateWebView needs to work? Running on Windows 7 32 bit.

MFC Sample

Any chance of getting a basic MFC SDI or MDI example?

Compilation error - tried with SDK verions -

1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\shared\wtypesbase.idl(466): error MIDL2003: [msg]redefinition [context]: _FLAGGED_WORD_BLOB
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\unknwnbase.idl(42): error MIDL2003: [msg]redefinition [context]: IUnknown
1>MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\ocidl.idl
1>ocidl.idl
1>MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\oleidl.idl
1>oleidl.idl
1>MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\servprov.idl
1>servprov.idl
1>MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\urlmon.idl
1>urlmon.idl
1>MIDLRT Processing C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\msxml.idl
1>msxml.idl
1>D:\MyDevProjects\MyProjectsThirdPartySamples\Microsoft\WebView2Samples\SampleApps\WebView2APISample\HostObjectSample.idl(34): warning MIDL2214: [msg]semantic check incomplete due to previous errors
1>Done building project "WebView2APISample.vcxproj" -- FAILED.
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

Vanilla Download of WV2 Has Errors in the project WebView2WindowsFormsBrowser

I download the vanilla solution. It has errors. I downloaded the WebView2Samples and load up the WebView2WindowsFormsBrowser project and I get the following when I open the EventMonitor.cs file:

Here is what I have on the computer:

Microsoft Edge is up to date.Version 87.0.664.75 (Official build) (64-bit)

image

image

Why post a solution that has errors?

UWP Sample

Is it possible to add sample how to use WebView2 in UWP application?

C# Samples

Could you please provide samples in C#, not just C++? I can't make use of C++ project as I (and no doubt MANY others) develop solely in C#.

Thanks!

Before Step 3 of Guide

Maybe just mention the using namespace before Step 3.

using namespace Microsoft::WRL;

Otherwise there's an undefined Callback error since the example code isn't namespaced...

	// Step 3 - Create a single WebView within the parent window
	// Locate the browser and set up the environment for WebView
	CreateWebView2EnvironmentWithDetails(nullptr, nullptr, nullptr,
		Callback<IWebView2CreateWebView2EnvironmentCompletedHandler>(
			[hWnd](HRESULT result, IWebView2Environment* env) -> HRESULT {

Wpf Permissions for Push Notification Sample

I am trying to make Push Notification work in WPF. I am using https://webpushdemo.azurewebsites.net/ to test the notification but it is throwing "Uncaught (in promise) DOMException: Registration failed - permission denied" error.

I have tried to hook the PermissionRequested event but it is not triggered.

Maybe an example on how to do it should be added to the sample project.

The sample WebView2APISample app Aborts

Cloned the sample code and i get the following after building and starting:
image

I am not a C++ guy, so I have no clue how to fix this issue. Any help is appreciated.

Incompatible with Edge public release

Edge has just been publicly released. After uninstalling canary, the sample fails with :

Loader skipped an incompatible version: C:\Program Files (x86)\Microsoft\Edge\Application\79.0.309.65

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.