Giter VIP home page Giter VIP logo

antville's Introduction

About Antville

Antville is an open source project providing a high performance, feature-rich blog hosting software. Antville can host tens of thousands of blogs. Server power is the only limit. Installation and use is easy.

Antville is written in server-side JavaScript and developed with Helma Object Publisher. Antville works with a relational database in the back-end.

Look at the project site for more information.

Status

Antville’s codebase is of stable quality and ready for production deployment. Try out Antville.org for a demonstration.

There still could be bugs hidden in Antville’s source code. If you find one please let us know. The creators of Antville do not take any responsibility for what the software might do.

System Requirements

To run Antville you need Helma Object Publisher and a relational database software. We tested Antville with PostgreSQL and MySQLMariaDB should work, too.

To enable Antville sending notification e-mails you need access to an SMTP server.

Helma comes with an embedded webserver (Jetty) so you do not need to install one. Yet, you can also use the webserver of your choice.

For details please refer to the installation instructions of Helma Object Publisher and the corresponding software packages.

The INSTALL.md file contains detailed instructions to install Antville.

Documentation and Further Information

For documentation and further information about Antville you can refer to:

Feel free to ask any question about Antville at our support site.

Bug Reporting and Feature Requests

If you think you found a bug please let us know.

A great place for your feature requests or proposals is the project development site.

Antville is open-source, and we want to encourage you to change its code according to your likeness. We are curious about your ideas and suggestions. Feel free to drop us a message to [email protected] or through any channels mentioned before.

About Helma Object Publisher

Helma Object Publisher is an open source project providing a powerful, fast and scriptable web application server written in Java.

Define HopObjects and map them to a relational database table. Create, change and delete HopObjects at your whim using a comfortable object-container model. Manual fiddling around with database code is not necessary.

HopObjects extend the native JavaScript object. They got all the common features you know – and more. One highlight are the special templating features to ease the rendering of objects for the Web.

Combine HopObjects to create a hierarchical structure. A URL in Helma mirrors this structure. Each part of the URL path corresponds to a relational database mapping, similar to the document tree of static websites. Helma’s URL space is an analogy to the Document Object Model implemented in client-side JavaScript.

antville's People

Contributors

botic avatar dependabot[bot] avatar grob avatar hns avatar p3k avatar renovate[bot] 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

antville's Issues

More verbose "You are about to delete..."-query

Bei Antville 1.2 wird nur noch eine Nummer genannt, also:

Warning!
You are about to delete Story #12345.

Warning!
You are about to delete Image #67890.

... darunter kann man sich nicht viel vorstellen.

Wenn bei einer Story wie bisher ein Teil der Überschrift (bei fehlender
Überschrift die ersten Zeichen des Textes) statt der Nummer gezeigt würde,
wäre man sich sicherer, ob man mit dem Löschen fortfahren möchte.

Bei Comments wurde früher der Name des Autors genannt ("You are about to
delete a comment by ziwo") und bei Bildern/Files der Name desselben "You
are about to delete the image schoensteskatzenfoto.jpg" - wäre schön, wenn
es wieder so funktionieren würde.

http://code.google.com/p/antville/source/browse/trunk/code/HopObject/HopObject.j
s
Zeile 126ff

Original issue reported on code.google.com by [email protected] on 28 Oct 2009 at 3:38

Updater cannot access metadata properties in Antville

Due to Helma bug #616 the Updater application cannot access metadata
properties of a HopObject in Antville.

This is quite a trap when forgetting about the issue and generally results
in more complex code than necessary.

--
[1] http://helma.org/bugs/show_bug.cgi?id=616

Original issue reported on code.google.com by [email protected] on 15 Apr 2008 at 5:51

Calendar - links to the stories of a month

When you click the previous or next month on the calendar, only the stories
of one day (ie, the months first or last day with at least one story) is
displayed, without links to the "Previous page" and "Next page".

I suggest changing the link from just one day to the whole month, eg from
http://help.antville.org/archive/2008/11/10/ to
http://help.antville.org/archive/2008/11/ 



Original issue reported on code.google.com by [email protected] on 1 Dec 2008 at 4:12

Corresponding story/comment is not displayed anymore when entering a comment

When calling Story.comment_action() only the comment form is shown, the
corresponding story or story thread is missing.

This could be a progression bug related to the switch to mixed-case
HopObject properties in Helma [1] and related fixes in some Story skins [2].

--
[1] http://dev.helma.org/trac/helma/changeset/9325
[2] http://code.google.com/p/antville/issues/detail?id=20&can=1

Original issue reported on code.google.com by [email protected] on 11 Dec 2008 at 8:32

access to images

On "open" blogs like vari.antville.org, users can not access images/all,
while /galleries is open to everyone on blogs set as "open" or even "public".

I suggest opening the list of uploaded images on "open" blogs to all
registered users (or to all subscribers) - and restricting access to
/galleries on "public" blogs to owners and content managers because it
isn't easy to guess that tagging an image makes it easy to be found by
other people.
(Maybe /galleries/somegallery shouldn't stay accessible to everyone, too.)


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

The colorpicker is missing

The sophisticated, foolproof colorpicker [1] known from previous releases
isn't there or doesn't work any more.  

Changing the colours of headline, text, links etc. could hardly be easier -
in all those years, I don't remember anyone asking how it worked and noone
asking for help after erroneously e.g. setting text and background to the
same colour. ("Noone asked for it after its disappearance, either", but I
attribute that to the fact that no new weblogs were offered to the general
public.)


[1] http://www.antville.org/static/ideachamber/images/colorpicker.gif

Original issue reported on code.google.com by [email protected] on 29 Oct 2009 at 4:13

Repair legacy project site

The original version of project.antville.org (still running on Elise [1],
not the one on Adele [2]) is currently hardly usable.

Due to some redirection one always lands on a 404 error page on Adele.

--
[1] http://www.antville.org/project
[2] http://project.antville.org

Original issue reported on code.google.com by [email protected] on 26 May 2007 at 8:19

story.tags as=link doesn't create links

Inserted in the Story.content-Skin, <% story.topic as=link %> as expected
displays the name of the topic as a link to the (stories of the) topic. If
the story has multiple topics/tags, still only one tag will be displayed.
(This is a bit irritating, but on the other hand, the word "topic" is
singular.)

<% story.tags as=link %> displays all the tags of a story (which is fine),
but sadly, not as links. 

cf http://help.antville.org/stories/1890764/

Original issue reported on code.google.com by [email protected] on 15 Jun 2009 at 1:56

Fix XSS issues

There are two known cross site scripting issues that have been reported
already in 2005:

1. http://moritz-naumann.com/adv/0004/antvxss/0004.txt
2. http://blogs.23.nu/0test/stories/8443/

The first one is easily resolved by adding the encoding parameter set to
"all" to the <% request.path %> macro. I already patched the code at
antville.org manually; still needs to be committed to the repository, though.

The second one could be solved by removing any <script> tag from stories
and/or comments. Maybe I'll find some better, less radical solution, though.

Original issue reported on code.google.com by [email protected] on 27 May 2007 at 9:50

Provide sufficient protection for user passwords

User passwords are currently stored as plain text in the Antville database. 
According to current 
practice this is a big mistake, passwords should never be stored as readable 
chunks but rather as 
undecipherable code.

Moreover, Antville sends passwords as plain text through an unsecured HTTP 
channel which is 
another big no-no.

As a solution for this the whole registration and login process needs to be 
modified:

 * Passwords need to be encrypted by the client before they get sent
 * The database only stores the encrypted passwords
 * Login is granted if the encrypted password sent by the client matches the one stored in the 
database

As a consequence, the feature to send all accounts of an e-mail address becomes 
obsolete 
because it won't contain any useful information about passwords anymore. This 
should be 
handled by another issue.

Original issue reported on code.google.com by [email protected] on 2 Jun 2007 at 3:10

Image upload is broken in Safari

Both, user interface as well as functionality of the image upload are
currently broken in Safari (Mac OS X):

 1. The "Browse" button is almost completely hidden behind the input field.
 2. A file selected from the "Browse" dialogue causes an error

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

add back backup or export tools

it would be great if antville could have it's own import and export tools 
again, personally I think it would be best to export only actual data 
(i.e. user and text tables). Ideally single blogs could be exported and 
reinserted. 

I think only if this is a supplied piece of antville it will stay 
maintained, rather than disappearing like export.hac did or being, 
well, "unsupported" once there's issues arising. 
Supposedly this could be made available by the twoday.net folks?


Original issue reported on code.google.com by [email protected] on 26 Nov 2008 at 6:55

Newly created site only links to root in welcome message

Due to Helma bug #617 [1] the site macro handler in the User#welcome skin
becomes root. Thus, all links in the welcome message point to root actions
instead of to those of the actual site.

--
[1] http://helma.org/bugs/show_bug.cgi?id=617


Original issue reported on code.google.com by [email protected] on 15 Apr 2008 at 5:44

Initiate license change

The current license Antville is distributed with (Helma license) should be
replaced with a more common one.

A preliminary discussion is probably necessary and worthwhile to find out
if it should be Apache 2.0 or a more restrictive one (like GPL).

Original issue reported on code.google.com by [email protected] on 26 May 2007 at 6:22

Disable testing of layout on other sites

The current feature to test-drive a layout for a site is not restricted to
the site the layout belongs to.

Thus, it is possible to extract private information from other sites using
simple macros in the test layout.

Should be easy to fix by checking the site before displaying the test layout.

Original issue reported on code.google.com by [email protected] on 22 Jun 2007 at 2:31

Merge similar prototypes into one single prototype

Thanks to latest changes in Helma generic object references in collections
are now possible [1].

Thus, similar prototypes like Image and LayoutImage or ImageMgr and
LayoutImageMgr could and should be merged into one single prototype
(preferably called Image and ImageMgr in the example).

--
[1] http://grazia.helma.at/pipermail/helma-dev/2007-May/003586.html

Original issue reported on code.google.com by [email protected] on 3 Jul 2007 at 10:29

Set up test environment

There should be a complete and open mirror installation of antville.org
using a recent hotcopy of the database to ease the development and testing
of modifications.

Users should be able to take a look at their weblog with the modifications
*before* they actually are enabled on Elise.

Original issue reported on code.google.com by [email protected] on 26 May 2007 at 8:27

Referrer spam filter - bug in client side JavaScript

"Double prime symbols" in the referrer list are mistaken for those in the
code, resulting in problems displaying the list of referrers in most
browsers. (In antville 1.1, searches for "exact wordings" don't cause this
problem.)

http://help.antville.org/stories/1909152/


Original issue reported on code.google.com by [email protected] on 10 Jun 2009 at 12:49

Enable sysadmins to take notes about users and blogs

When several people take care of an Antville-community, there is the need
to let the others know who has blocked a user or blog for what reason, or
for how long, or until which conditions are met. Or to write why something
has not been blocked, or is under someones patronage etc. 

Sophisticated solutions are imaginable, but a new, big enough field in the
site and user administration (for each site/user) would largely do the job. 


Original issue reported on code.google.com by [email protected] on 29 Oct 2009 at 8:48

Add support for multiple topics

Currently, it's not possible to add more than one topic to a story or add
one image to more than one gallery.

This can be achieved by a complete rewrite of the topic management,
replacing topics with tags and keep a topic infrastructure only for
backwards-compatibility.

Still an open question is how multiple topics (or from now on: tags) should
be separated: by comma or by white-space? Quotes could be helpful but on
the other hand they make the handling more complicated...

Original issue reported on code.google.com by [email protected] on 4 Aug 2007 at 3:26

Overhaul Apache configuration

Elise's Apache configuration could need some editing. Besides specialities,
like the erroneous redirection of URLs of the legacy project site (already
covered in issue #2) or the log file format missing the hostname, the
rewrite rules should be cleaned up and the overall configuration should be
well-prepared for various situations like maintenance downtime etc.

Original issue reported on code.google.com by [email protected] on 26 May 2007 at 8:36

Replace outdated libraries with appropriate modules

Antville is still using the library methods of HelmaLib-1.0.zip and
AntvilleLib-1.4.zip.

In the meantime, most of these methods went into the Helma or core modules;
furthermore, the Jala project [1] provides many additional modules that
surely could be used in Antville.

--

[1] https://dev.orf.at/trac/jala

Original issue reported on code.google.com by [email protected] on 7 Jul 2007 at 12:29

Provide compatibility fix for deprecated story.link macro

Macros like <% story.link to="http://antville.org" text="foobar" %> are
broken since the new permission model denies rendering of such URLs [1].

This could be fixed by checking whether param.to or the corresponding
positional parameter, resp., defines a URL and in this case render it as
exception.

A decision whether this belongs into the compatibility layer or should be
built-in into the main code is still to be made.

--
[1] http://help.antville.org/stories/1811085

Original issue reported on code.google.com by [email protected] on 1 Jul 2008 at 9:56

Story skins shared with comments need updated

Probably due to the fixed Helma bug #617 [1] the "story" handler in Story
skins rendered by a comment will be resolved as story instead of as comment
(e.g. Story#history, Story#rss).

Working around this issue by setting res.handlers.story in the rendering
code failed because obviously the the story object in Helma's path takes
precedence when the "story" handler is set(?)

To fix this issue all affected subskins in each site layout's Story.skin
need an update, e.g. by replacing occurrences of "<% story." with "<% this.".

--
[1] http://helma.org/bugs/show_bug.cgi?id=617

Original issue reported on code.google.com by [email protected] on 14 Jun 2008 at 4:03

Move source code to subversion repository

SVN is the new CVS; thus, the source code currently hosted at helma.org
should be moved into a subversion repository.

Caveat: the most recent code in the current CVS is different from the one
in Elise's installation directory.

Original issue reported on code.google.com by [email protected] on 26 May 2007 at 8:10

Check for XSS results in infinite redirection loop

As described in [1] the code in trunk causes an infinite redirection loop
in certain circumstances.

We should find a piece of code that either works in all of the possible
settings or remove it.

--
[1]
http://groups.google.com/group/antville-dev/browse_thread/thread/c6b5606efe3a654
0/a3eef9f19f492b10?show_docid=a3eef9f19f492b10

Original issue reported on code.google.com by [email protected] on 30 Sep 2009 at 9:57

Export database skins to file system

For better maintainability the skins currently stored in the SQL database
should be exported to the file system.

Faster skin rendering could be a nice side-effect of this since reading
skins from the file system is efficiently done by Helma, anyway.

Original issue reported on code.google.com by [email protected] on 3 Jul 2007 at 10:20

Rename prototypes and skins and its references in upgrade app

Some prototype and skin names have been changed for convenience and
semantic reasons.

The updater app should take care of replacing as much occurrences of
affected references as possible.

Most "manager" prototypes (ie. ending with "Mgr") have been renamed to the
plural of the prototype they manage. Since most of the mountpoints mapped
to these prototypes are using these names already, the generic naming
scheme becomes more consistent.

Examples: 
 * StoryMgr => Stories
 * FileMgr => Files
 * ImageMgr, LayoutImageMgr => Images (dynamic parent mapping)
 * MemberMgr => Members (not Memberships!)

For semantic reasons or simply because of fundamental changes the following
prototypes were renamed:
 * Day => Archive
 * LayoutImage => Image
 * PropertyMgr => Metadata
 * Topic => Tag
 * TopicMgr, ImageTopicMgr => Tags
 * SysLog => LogEntry
 * SysMgr => Admin

Newly introduced prototypes are:
 * TagHub (n:m relation for mapping tags to stories and images)

Prototypes which became obsolete:
 * LayoutMgr
 * RootLayoutMgr


All skins of a prototype go as subskins in one skin file named after the
prototype.

The generic renaming rule is Bar/foo.skin => Bar.skin#foo.

Examples:
 * Site/page.skin => Site#page
 * Story/main.skin => Story#main

Exceptions of this rule are right now:
 * Comment/toplevel.skin => Comment#main
 * File/mgrlistitem.skin => File#listItem
 * FileMgr/new.skin => File#edit
 * Global/pagenavigation.skin => Global#pager
 * Global/pagenavigationitem.skin => Global#pagerItem
 * Image/mgrlistitem => Image#listItem
 * Images/new.skin => Image#edit
 * MemberMgr/new.skin => Members#add
 * MemberMgr/searchresult.skin => Members#results
 * MemberMgr/searchresultitem.skin => Members#result
 * MemberMgr/statusloggedin.skin => Membership#status
 * MemberMgr/statusloggedout.skin => Membership#login
 * MemberMgr/mailnewmember.skin => Membership/Messages#add
 * MemberMgr/mailregconfirm.skin => Membership/Messages#register
 * Membership/mailmessage.skin => Membership/Messages#contact
 * Membership/mailstatuschange.skin => Membership/Messages#edit
 * Membership/mailto.skin => Membership#contact
 * Membership/mgrlistitem.skin => Membership#listItem
 * Membership/subscriptionlistitem.skin => Membership#subscription
 * Poll/mgrlistitem.skin => Poll#listItem
 * Root/new.skin => Site#create
 * Root/list.skin => Root#sites
 * Root/page.skin => Site#page (inherited)
 * Root/javascript.skin => Site#javascript (inherited)
 * Root/style.skin => Site#stylesheet (inherited) 
 * Site/searchbox.skin => Site#search
 * Site/style.skin => Site#stylesheet
 * Site/preview.skin => Site#listItem
 * Site/referrerItem.skin => Site#referrer
 * Site/mostread.skin => Stories#top
 * Site/usernavigation.skin => Site#navigation
 * Site/welcomeowner.skin => User#welcome
 * Site/welcomesysadmin.skin => Admin#welcome
 * (SkinMgr and Skin prototypes currently undergoing fundamental changes)
 * Story/historyview.skin => Story#history
 * Story/backlinkItem.skin => Story#backlink
 * Story/dayheader.skin => Story#date
 * Story/display.skin => Story#content
 * Story/mgrlistitem.skin => Story#listItem
 * Story/mostread.skin => Story#top
 * Story/searchview.skin => Story#result
 * User/sitelist.skin => User#sites

Skins that have become obsolete (apart from those of prototypes which
became obsolete completely):
 * Global/prevpagelink.skin (???)
 * Global/nextpagelink.skin (???)
 * Global/rssImage.skin
 * Global/colorpicker.skin
 * Global/colorpickerExt.skin
 * Global/colorpickerScripts.skin
 * Global/colorpickerWidget.skin
 * Layout/chooserlistitem.skin
 * Layout/download.skin
 * Layout/edit.skin
 * Layout/mgrlistitem.skin
 * Layout/testdrive.skin
 * MemberMgr/mailpassword.skin
 * MemberMgr/sendpwd.skin
 * Root/notfound.skin (???)
 * Root/rss.skin
 * Root/sysError.skin
 * Root/sysmgrnavigation.skin
 * Root/systemscripts.skin
 * Root/welcome.skin
 * Site/adminnavigation.skin (went into Site#navigation)
 * Site/calendar.skin (replaced with java.Date.Calendar)
 * Site/calendarday.skin
 * Site/calendardayheader.skin
 * Site/calendarselday.skin
 * Site/calendarweek.skin
 * Site/contribnavigation.skin (went into Site#navigation)
 * Site/notification.skin
 * Site/notificationMail.skin
 * Site/rss.skin
 * Site/rssItem.skin
 * Site/rssResource.skin
 * Site/robots.skin
 * Site/searchform.skin
 * Site/sysmgr_delete.skin
 * Site/sysmgr_edit.skin
 * Site/sysmgr_listitem.skin
 * Skin/diff.skin
 * Skin/diffline.skin
 * Skin/statuscustom.skin
 * SkinMgr/treebranch.skin
 * SkinMgr/treeleaf.skin
 * Story/rssItem.skin
 * Story/rssResource.skin
 * User/sysmgr_edit.skin
 * User/sysmgr_listitem.skin

Anything what the updater app cannot do in a simple way should be caught by
the compatibility layer, as for the obsolete prototypes and skins especially.

Original issue reported on code.google.com by [email protected] on 19 Jan 2008 at 5:21

Improve structure of static file directory

The static file directory has several problems:

 1. All site directories are stored in the same single parent directory
 2. All images/files are stored in the same single parent directory
 3. Filenames can contain special characters causing problems with
different platforms and ZIP files (export)

To solve this issue the following structure should be achieved by modifying
the corresponding code and providing a patch for Antville.org:

 +- static
     +- A
     +- B
     |  +- bar
     |  +- barfoo
     |  |   +- images
     |  |   |   +- 200810
     |  |   |   |   +- 7623.jpg
     |  |   |   |   +- 7626.png
     |  |   |   +- 200811
     |  |   |   |   +- 8078.png
     |  |   |   +- 200812
     |  |   |       +- 8093.gif
     |  |   +- files
     |  |       +- 200809
     |  |       |   +- 543.txt
     |  |       |   +- 548.pdf
     |  |       +- 200910
     |  |           +- 571.ogg
     |  +- ...
     +- C
     +- D
     +- E
     +- ...

Original issue reported on code.google.com by [email protected] on 13 Dec 2008 at 5:17

Make user e-mail address + personal URL (in the user profile) editable by sysadmins

This should be a small change in the code (at least the patch for release 1.1
provided by phoque was so), allowing sysadmins to help users reset their
passwords (in case they have forgotten it and changed their mail address as
well), delete URLs deemed inappropiate, delete vandalizing code or
"repairing defective URLS", e.g. jambled letters, missing http:// etc. Some
people want to link to their blog but don't know how to, inserting their
URL is much faster than explaining.   

Original issue reported on code.google.com by [email protected] on 29 Oct 2009 at 7:57

Parent story or comment is not displayed anymore in comment form

Most likely due to some recent changes related to the Comment.created
property the Comment#edit skin does not display the parent story or comment.

A quick fix could be replacing

  if <% comment.created %> is null

with

  if <% comment.creator %> is null

However, there is probably a better solution which does not need to modify
the skin.

Original issue reported on code.google.com by [email protected] on 12 Nov 2008 at 10:54

Expand "site search"

At the moment, only stories (ie: only the text of stories, NOT the title,
and not comments, of course) are included in the search, and only 25
results are displayed. 

Including titles and comments again, a significantly higher number of
results would be welcomed.


Original issue reported on code.google.com by [email protected] on 28 Oct 2009 at 4:09

Lowercase property names prevent easy import/export

Due to Helma bug #610 it is not possible to loop over a HopObject without
getting only lowercase property names. This leads to more complex code for
import/export features than necessary.

--
[1] http://helma.org/bugs/show_bug.cgi?id=610

Original issue reported on code.google.com by [email protected] on 15 Apr 2008 at 5:47

Increase RSS version

The current RSS output (RDF/RSS 1.0) should be upgraded or even replaced
with at least RSS 2.0; dunno if we should take an approach to Atom, though...

Original issue reported on code.google.com by [email protected] on 11 Oct 2007 at 1:55

Unifiy Managers

It might be worth to try if the increasing number of *Mgr prototypes could
be decreased by defining a generic Manager prototype taking care about list
rendering, paging and generic administrative tasks.

Original issue reported on code.google.com by [email protected] on 4 Aug 2007 at 3:34

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.