GithubHelp home page GithubHelp logo

language-java's Introduction

Atom and all repositories under Atom will be archived on December 15, 2022. Learn more in our official announcement

Java language support in Atom

build Dependency Status

Add syntax highlighting and snippets to Java/JSP files in Atom.

Originally converted from the Java TextMate bundle.

Contributions are greatly appreciated. Please fork this repository and open a pull request to add snippets, make grammar tweaks, etc.

language-java's People

Contributors

0xc0 avatar 50wliu avatar aeschli avatar anson0370 avatar ben3eee avatar brennenberkley avatar chbk avatar cscherryy avatar damieng avatar danielct1995 avatar darangi avatar eskibear avatar jasonrudolph avatar kevinsawicki avatar lee-dohm avatar mnquintana avatar moritzkn avatar noseglid avatar okbel avatar otep avatar sadick254 avatar sadikovi avatar snjeza avatar spirou07 avatar torn4dom4n avatar vigilans avatar yihangho avatar yoseldvp 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

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

language-java's Issues

new does not work with ternary expressions

Prerequisites

Description

Simple test case:

class Test
{
  public void test()
  {
    test ? new Object() : new Object();
  }
}

The colon and the second new are not tokenized properly.

Steps to Reproduce

Copy/paste the above snippet into Atom and set the grammar as Java.

Versions

[email protected]

No volatile keyword

In java there is a keyword "volatile", it works very similar to syncronized, but only in variables.

Syntax highlighting of ternary if statements get confused with object creation and strings

Prerequisites

Description

Syntax highlighting for Java ternary operator is confused when used with the 'new' keyword and strings that have ':' character in them.
((1==1) ? new Date().toString() + " : " : "");
The above example makes the first '"' character not start a string. Therefore '?' matches with the first ':' it sees. It also breaks the syntax highlighting for the rest of the file. Although the problem can be easily solved by getting 'new Date()' into paranthesis, this is still a valid Java code and should be highlighted correctly.

Steps to Reproduce

  1. Set grammar to Java
  2. type this:
    ((1==1) ? new Date().toString() + " : " : "");
  3. Type more lines below to see the effect.

Expected behavior: '?' should only match the first valid ':' character, which is the second one in my case.

Actual behavior: It matches the first one it sees instead.

Reproduces how often: Always

Versions

OS: macOS: Sierra

$ atom --version
Atom    : 1.18.0
Electron: 1.3.15
Chrome  : 52.0.2743.82
Node    : 6.5.0
$ apm --version
apm  1.18.1
npm  3.10.10
node 6.9.5 x64
python 2.7.13
git 2.11.0

Java looks awful on Atom One syntax theme

or_mi7aan3oqjsk-riiq0fzianld-f4eg333bfd8oli

Looks like words that aren't keywords, etc are colored yellow instead of white. I'm not sure if this is a language problem or a problem with Atom One - let me know if I should post this over there!

Missing scopes on brackets and parentheses

Brackets and parentheses aren't scoped, they are the same color as variables:

javab

list[i] = (sum == n ? true : false);

Sometimes they can be distinguished in an identifier class:

javag

public static void main(String[] args) {

}

But they still aren't scoped:

javac

Resources part of the try-with-resources statement does falsely require a trailing semicolon

Description

The resources part of the try-with-resources statement does falsely require a trailing semicolon.

Steps to Reproduce

  1. Open new file
  2. Enter:
class Main {
    public static void main() {
        try (Foo foo = bar) {
            
        }
    }
}

Expected behavior:
The meta.try.resources.java scope ends at the closing parenthesis and the try body gets the scope meta.try.body.java.

Actual behavior:
The meta.try.resources.java scope does never end and the try body still has the scopes meta.try.resources.java and meta.definition.variable.java.

Reproduces how often:
100%

Versions

Reproduced in:

$atom --version 
Atom    : 1.16.0
Electron: 1.3.13
Chrome  : 52.0.2743.82
Node    : 6.5.0

(build from source)

With language-java at 0.27.0 and in master (i.e. 7b4c32a).

$ uname -a
Linux arch-pc 4.10.11-1-ARCH #1 SMP PREEMPT Tue Apr 18 08:39:42 CEST 2017 x86_64 GNU/Linux

Other issues

Support for try-with-resources was originally added in #80 after being reported in #79.

Additional Information

The Java Spec defines the syntax of this language element as:

TryWithResourcesStatement:
    try ResourceSpecification Block [Catches] [Finally]
ResourceSpecification:
    ( ResourceList [;] )
ResourceList:
    Resource {; Resource}
Resource:
    {VariableModifier} UnannType VariableDeclaratorId = Expression

See: http://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.20.3

Therefore the semicolon after the "ResourceList" is optional. Furthermore the resources in the try-with-resources can't be arbitrarily code (link it is currently the case), but have to be a special kind of assignment.

Relevant source code: grammars/java.cson L532

I would fix it myself but I have no time at the moment + few experience with atom grammars, but maybe i have some time to look into it in the future.

Keyword "strictfp" not recognized

Prerequisites

Description

The keyword strictfp does not get recognized as a keyword, although it is a valid one.

Steps to Reproduce

  1. Create a class or method
  2. Add strictfp as a modifier

Expected behavior: Recognition as a keyword (i.e. syntax highlighting)

Actual behavior: It is treated as regular source code

Reproduces how often: 100%

Versions

  • Atom: 1.16.0
  • Electron: 1.3.13
  • Chrome: 52.0.2743.82
  • Node: 6.5.0
  • apm: 1.16.1

Additional Information

strictfp

strictfp2

Support default keyword

I'm trying to add syntax highlighting to the default word in code like this:

public interface Lion {
    default void roar() {
        // roar
    }
}

However, the only selectors available seem to be .meta.method.return-type. Is there any plan to add Java 8 stuff like this and maybe add the default word to something like .storage.modifier or something?

Constructor reference breaks syntax highlighting

Using a constructor reference within a code block in .rst or .md files breaks syntax highlighting for everything after that code block. I do believe this is an issue with the java grammar, as I was able to reproduce it with both of the aforementioned languages.

A screenshot showing the faulty highlighting in a java code block within a .rst file can be found here.

The error only occurs on constructor references (SomeClass::new), normal method references (SomeClass::someMethod) work fine.

There's nothing identifying catch blocks

There's no scopes set on stuff in catch blocks. See this simple example:

class MyClass {
  public static void main(String[] args) {
    try {
    } catch (Exception exception) {
    }
  }
}

screen shot 2016-06-09 at 18 26 15

I would find it beneficial if there were a scope set on everything within the parenthesis (Exception, andexception in my example). What would that scope be called?

Add patterns for JSP expression language (EL)

Currently the JSP expression language just includes the normal java syntax (See jsp grammars line 80), but actually JSP EL has a quit different syntax then Java.

See: JSP EL on tutorialspoint or the spec (probably a bit overkill)

A few exampel JSP EL snippets :

${foo eq bar}
${fn:contains(true, 'x') ? bar : 'foo'}
${bar mod 10 eq 0}
${bar('some longer string', bar())}
${param["username"]}
${fn:indexOf(pageContext.session.getAttribute('bar'), 'foo') eq -1}

Commented method after constructor is not highlighted properly

Description

I have noticed that commented a method after a constructor leaves it the usual color, i.e. it is not greyed out. I have tried with a fresh install on Arch Linux 64bit and the bug is still there.

Expected behavior:
Proper highlight is triggered when the object is not constructed right before, as you can see here.
spectacle ea7400

Actual behavior:
When doing the two steps in one shot, the problem arises: as you can see .setAppName(...) is not grayed.
spectacle uv7400

Versions

My system is Arch Linux 64bit (up-to-date).

Atom version:

Atom    : 1.16.0
Electron: 1.4.16
Chrome  : 53.0.2785.143
Node    : 6.5.0

Apm version:

apm  1.18.1
npm  4.5.0
node 7.10.0 x64
python 2.7.13
git 2.13.0

Failed to load a language-java package grammar

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.17.0 ia32
Electron: 1.3.15
OS: Unknown Windows version
Thrown From: language-java package 0.27.0

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json' in C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json

Error: ENOENT: no such file or directory, open 'C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.17.0/resources/app/node_modules/language-java/grammars/junit test report.json:1:1

Commands

Non-Core Packages

angular-2-typeScript-snippets 0.6.3 
atom-bootstrap3 1.2.12 
atom-typescript 11.0.3 
color-picker 2.2.5 
emmet 2.4.3 
file-icons 1.7.25 
platformio-ide-terminal 2.5.0 
v-bootstrap4 0.1.8 

Support highlighting for javadoc

Currently, as of version 0.17.0 of the package, there is no javadoc highlight. I could not find option to enable it either. What do you think about adding this feature? Or have you considered adding it in the past? For example, language-scala supports highlighting, so we could just implement something very similar, I guess.

@50Wliu I would appreciate your feedback on this, thanks.

do {} while( )

It would be helpful, if a command for do-while-loop exist =)

Auto-Indent does not indent single-line blocks (Java)

Hi there,

This is probably a long-existing issue, but it's the first time I use auto-indent and I suspect it's the language-java scheme that determines how auto-indent behaves in java files? If not, let me know.

This should illustrate the difference between blocks with brackets and those without:
autoindent2

Cheerio.

Syntax highlighting confused by JSTL replace pattern

Description

The syntax highlighting for JavaServer Pages is being thrown off by a JSTL string replace pattern that consists of an escaped single quote:

<c:set var="foo" value="${fn:replace(entry.name, '\\'', '&#39;')}" />
<c:set var="bar" value="test" />

The problem is with the '\\'' segment.

Steps to Reproduce

  1. Open a new editor tab and set the language to JavaServer Pages
  2. Paste in the lines above

Expected behavior: [What you expect to happen]

The syntax highlighting rules should catch the mismatched single quotes and ignore them.

Actual behavior: [What actually happens]

The odd number of single quotes confuses the syntax highlighter, and it treats any successive lines in the file as being string values.

Reproduces how often: [What percentage of the time does it reproduce?]

100%

Versions

Atom 1.15.0 x64
Running on OS X 10.11.6

Failed to load a language-java package grammar

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.18.0 ia32
Electron: 1.3.15
OS: Unknown Windows version
Thrown From: language-java package 0.27.1

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\ely.christie\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json' in C:\Users\ely.christie\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json

Error: ENOENT: no such file or directory, open 'C:\Users\ely.christie\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.18.0/resources/app/node_modules/language-java/grammars/java server pages (jsp).json:1:1

Commands

Non-Core Packages

color-picker 2.0.14 
minimap 4.19.0 
pigments 0.19.5 

The cmd+/ "comment" keymap for JSP outputs XML comments rather than JSP comments

A JSP code comment consists of an opening bracket, percentage symbol, and two dashes, for example:

 <%-- This is a JSP comment --%>

However, when invoking the command + slash keymap for toggling a comment on/off in a JSP page, an XML-style comment is output instead.

 <!-- This is an XML/HTML comment -->

JSP-style comments should be used when working in JSP pages.

Try-with-resources not colored

Description

Hello, I noticed that Try-With-Resources statements are not colored.
screenshot-0

Expected behavior: You would expect them to be colored just as regular Java code.

Reproduces how often: Always

Versions

➜  ~ atom --version
Atom    : 1.14.3
Electron: 1.4.15
Chrome  : 53.0.2785.143
Node    : 6.5.0
➜  ~ apm --version
apm  1.15.2
npm  4.2.0
node 7.5.0 x64
python 3.6.0
git 2.11.1
➜  ~ uname -a
Arch Linux 4.9.8-1-ARCH #1 SMP PREEMPT x86_64 GNU/Linux

Thank you !

Failed to load a language-java package grammar

Steps to reproduce:

  1. Start Atom

Atom: 1.17.0 ia32
Electron: 1.3.15
OS: Microsoft Windows 10 Pro
Thrown From: language-java package 0.27.0

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\Matt\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json' in C:\Users\Matt\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json

Error: ENOENT: no such file or directory, open 'C:\Users\Matt\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\junit test report.json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.17.0/resources/app/node_modules/language-java/grammars/junit test report.json:1:1

Commands

Non-Core Packages

autoclose-html 0.23.0 
script 3.15.0 

Doesn't gray out comment blocks inside method/constructor parameter list

This snippet works correctly (comment is grayed out):
(/* comment */)

This one does not (comment is not grayed out):
method(/* comment */)

Full example with bug:
public Constructor(String p1, String p2/*, String p3*/)

Full example without bug:
public (String p1, String p2/*, String p3*/)

Capital variables tokenized as storage types

Prerequisites

Description

When using capital variables in code, they are tokenized incorrectly as storage types. Currently, they shouldn't be tokenized as anything.
storage-type-variables

Steps to Reproduce

  1. Open a Java file and create the class/method boilerplate
  2. int G = 0; inside a method
  3. G += 3;

Expected behavior: G on the third line shouldn't be tokenized as anything special

Actual behavior: G is tokenized as storage.type.java

Reproduces how often: 100%

Versions

You can get this information from copy and pasting the output of atom --version and apm --version from the command line. Also, please include the OS and what version of the OS you're running.

Atom version doesn't matter. I'm running language-java commit d9b52c2.

Member definitions does not get correct scopes

I'm trying to use the scopes for some parsing of the java file. However, it seems as members of a class does not get scope meta.definition.variable.java unless it is also defined inline:
screen shot 2016-05-15 at 9 44 18 am
screen shot 2016-05-15 at 9 42 21 am

Is this intended or a bug/oversight?

The linter fails when functions has too many arguments

The syntax highlighting gets messed up when the number of arguments to a function is large. I am not sure if this is a language-java issue in particular. But this is what I mean:

screen shot 2014-03-23 at 12 40 42 pm

There is nothing wrong with the code. It renders with no syntax errors on Eclipse.

You can import this file: https://code.google.com/p/foursquare-api-java/source/browse/trunk/src/main/java/fi/foyt/foursquare/api/FoursquareApi.java in the editor to recreate the issue.

VS Code cannot treat java file which contains large 'enum'.

From @ciiwol on August 3, 2017 8:15

  • VSCode Version: 1.14.2 (32bit, 64bit both have problem with this)
  • OS Version: Windows 7

Steps to Reproduce:

  1. Create an empty java file.

  2. Open it with notepad.exe and type this -> 3 times or more.

public enum test {
AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF, AAAAAAAAAAA, BBBBBBBBBB, CCCCCCCCCC, DDDDDDDDDD, EEEEEEEEEE, FFFFFFFFFF,
}

  1. Save the file, and open it with VS Code.

  2. Observe. It'll take very long time to open and applying syntax highlight.

Reproduces without extensions: Yes

Copied from original issue: microsoft/vscode#31958

Failed to load a language-java package grammar

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.18.0 ia32
Electron: 1.3.15
OS: Unknown Windows version
Thrown From: language-java package 0.27.1

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\guohd\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json' in C:\Users\guohd\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json

Error: ENOENT: no such file or directory, open 'C:\Users\guohd\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.18.0/resources/app/node_modules/language-java/grammars/java server pages (jsp).json:1:1

Commands

Non-Core Packages

atom-ternjs 0.16.1 
language-vue 0.23.0 
language-vue-component 0.5.0 
vue-autocomplete 0.1.1 

Coloring is too BAD

In dark solarized theme & ubuntu 14.04,
Most color used in under source code is just blue!
Better colored source codes make users better to get into code.

package hello;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.client.RestTemplate;

@SpringBootApplication
public class Application implements CommandLineRunner {

    private static final Logger log = LoggerFactory.getLogger(Application.class);

    public static void main(String args[]) {
        SpringApplication.run(Application.class);
    }

    @Override
    public void run(String... strings) throws Exception {
        RestTemplate restTemplate = new RestTemplate();
        Quote quote = restTemplate.getForObject("http://gturnquist-quoters.cfapps.io/api/random", Quote.class);
        log.info(quote.toString());
    }
}

To be specific,

in function signature,

scope returnType functionName (arguments)

are just blue color.

even import are all colored blue..

import pakagePath.function

make pakagePath and Function should be colored differently for user interface.

Even, className is colored blue.

Therefore, I suggest to change coloring policy for Java source code.

Dollar should be part of identifiers

I opened a similar issue for JavaScript: atom/language-javascript#374

Frankly, I dont use Atom to edit Java code, I use Eclipse instead. Given the low number of issues here, either I am not alone, or you are very good... 😛

OK, let's repeat the gist of the previous issue:

Atom 1.7.3, Windows 7, although the latter is probably not relevant...

AFAIK, $ is part of the valid characters in identifiers, like underscore. Yet it is treated as a foreign punctuation character in many features of Atom.
Examples:

  • Double click to select the identifier: the $ isn't selected (if prefix or suffix) or stops the selection (in the middle).
  • Word move with Ctrl+Left / Right arrow: stops on $
  • Search log with Whole Word option: selects the log part of $log.
  • If an identifier has a $ in its middle, the part after the $ is highlighted differently.

I know that Sun recommended not to use $ in identifiers, keeping this usage for themselves, but yet it is a valid char, and should be treated as such.

Failed to load a language-java package grammar

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.17.0 ia32
Electron: 1.3.15
OS: Unknown Windows version
Thrown From: language-java package 0.27.0

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json' in C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json

Error: ENOENT: no such file or directory, open 'C:\Users\cdiaz\AppData\Local\atom\app-1.17.0\resources\app\node_modules\language-java\grammars\java server pages (jsp).json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.17.0/resources/app/node_modules/language-java/grammars/java server pages (jsp).json:1:1

Commands

Non-Core Packages

angular-2-typeScript-snippets 0.6.3 
atom-bootstrap3 1.2.12 
atom-typescript 11.0.3 
color-picker 2.2.5 
emmet 2.4.3 
file-icons 1.7.25 
platformio-ide-terminal 2.5.0 
v-bootstrap4 0.1.8 

Failed to load a language-java package grammar

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.18.0 ia32
Electron: 1.3.15
OS: Microsoft Windows 10 Pro
Thrown From: language-java package 0.27.1

Stack Trace

Failed to load a language-java package grammar

At ENOENT: no such file or directory, open 'C:\Users\meet_\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\junit test report.json' in C:\Users\meet_\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\junit test report.json

Error: ENOENT: no such file or directory, open 'C:\Users\meet_\AppData\Local\atom\app-1.18.0\resources\app\node_modules\language-java\grammars\junit test report.json'
    at Error (native)
  at ~/AppData/Local/atom/app-1.18.0/resources/app/node_modules/language-java/grammars/junit test report.json:1:1

Commands

Non-Core Packages

atom-babel-compiler 2.3.1 

New constructor does not stop correctly

Prerequisites

Description

Wrong markdown syntax highlighted for java code block.

Steps to Reproduce

  1. input java code block:
A[] a = new A[4];
A[] b = {new A(), new A(), new A()};
A c = new A[]{new A(), new A()};

Expected behavior: hard to say.

Actual behavior:
tim 20170521162947

Reproduces how often: Always.

Versions

Atom : 1.17.0
Electron: 1.3.15
Chrome : 52.0.2743.82
Node : 6.5.0
language-gfm : 0.88.1
language-java : 0.27.0

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.