GithubHelp home page GithubHelp logo

auspice.us's Introduction

Logo

This repository is archived and contains the content used to build the documentation and splash page found in nextstrain.org. This content can now be found here.

License and copyright

Copyright 2014-2018 Trevor Bedford and Richard Neher.

Source code to Nextstrain is made available under the terms of the GNU Affero General Public License (AGPL). Nextstrain is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

auspice.us's People

Contributors

babarlelephant avatar dependabot[bot] avatar huddlej avatar jameshadfield avatar joverlee521 avatar tsibley avatar victorlin avatar

Stargazers

 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

auspice.us's Issues

Support https

Current Behavior
error in opening auspice.us in browsers

Expected behavior
A clear and concise description of what you expected to happen instead.
open auspice

How to reproduce
Steps to reproduce the current behavior:

  1. Open browser: Chrome, Firefox, Safari
  2. https://auspice.us/
  3. See error:
    auspice.us sent an invalid response.
    ERR_SSL_PROTOCOL_ERROR

Possible solution
(optional)

Your environment: if browsing Nextstrain online

  • Operating system: Mac
  • Browser: Chrome, Firefox, Safari

Your environment: if running Nextstrain locally

  • Operating system:
  • Browser:
  • Version (e.g. auspice 2.7.0):

Additional context
Add any other context about the problem here.

Measurements sidecar files crash the app

Current Behavior

Dropping on a measurements sidecar file crashes auspice.us. Console logs:

Uncaught TypeError: collection.fields.get(...) is undefined
    groupingOptions measurementsOptions.js:47
    MeasurementsOptions
...
The above error occurred in the <MeasurementsOptions> component

Expected behavior

Measurements sidecars should load (and measurements panel should display).

How to reproduce

Steps to reproduce the current behavior:

  1. Example dataset + sidecars: https://github.com/joverlee521/nextstrain-testing/tree/main/auspice

Note that https://nextstrain.org/community/joverlee521/nextstrain-testing/flu/seasonal/h1n1pdm/ha/09-17 works correctly.

Possible solution

(optional)

Your environment: if browsing Nextstrain online

auspice.us version 0.11 using auspice 2.34.1 (note that there are no changes to the measurements panel between auspice 2.34.0 and 2.34.1).

This ๐Ÿ› was noticed during development of #23 but I didn't want to let this hold up that PR as there are very few measurements sidecars at the moment.

Direct link to auspice.us with JSON or Newick URL?

Context
I would like to link to auspice.us with a URL of a Newick or JSON file, so that I can share a visualization of a tree without others having to download my tree file and drag it into auspice.us.

Description
auspice.us could define a format for links, e.g.

https://auspice.us/?dataUrl=_url_

where the user can provide a JSON or Newick URL as url

I don't care if it looks anything like "?dataUrl=", any magical incantation will do. :)

Examples

https://auspice.us/?dataUrl=https://hgwdev.gi.ucsc.edu/~angie/example.nwk

Sorry if I've missed an obvious way to do this! Thanks so much for providing augur, auspice and Nextstrain, they are incredibly useful.

remove getAvailable request

Current Behaviour

Loading auspice.us makes a fetch for https://auspice.us/charon/getAvailable?prefix=/ which returns a 204 (no content) response.

Expected behavior

No charon API calls should be made

How to reproduce

Steps to reproduce the current behavior:

  1. Open auspice.us
  2. Examine network tab of browser dev tools

Your environmen

BUG: White screen of death if Newick tree contains duplicate tip names

Current Behavior

When loading a Newick .nwk tree in Auspice that contains a duplicate name, Auspice just shows a white screen.

Expected behavior

Auspice should fail graciously, reporting to the user what the problem is: duplicate name.

Even better would be if duplicate names were tolerated.

How to reproduce

Steps to reproduce the current behavior:

  1. Load newick tree with duplicate names
  2. Observe result

Example:

(A:1,((B:1,A:1):2,(C:1,A:1):1):1;

Your environment: if browsing Nextstrain online

auspice.us (2.34.1)

Additional context

Took me quite a while to figure out what the problem was.

Console

TypeError: n is undefined
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
[auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17:82566](https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js)
    ns https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    callback https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    di https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
Uncaught TypeError: n is undefined
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
[auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26:76293](https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js)
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu self-hosted:1287
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu self-hosted:1230
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42

File picker on splash page

Context

The current drag-and-drop interface is limiting for a number of reasons, and was primarily implemented due to simplicity. It enforces that all files are dragged on at the same time (except those files which shouldn't be, such as metadata CSVs!), and with the implementation of narratives/sidecar files in #23 there is no way to order the datasets for tangletrees. Furthermore, some users are more familiar with a "select file(s)" interfaces. Nextclade has a nice simple example of such as UI.

Description

The following functionality is desirable, but a MVP could implement only a subset:

  • Ability to select files
  • Ability to drag on files in different stages
  • Automatic grouping of dragged files into "datasets" (i.e. X.json and X_measurements.json are grouped). I'll use the term "slot" for this below.
    • This should highlight orphaned files (e.g. X_measurements.json where X.json wasn't dropped on).
    • Bonus: some sidecars require that an entry is present in meta.panels. We should indicate when this is not the case, as the sidecar won't load.
  • Auspice can only display two datasets. Using the slots described above, we should indicate that slots 3 onwards will not be displayed
    • Order is important (think tangletrees) so we should allow slots to be reordered.
    • The second slot (tree) won't use tip-frequencies / measurements panels, and possibly not the root-sequence. The UI would want to indicate that these sidecar files, if present, will be unused.
  • For narratives, one option would be to create a set of (possibly) empty slots for each URL path specified in the markdown.
    • I think it's reasonable to not allow a narrative to load without each slot having a dataset loaded.
    • We could think about allowing dataset names to not match the URLs so precisely, but here be ๐Ÿฒ
    • Multiple narratives don't make sense for auspice.us
  • Metadata CSVs currently have to be dropped on. It'd be nice to allow them to be used here, but not essential and complicated (requires digging more into auspice's internals I imagine).

Offline Page "Refresh"

Context

When travelling I might have a few JSONs I would like to inspect, check, or use for something. To do so dragging into auspice.us is often perfect (getting auspice to run locally sometimes is tricky). However, I have to remember to load up as many 'empty' auspice.us tabs as I think I might need beforehand, when I have internet.

Description

Would be cool if one had a button somewhere in auspice.us that clears whatever's displayed so one can drag on new JSONs without having to actually 'refresh' with internet connection.

Totally accept this is a little niche and the real solution is to figure out how to get auspice running locally more stably, but I bet I'm not the only one who relies more on auspice.us ! ;)

ENH: Auto-release when Auspice is updated

Context

Despite Auspice 2.37.3 having been released for a few days, auspice.us is not up to date, still at 2.37.2

Description

It would be great if we could update auspice.us automatically together with auspice releases.

@victorlin is this something you could have a look at, maybe? You've been doing release improvements recently.

Cannot drag'n'drop metadata onto a nwk tree

Current Behavior
When a .nwk tree is loaded onto auspice, I am unable to drag'n'drop a tsv with metadata. It results in a blank screen. I can drag'n'drop metadata onto a Nextstrain (.json) tree though.

Expected behavior
Should be able to layer metadata on a nwk tree in.

How to reproduce
Steps to reproduce the current behavior:

  1. Go to https://auspice.us/
  2. Upload .nwk tree
  3. Drag 'n' drop tsv containing metadata for tips in the .nwk tree
  4. See blank screen

Your environment: if browsing Nextstrain online

  • Operating system: Windows 10 Pro
  • Browser: Chrome

Additional context
Thanks to @allenkj2 for flagging this behavior!

tree with 36,000 tips doesn't load

I have performed a json analysis with omicron and my entire tree is correct, I have managed to obtain results from all the variants on its Peru website. With Omicron, I don't know if because there are too many genomes 36,360 the page does not load and an error appears.
Please can you help me.

Duplicate sample names in tree

Current Behavior

Hello! I am encountering an issue when attempting to drag and drop this tree into auspice.us. Samples are appearing in duplicate with "_2" appended to the end. I drag and dropped the file with a ".nwk" file ending but changed the ending to ".txt" to attach to this issue.

test-tree-duplicate.txt

image

Expected behavior

Sample names should only appear once. There should be 10 samples total.

How to reproduce

Steps to reproduce the current behavior:
Drag and drop file above into auspice.us.

Your environment: if browsing Nextstrain online

  • Operating system: Windows
  • Browser: Chrome

Additional context

Issue is not occurring in other tree visualization tools (iTol, MicroReact).

Thank you!

Newick format does not load!

This my newick file:

(35193_4_118_4749-16835:0.0071704455,((((35193_4_127_4879-16965:0.0000010000,91_PSEU_BANG_1100269125_S12_contig_4879-16965:0.0000010000):0.0032016172,(35193_4_143_4879-16965:0.0016827865,35193_4_226_4879-16965:0.0004669189):0.0015460867):0.0021316564,((((((((((((((35193_4_98_4747-16860:0.0000010000,67_PSEU_BANG_1102967109_S14_contig_4747-16860:0.0000010000):0.0031336711,(35193_4_130_4748-16861:0.0000010000,35193_4_223_4748-16861:0.0000010000):0.0025227318):0.0010079518,35193_4_201_4749-16862:0.0034981816):0.0005910819,((35193_4_101_4880-16993:0.0000010000,35193_4_195_4880-16993:0.0000010000):0.0022065728,35193_4_37_4878-16991:0.0014386610):0.0010236735):0.0012406919,35193_4_228_4879-16992:0.0035977476):0.0011226040,35193_4_112_4748-16861:0.0001715655):0.0028979144,35193_4_220_4879-16992:0.0003427152):0.0040580525,(35193_4_147_4747-16860:0.0043487560,65_PSEU_BANG_1103051109_S13_contig_4747-16860:0.0012100647):0.0007909705):0.0008702566,66_PSEU_BANG_1103099109_S15_contig_4878-16991:0.0017107226):0.0006747966,35193_4_108_4878-16991:0.0006561765):0.0013651058,35193_4_198_4748-16861:0.0028465421):0.0011824292,35193_4_65_4879-16992:0.0034572865):0.0140409027,((35193_4_204_4879-17000:0.0146026516,(35193_4_229_4879-16988:0.0001651109,35193_4_235_4879-16988:0.0000010000):0.0021070896):0.0014631801,(35193_4_59_4878-16987:0.0027193609,((35193_4_110_4878-16987:0.0000010000,35193_4_114_4878-16987:0.0000010000):0.0010040325,35193_4_122_4879-16988:0.0011440353):0.0020929829):0.0017096863):0.0216076732):0.0151129466,(35193_4_34_4748-16861:0.0293647250,35193_4_95_4748-16861:0.0367885989):0.6005671689):0.0153317094):0.0007939199,((35193_4_135_4881-16967:0.0000010000,35193_4_139_4881-16967:0.0000010000):0.0014965220,B1000012_S16_contig_4880-16966:0.0018969756):0.0026919943):0.0017388938,35193_4_232_4748-16834:0.0025433434);

This file does not work in https://auspice.us/ but works in others online tool

Failure to load dropped Newick file

Current Behavior

Hello, I am trying to load the attached Newick file in auspice.us, but am seeing the failure to load error shown below. (I am attempting to load the file with the file ending .nwk, but was not able to link that file time to this GitHub issue so have attached it as .txt instead.)

test_tree_20231205.txt

image

How to reproduce

Steps to reproduce the current behavior:

  1. Drag and dropped file into auspice.us in web browser

Your environment: if browsing Nextstrain online

  • Operating system: Windows
  • Browser: Chrome

Additional context

Tree was generated using the Snippy_Tree_PHB workflow on Terra and was successfully loaded in other tree visualization tools including iTol and MicroReact.

Improved error messages for narratives

Current Behavior

Dropping narratives (with or without associated datasets) onto auspice.us doesn't work - error notification "auspice.us couldn't load any of the dropped files!". Example console message:

Read flu_seasonal_h3n2_ha_2y.json as a main dataset JSON file
Read test_simultaneous-tree-updates.md as a narrative.
Linking narrative datasets to dropped JSON datasets.
Narrative slide URL flu/seasonal/h3n2/ha/3y expected flu_seasonal_h3n2_ha_3y.json but this wasn't found.

Behavior exists at auspice.us 0.12.0 (Auspice 2.46.0) and is unchanged in #59, so I'm going to merge that now.

[minor] HTML error in splash page

React error (in development mode):

 Warning: validateDOMNesting(...): <ul> cannot appear as a descendant of <p>.
    in ul (created by SplashContent)
    in p (created by Context.Consumer)

auspice.us reports an error parsing valid metadata on drag-and-drop

Current Behavior
auspice.us reports an error parsing a valid metadata file on drag and drop.

EA762007-9F76-434C-A430-4E80703089C5

When I drag the same data onto a nextstrain.org tree, I do not get the same error. Both auspice.us and nextstrain.org are running Auspice 2.31.0.

66EE0AE2-BB9A-4E34-A756-C61DA156ABEA

Expected behavior
No error message when the metadata can be parsed.

How to reproduce
Steps to reproduce the current behavior:

  1. Drag the attached zika.json file onto auspice.us
  2. Drag the attached metadata.tsv for the Zika tutorial data onto the resulting auspice.us tree and see the error message.
  3. Open the Zika build on nextstrain.org
  4. Drag the attached metadata.tsv onto the nextstrain.org tree and see no error.

zika.json.zip
metadata.tsv.zip

Newick trees without a root branch length fail to load

Current Behavior
Newick trees with incomplete branch lengths cannot be read by auspice.us. In particular, it is common to not define a branch length for the root node, such as:

((B:0.2,(C:0.3,D:0.4)E:0.5)F:0.1)A;

Expected behavior
These trees are valid newick, they should both load.

How to reproduce

The following tree does not load

((B:0.2,(C:0.3,D:0.4)E:0.5)F:0.1)A;

But this one does:

((B:0.2,(C:0.3,D:0.4)E:0.5)F:0.1)A:0;

Your environment: if browsing Nextstrain online

  • auspice.us 0.8.0

Additional context
Internal nodes without branch lengths (other than the root) should still raise an error.

Auspice has no problem reading a broken nwk tree

Current Behavior

Fascinatingly, Auspice has no issue reading a broken nwk tree with unmatching parentheses.

When viewing the raw nwk tree in Auspice it didn't complain. Only when I ran it through augur export did I get a complaint.

It's not so much a bug as I'm surprised that we're not even logging anything to the console.

Expected behavior

When I give a broken nwk, Auspice warns me.

How to reproduce

Steps to reproduce the current behavior:

  1. Open tree.nwk.txt in auspice.us
  2. Observe that there is nothing logged to console

Validation of json file

Current Behavior
json file generated using augur export v2 is failing with the following error message:

ERROR: None is not of type 'string'. Trace: properties - tree - properties - name - type
ERROR: [ ] is too short. Trace: properties - meta - properties - colorings - minItems
FATAL ERROR: Validation of '/home/hamza/Metadata/filtered_all_dataset_QC_all_metadata.json' failed

Expected behavior

The same dataset with a different metadata table worked fine and the visualization on auspice worked as expected. Even without including the metadata, json validation still fails.

How to reproduce
Steps to reproduce the current behavior:

  1. Open / run augur export v2 using the tree and nodes output of augur refine
  2. See error

Your environment: if browsing Nextstrain online

  • Operating system: Ubuntu
  • Browser: Mozilla Firefox

Allow sidecar files to be loaded in auspice.us

Sidecar files (_tip-frequencies.json, _root-sequence.json) are additional fetches in auspice. For auspice.us we should allow these files to be dragged on as part of the initial load. It may also be wise to allow them to be dragged on after the main dataset is loaded, but this is not essential.

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.