Git Product home page Git Product logo

codeswarm's People

Watchers

 avatar

codeswarm's Issues

convert_logs.py Hangs

When I run

"python convert_logs.py -s test_files/svn_log.txt -o my.xml"

the script never returns anything. The traceback:

  File "convert_logs.py", line 136, in <module>
    main()
  File "convert_logs.py", line 96, in main
    line = file_handle.readline()

I've tried changing the enline of the log to remove the ---- line, etc. Nothing 
seems to change 
anything.

What version of the product are you using? On what operating system?

Using version 2.5.1 of Python on 10.5

Original issue reported on code.google.com by [email protected] on 23 Jun 2008 at 10:21

Parallelize saving images

I noticed that fps drops heavily when dumping images to file, but that 
processor usage isn't often 
100%

Initially I thought that this was because ImageIO.write flushes its output, and 
that perhaps it was 
spending a while blocking while the OS waits on the disk.  On further 
inspection, it seems like most 
of the time went into actually encoding the image rather than writing it out.

In any case, a fairly straightforward thread pool implementation has given ~40% 
speedup in my 
tests.  On more multiprocessor machines I'd expect an even more substantial 
improvement.  I've 
attached a patch with my code.

More info here: 
http://github.com/rictic/code_swarm/commit/ea68f4dbc5a88605379225263a1853838c3a0
581

Original issue reported on code.google.com by [email protected] on 24 Aug 2008 at 2:17

Attachments:

Modularize Physics

As an alternative to branching, we could make a class for each physics
model, extending an abstract one. Then users can choose the model they want
at runtime and specify some options in the config file. It would also be
easy for them to create their own models if they are so inclined.

Original issue reported on code.google.com by [email protected] on 13 Jul 2008 at 3:22

runrepositoryfetch.sh: 58: [[: not found

Hi!

I'm running the latest version of codeswarm against my project's SVN at
https://w3af.svn.sourceforge.net/svnroot/w3af . After fetching the commit
logs, the show starts and I see a lot of activity and the nice screen with
the blinking dots, the users, etc appear.

After some time, I get a cryptic message that says "runrepositoryfetch.sh:
58: [[: not found" and the process just ends and the frames directory is
empty. Here is a console output:

dz0@brick:/tmp/codeswarm-read-only$ sh runrepositoryfetch.sh
code_swarm project !
Specify a config file, or ENTER for default one [data/sample.config] : 
Jan 15, 2009 11:12:19 PM org.codeswarm.repository.svn.SVNHistory
handleFetchingLatestRepositoryRevision
FINE: skip fetching 2330 (latest revision is 2,330) for
https://w3af.svn.sourceforge.net/svnroot/w3af
runrepositoryfetch.sh: 58: [[: not found
bye
dz0@brick:/tmp/codeswarm-read-only$ ls frames/
dz0@brick:/tmp/codeswarm-read-only$ 

I'm running the latest version of Ubuntu, with all packages up to date.
Could you please help me? Thanks!

Original issue reported on code.google.com by [email protected] on 16 Jan 2009 at 1:21

patch: proper bold font names and other fixes

This patch allows fonts like "Liberation Mono Bold" to be used as the bold
font ("Liberation Mono.bold" doesn't exist).

Also, the minBold calculation was wrong.

Original issue reported on code.google.com by felipe.contreras on 6 Sep 2008 at 2:23

Attachments:

Support to convert Starteam history

Hi All,

    I modified convert_logs.py to support Starteam.

    You could use command line utility stcmd.exe to dump history

    stcmd.exe hist -p <url> -nologo -is > project_name.log
    convert_logs.py -t project_name.log -o project_name.xml

Original issue reported on code.google.com by [email protected] on 11 Jul 2008 at 3:36

Attachments:

SVN paths with spaces (convert_logs)

Still hanging on my computer but I got a friend to convert a log for me and the 
paths were clipped 
after any space.

This is with Python 2.5.1 on OS X.

Original issue reported on code.google.com by [email protected] on 24 Jun 2008 at 3:56

End support and distribution of Processing prototype

Now that the Java version is in better shape and working off an
easier-to-edit config file, we can end the support and distribution of the
old Processing prototype. Is there any reason to NOT remove it from the trunk?

Original issue reported on code.google.com by [email protected] on 7 Jul 2008 at 4:10

Configuration presets

What steps will reproduce the problem?
1. setup: checkout, build
2. configure
3. run
4. if next project and different language 2

What is the expected output? What do you see instead?

 Would like to have predefined configuration presets (java, c, ...).
 Those presets to be merged, in case you want to visualize history of
repository with multiple languages used.

What version of the product are you using? On what operating system?

 Todays trunk.

Please provide any additional information below.

 It would make user experience in configuration step much friendlier.

 Preset:
  - Configuration settings referenced from projects configuration by name.
  - Contains information about patter to color mapping, engine and
configuration flags.
  - Since file-color mappings are defined by regular expressions, list of
colors can be easy merged.
  - To avoid conflicts in setting like engine used, I suggest to:
    -divide presets into categories that names would reflect configuration
area,
    -or warn user about conflicting setting and emulate map behavior, last
write wins.

 Two types of presets.
  - Predefined presets:
    -define file-colors mappings for common file sets,
    -define rendering settings.
  - User presets, whatever user wishes to have.

 Reference to preset could be similar to InputFile.

Original issue reported on code.google.com by hubert.iwaniuk on 6 Aug 2008 at 8:12

URL for repository limited to 67 Characters

What steps will reproduce the problem?

1. When prompted for the RepositoryURL, enter a URL longer than 67 characters

What is the expected output? What do you see instead?

Crashes with the message: 
[java] Exception in thread "Thread-2" java.lang.IllegalArgumentException:
Key too long

What version of the product are you using? On what operating system?

URL: http://codeswarm.googlecode.com/svn/trunk
Repository Root: http://codeswarm.googlecode.com/svn
Repository UUID: eda9c206-d64f-0410-a2f2-67f3fa0499ed
Revision: 247
Node Kind: directory
Schedule: normal
Last Changed Author: nawglan
Last Changed Rev: 245
Last Changed Date: 2008-08-26 07:30:59 -0600 (Tue, 26 Aug 2008)

Windows XP Pro

Please provide any additional information below.

java.util.prefs.Preferences object has a MAX_KEY_LENGTH property of 80.
This is used in the putLong call on line 93 of SVNHistory.java

Original issue reported on code.google.com by [email protected] on 28 Oct 2008 at 9:57

font-size changes do not scale well

What steps will reproduce the problem?
1. set the font or bold-font size larger than the defaults

What is the expected output? What do you see instead?
Expected: legend/date that doesn't overlap.   Seen: fonts that *do* overlap.   
;)

What version of the product are you using? On what operating system?
current SVN trunk (HEAD)

Please provide any additional information below.

 Attached is a patch that uses the size property of the font option to scale the legend and date 
accordingly.

Original issue reported on code.google.com by [email protected] on 8 Aug 2008 at 7:52

Attachments:

patch to support git in convert_logs.py

The attached patch allows to use git repositories to generate activity xml
files.

The git-log output should be prepared with this options to mimic svn log
output:

git-log --name-status
--pretty=format:'%n-------------------------------------------------------------
-----------%nr%h
| %ae | %ai (%aD) | x lines%nChanged paths:' > activity.log

Original issue reported on code.google.com by [email protected] on 28 Jun 2008 at 5:33

Attachments:

Incomplete classpath in both build.xml and run.sh

What steps will reproduce the problem?
1. ant run

1. sh run.sh

What is the expected output? What do you see instead?
Successful build, running project.


What version of the product are you using? On what operating system?
Latest.  svn checkout http://codeswarm.googlecode.com/svn/trunk/ code_swarm


Please provide any additional information below.

You can fix this by including ${libs}/vecmath.jar in your build classpath
in build.xml.  Also, similar changes need to be made to the execution
classpath in run.sh.  I can provide patches or fixed versions of the files
if necessary.

Original issue reported on code.google.com by [email protected] on 23 Jul 2008 at 3:42

CVS log parsing

What steps will reproduce the problem?
1. Converting a CVS log to xml file

I've started using this today, but I had to change manually
convert_logs/convert_logs.py to make the xml, the problem as date parsing.

I'm from a Debian Lenny, on SVN HEAD of code_swarm.

The little changes I've made are at attached file.

Original issue reported on code.google.com by [email protected] on 20 Jul 2008 at 7:11

Attachments:

discussion group

it would be great to have a google group for ideas and discussions : better
than in opening issues or adding comments to the wiki, don't you think ?
it's very easy today to open a google group and to add the link from the
'project home' page.

Original issue reported on code.google.com by [email protected] on 23 Jun 2008 at 8:18

Headless mode

It'd be nice to have a 'headless mode' that will just generate the png's
without any further gui.

Original issue reported on code.google.com by arnout.engelen on 9 Aug 2008 at 12:36

CVS logs are not converted properly

What steps will reproduce the problem?
1. First I got CVS activity.log by passing:
cvs log > activity.log
2. Then, I tryed to convert it into XML that code_swarm needed by passing: 
./convert_logs.py -c /var/www/wkpl/activity.log -o test.xml

What is the expected output? 
I expected to get XML document that is well formed for code_swarm :)

What do you see instead?
I got an error msg:
ValueError: time data did not match format:  data=2009-01-09 10:01:37 +0400
 fmt=%Y/%m/%d %H:%M:%S


What version of the product are you using? On what operating system?
CVS-client version is 1.12.13
Ubuntu 8.04
Code_swarm from your SVN (hope there is a latest version there)

Please provide any additional information below.
So, to fix this issue I tryed to change puthon scipt. Here is the svn diff
output:
dekoo@denis-laptop:/opt/codeswarm/convert_logs$ svn diff
Index: convert_logs.py
===================================================================
--- convert_logs.py (revision 255)
+++ convert_logs.py (working copy)
@@ -155,8 +155,9 @@
                     if(rev_line.lower().find("date:") == 0):
                         rev_parts = rev_line.split(';  ')
                         date_parts = rev_parts[0].split(": ")
-                        date = time.strptime(date_parts[1], '%Y/%m/%d
%H:%M:%S')
-                        date = int(time.mktime(date))*1000
+                        date_without_plus = date_parts[1].split("+");
+                        date = time.strptime(date_without_plus[0].strip(),
'%Y-%m-%d %H:%M:%S')
+            date = int(time.mktime(date))*1000
                         author = rev_parts[1].split(": ")[1]
                         event_list.append(Event(filename, date, author))

Now all work great for me.
Anyway thanks for this application, it rocks.

PS: Sorry for my bad english...

Original issue reported on code.google.com by [email protected] on 1 Feb 2009 at 7:41

File physics goes bonkers in some cases with many files being commited/modified

What steps will reproduce the problem?

1. Generate the movie using config and xml attached
2. Watch movie ;)

The problem I am seeing is that when someone touches a LOT of files, which
we do sometimes in our project (small team, large codebase - sweeping
changes) names that are attached to a lot of files start wonking around
like crazy, like - from the bottom of the screen to the top of it, dragging
all the related files around...

Original issue reported on code.google.com by [email protected] on 18 Jul 2008 at 11:06

Attachments:

Add support for event weight

A non-required (optional, defaulting to 1) weight parameter should be
supported for the xml event format and also used inside of the code to
augment the length of time that a event node stays alive.

The data wishlist lists MediaWiki as one of the data formats it wants to
support (I'm a MediaWiki dev, I might try building a dual-mode tool to help
with this).

However MediaWiki is a fair bit different than other VC's. It's normally
founded around openness and as such the way users edit is not uniform due
to it's implicit access. Unlike with projects using explicit access there
are a number of users who may commit large numbers of small commits instead
of using preview and committing their work at once.

For this reason it would be helpful to have a optional weight for events.
Depending on the log converter, format, and options when a event list is
created we can add a weight to events to augment it's strength.
For example with MediaWiki we may want to introduce an option to generate a
weight based on the size data that MediaWiki offers, something along the
lines of halving negative commits and making things absolute.

Original issue reported on code.google.com by [email protected] on 20 Jul 2008 at 4:45

possibility to run it without the Processing IDE

Hi !
I'm very exited by this project, but it's very hard to get started and to
understand (for people new to Processing).

It would be great to have the possibility to build codeswarn without the
Processing IDE (ant, maven, buildr, whatever...) and to run it from the
command-line. I saw processing librairies in the svn : so we don't need to
download Processing ? can we use processing as external jar only ? Is it
possible to build some artifact from the command line ? I guess it is.

I would be thrilled to help (I am a java developper), but I need to
understand how to make it work, how to build it, how to run it.

ps : more doc ! more doc ! more doc !
ps : less processing IDE ! less processing IDE ! less processing IDE ! 

Original issue reported on code.google.com by [email protected] on 23 Jun 2008 at 8:07

Many physic code similarites could be merged

Many physic related methods share same behaviours, with only small real
differences (or not realy justified)

I'm thinking of (and have started to) merging those methodes and
attributes, then moving them up to the newly created "Drawable" class.

=> then, behavioral differences (between files and persons) would be
managed only by parameters

Namly :
- update()
- freshen()
then
- relax()

Code now shows javadoc's @todo where appropriate.

Do I move on this track a bit more ?

Original issue reported on code.google.com by [email protected] on 6 Jul 2008 at 12:48

run.sh bug with non-default config files.

What steps will reproduce the problem?
1. $ ./run.sh
2. Type a config file path (i.e: data/project.config).
3. Press enter

What is the expected output? What do you see instead?
code_swarm project !
Specify a config file, or ENTER for default one [data/sample.config] : 
data/project.config
Specify a config file.
bye

What version of the product are you using? On what operating system?
http://codeswarm.googlecode.com/svn/trunk@202 on Ubuntu Hardy

Please provide any additional information below.
{{{
diff --git a/run.sh b/run.sh
index 5270683..1807b0e 100755
--- a/run.sh
+++ b/run.sh
@@ -14,7 +14,7 @@ if [ $# = 0 ]; then
     if [ ${#config} = 0 ]; then
         params=$default_config
     else
-        params=$key
+        params=$config
     fi
 else
     if [ $1 == "-h" ] || [ $1 == "--help" ]; then
}}}

Original issue reported on code.google.com by [email protected] on 22 Jul 2008 at 7:51

prototype/data directory is missing data files

What steps will reproduce the problem?
1. Checkout the svn repository to a new folder.
2. Open code_swarm.pde in Processing.
3. Click 'Run'.  Check out the error message:
"postgres-repository.xml does not exist or could not be read"

Or
1. user@ubuntux:~$ svn ls
http://codeswarm.googlecode.com/svn/trunk/prototype/data/
2. Observe there  are no data files present.



What is the expected output? What do you see instead?
The file postgres-repository.xml should be in the data folder.

What version of the product are you using? On what operating system?
Svn Revision 12 of code_swarm
Processing 0135 Beta
Ubuntu 6.10


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 20 Jun 2008 at 1:27

Add additional events

I'm thinking on tags, or releases.

Original issue reported on code.google.com by felipe.contreras on 30 Aug 2008 at 11:31

Add naration support

Add the ability to provide a file full of timestamp-event pairs, which is
parsed in order to display subtitles/naration events in text on screen for
certain periods of time. 

Each even may have parameters which dictate how long it stays, what effects
it might have, where it is positioned, etc. 

Original issue reported on code.google.com by [email protected] on 21 Jul 2008 at 10:14

Date-Issue, possible solution

I think you can leave out the Date-conversion in the python-script and put
it into the processing file:

In convert_logs.py:
line 86: comment out the conversions, leave date as it is, delete the
conversions
date = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')

In code_swarm.pde:
line 442: change
void loadRepEvents( String filename1 )
{
  XMLElement doc = new XMLElement( this, filename1 );

  // <--
  for( int i = 0; i < doc.getChildCount(); i++ )
  {
    XMLElement xml = doc.getChild(i);
    String filename = xml.getStringAttribute( "filename" );
    String datestr = xml.getStringAttribute( "date" );
    long date = Long.parseLong( datestr ); // <--
   [...]

to

void loadRepEvents( String filename1 )
{
  XMLElement doc = new XMLElement( this, filename1 );
  java.text.SimpleDateFormat format = new
java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // <--
  for( int i = 0; i < doc.getChildCount(); i++ )
  {
    XMLElement xml = doc.getChild(i);
    String filename = xml.getStringAttribute( "filename" );
    String datestr = xml.getStringAttribute( "date" );
   long date = format.parse(datestr, new java.text.ParsePosition(0)
).getTime(); // <--


it worked fine for me

Original issue reported on code.google.com by [email protected] on 26 Jun 2008 at 11:33

Project listing and default checkout code currently only lists the empty trunk - Confusion on HN.

The default checkout code, as well as the default project listing, only
points towards the now empty trunk.

EG:

svn checkout http://codeswarm.googlecode.com/svn/trunk/ codeswarm-read-only

This should be changed to 

svn checkout http://codeswarm.googlecode.com/svn/ codeswarm-read-only

Or, alternatively, we should emphasize that the existing code lives on
/prototype for now.


Original issue reported on code.google.com by [email protected] on 19 Jun 2008 at 8:23

convert_logs.py failing on line 82 if last log line is ------...

What steps will reproduce the problem?
1. export svn logs (svn log -v > my.log)
2. execute the convert_logs.py script (python convert_log.py -s my.log -o
my.xml)

What is the expected output? What do you see instead?
No output expected. The error says: 
Traceback (most recent call last):
  File "convert_logs.py", line 136, in <module>
    main()
  File "convert_logs.py", line 82, in main
    author = rev_parts[1]
IndexError: list index out of range

Easily fixed by ignoring the last line of the log.

Original issue reported on code.google.com by [email protected] on 22 Jun 2008 at 6:56

code_swarm.pde in Processing - type not found

When I open code_swarm.pde in Processing and trying to run it I get this error:

Type "PriorityQueue" was not found.

C:/DOCUME~1/zeke/LOCALS~1/Temp/build34882.tmp/Temporary_5364_2302.java:38:1:38:1
3:
Semantic Error: Type "PriorityQueue" was not found.


C:/DOCUME~1/zeke/LOCALS~1/Temp/build34882.tmp/Temporary_5364_2302.java:77:21:77:
33:
Semantic Error: Type "PriorityQueue" was not found.


C:/DOCUME~1/zeke/LOCALS~1/Temp/build34882.tmp/Temporary_5364_2302.java:358:5:358
:20:
Semantic Error: No applicable overload for a method with signature
"remove()" was found in type "java.util.LinkedList". Perhaps you wanted the
overloaded version "java.lang.Object remove(int $1);" instead?


Is it problem of the script or my environment?

Thanks in advance.

Original issue reported on code.google.com by [email protected] on 27 Jun 2008 at 8:12

Support for gij

I get a lot of errors when trying to compile with the java compiler that
comes with Fedora.

I'm attaching the output.

Original issue reported on code.google.com by felipe.contreras on 11 Jul 2008 at 7:16

Attachments:

NullPointerException in CodeSwarmConfig.stringToColor

What steps will reproduce the problem?
1. ant run
2. entered my svn repository url
3. sat and watched

What is the expected output? What do you see instead?

Expected: a nice visualization :)

Saw:

[java] Exception in thread "Animation Thread" 
java.lang.NullPointerException
[java]     at CodeSwarmConfig.stringToColor(CodeSwarmConfig.java:253)
[java]     at CodeSwarmConfig.getColorProperty(CodeSwarmConfig.java:161)
[java]     at code_swarm.setup(code_swarm.java:210)
[java]     at processing.core.PApplet.handleDraw(PApplet.java:1372)
[java]     at processing.core.PApplet.run(PApplet.java:1300)
[java]     at java.lang.Thread.run(Thread.java:595)

What version of the product are you using? On what operating system?

Not sure how to find a version number for this thing. I used:

rictic-code_swarm-f61cb18011dcbceb8bb3b9970899c16eebec91ce.zip

Windows XP SP3

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 28 Jan 2009 at 1:16

Convert_logs.py unsuitable code

What steps will reproduce the problem?
1. Use python 2.4.4 (python -V)
2. python convert_logs -s svn.log -o svn.log.xml
3.

What is the expected output? What do you see instead?
Expected : nothing ($? == 0) and the svn.log.xml correctly set
What I got : 
  File "./convert_logs.py", line 15
    class Event():
                ^
Syntax Error: invalid syntax

What version of the product are you using? On what operating system?
The last one r202

Please provide any additional information below.
I move the code line 15 from "class Event():" to "class Event:" and it works.

Original issue reported on code.google.com by [email protected] on 22 Jul 2008 at 3:06

Attachments:

Add incremental update ability

Basically,
If in the config:  IncrementalUpdate=true
Load nodes, edges, and people from disk if present.
Load xml event list (incremental since last run)
After processing export nodes, edges, people at the end of a run.

Other variables need to be exported also, showXXXXX (legend, date, etc.)

Original issue reported on code.google.com by nawglan on 15 Jul 2008 at 7:47

PriorityQueue not available on Mac

Due to Apple's lagging behind in Java technology, the PriorityQueue,
appearing in JDK 1.6, is not available on the Mac platform. This causes a
compiler error.

Original issue reported on code.google.com by [email protected] on 21 Jun 2008 at 8:46

Reduce startup time and memory footprint by loading xml via streams

... but don't break backwards compatibility by requiring that all input
always be sorted

The attached patch adds an option to code_swarm config files:
IsInputSorted

By default it's false, in which case code_swarm behaves as it always did. 
However, if it's true then the XML file is loaded in the background, and no
more than 5000 events will be held in memory at any given time.

The practical effect of this is that the visualization starts immediately
regardless of the size of the input, and memory usage stays constant at
about 50MB (+ screen buffers if you're encoding images).

The svn and git conversion methods seem to produce sorted input by default,
but mercurial for example does not.  I've provided a python script to sort
the repository xml files.

The code handles unsorted input when told that the input was sorted by
crashing early.

Original issue reported on code.google.com by [email protected] on 27 Aug 2008 at 9:36

Attachments:

convert_logs.py is not Python 2.4 compatible (patch included)

What steps will reproduce the problem?
1. Run convert_logs.py with Python 2.4

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system?
SVN trunk

Please provide any additional information below.

It is fairly trivial to support Python 2.4, and there are still plenty of
legacy Python installs out there. The patch to make convert_logs.py Python
2.4 compatible attached.

Original issue reported on code.google.com by [email protected] on 4 Jul 2008 at 10:15

Attachments:

white background

I think a white background as default would be better.
It will enhance the visibility of names and things.
You will also have to change some of the colors :(

Original issue reported on code.google.com by [email protected] on 25 Jun 2008 at 11:24

Add some time after the last event log

Add some (configurable) time after the last event log to let the
"simulation" show properly the last commits.

This is important for all users wo like to follow a project on a weekly
basis : as for now, the last events (last few weeks in fact) just appears
on the screen.

We should perhaps simple let the last node live its life before ending the
App (again, only as an option).

This should be realy simple to modify, with no side-effects.

Original issue reported on code.google.com by [email protected] on 18 Nov 2008 at 2:06

Move Eclipse project files to correct location

The Eclipse project files don't really add any value where they are located
now.  If the following moves were made:

  /eclipse/classpath => /.classpath
  /eclipse/project   => /.project

it would allow developers to create a fully functional Eclipse project from
SVN by just checking it out without doing any additional setup.

Creating a launch file such as 

  /eclipse/code_swarm-sample.launch

would create a pre-configured Run target that the developer could just pick
off the menu (and then use as a template for their own targets).


Original issue reported on code.google.com by tfmorris on 28 Sep 2008 at 6:29

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.