Online Flowchart Diagram Tool (run from private wiki) [closed] - wiki

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Is there some flowchart diagram tool that would (or could be made to) integrate with a self-hosted wiki?
Requirements:
basic functionality (e.g., drawing some boxes and some arrows)
would strongly prefer it to be visual (i.e., not written out in text that then gets converted)
allows for dynamic editing
it is important that the tool can be integrated into the wiki (e.g., as an extra panel somewhere)
can be run from a personal server
free
I've looked around at other threads here concerning a diagram tool, but they are either desktop applications, online ones which reside on third-party servers, or cost money.
[Edit] Thanks for the responses, but I would like them to be dynamically editable (I've added this to the requirements). What I mean is that I would like to integrate (or run it from a private server) some online collaborative diagramming tool. While I could create a JPG of something made in Graphviz and upload it, this is not easily editable. I would have to upload the source file somewhere, which someone would have to download and edit, then upload the new JPG.

Graphviz dot diagrams can be embedded in some wikis. Unfortunately for your requirements, it's text that gets converted. It's fairly simple to learn and use though.
http://www.graphviz.org/
EDIT: It's free / open source.

I've been looking for something similar - collaborative flowcharts in a wiki. The most interesting so far is this Mediawiki extension: http://www.flowchartwiki.org/wiki/index.php/Main_Page

Balsamiq Mockups for XWiki is the closest thing I've seen. It's more of a previsualization tool however for application mockups, though I'm not sure if this is the kind of tool you're looking for.
It is free if you qualify under their licensing.
Another option would be using Mediawiki with the Dia extension.

I like using the svgedit plugin in dokuwiki for quick diagramming on the run. It produces standard SVG text files and has an always up to the date javascript wysiwyg editor. And, I submitted a bug/feature request on github and the requested functionality was added post haste.
Edit: FOSS!

i understand this question is old enough. but you could try Origramy. it's a Flash-based visual tool. and XML as the result can be get from the component. alas integration to wiki must be made separately

Not sure of the technology you have on your server, but Open Diagram can create a jpg image file on the server which can then be referenced as a normal image in your wiki. Its open source.

I've enjoyed the simplicity of UMLet for a while as a desktop app. Don't let the name fool you! There is more than just UML - it has a lot of basic charting elements in it. It's not pretty, and it can be awkward sometimes, but it works. Has basic visual items in a template/toolbox that you double-click on to reproduce on your canvas. You can then move it about, resize it, or edit the item and modify it via text.
There isn't an existing online integration method (that I've seen), but being that it's good old fashioned java, you might be able to make it happen.
It's free and distributed under the GNU General Public Licence.

honestly i think you are going to have to use Java and code an applet. there are wondrous advancements in javascript libraries (AJAX, JQuery) that also might assist in this...
cheers my friend.

Related

Use a html renderer in an embedded environment [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm working on a project where I will design a GUI for an embedded device and would love to go with HTML for this. I hope you guys can help me find a render engine that suits my needs.
Requirements:
The web-page must be rendered into a memory buffer. I will then transfer the memory buffer to the display.
I must be notified though callback or event that the render engine need to fetch a new item. HTML page, image, etc. The reason for this is that I must fetch the resource and feed it to the render engine (the reason is that the device does not have TCP/IP in all configurations and will then need to fetch the item over serial line, and also for security I need to validate that the request is allowed).
I must be able to inject mouse and keyboard events into the rendering engine.
Only C and/or C++
Must be easily portable and lack dependencies to libraries that only exist for win/linux/mac. The device I have runs a custom OS...
Small footprint and memory consumption, I can probably get away with 10MB footprint and 5-10 MB allocated memory during rendering. But not much more.
Both open source as well as commercial solutions are welcome
I do NOT need full HTML5 and CSS3 support, I mean if I can use "basic HTML and some CSS" I'm more than happy.
I have looked at some WebKit, chromium, gecko, berkelium and awesomium but not really found that they fit my needs.
Is there anything out there that comes close to what I need? Or should I just give up this idea and build the GUI in some other way? I appreciate any help!
Good question! It turns out there are a few options within this space, and as you've surmised, many of them are based on Webkit. Some of them aren't, though, and those are the ones that I believe you're most interested in.
Links
The simplest, 0th-level browser that's going to meet your needs is the graphical version of the Links web browser. It's suitably cross-platform (admittedly, you will require some of the libraries from Cygwin for Windows environments), open source, carries a small memory footprint, and in some of its forked or enhanced incarnations (for example, Elinks), has enhanced functionality like Javascript support, full mouse functionality, and the bells and whistles that you desire in your problem statement.
Of course, it's written in C.
Konqueror/Embedded
Exploring some of the other options within this space, Konqueror/Embedded is something to consider and watch in the future. Yes, it is based on Qt/Embedded and Webkit (mumble mumble), but they're aiming to provide a slimmed down version of both their browser and their library stack to meet this need specifically. Once again, Windows is going to be the odd child out here, but it's workable.
Fennec
One last cross-platform option to explore is the slim version of Mozilla Firefox, Fennec. While providing a much larger code base, Mozilla is working on its embedded version very aggressively, and any help you can provide here would be greatly appreciated. From what I understand, the slimmed version is still pre-alpha (Fennec, however, lives on), but it should become a workable option in the future.
And a Gamut of Others to Explore
In addition to the gamut of web browsers currently competing in this space, proprietary options like ANT Galio may also meet your needs. It seems there are many other proprietary solutions out there, but the majority of them (for example, Internet Explorer Mobile, Mobile Safari) only service a small number of platforms. Good, proprietary, cross-platform solutions that aren't based on Webkit seem to be quite rare.
SpliFF also offered an excellent suggestion in his answer: try libRocket. As he recommends, it's lightweight, cross-platform, currently and actively maintained, easy for you to hook into, and provides for the automation cases that you seek. In this case, it's programmed in C++, with Python bindings for additional convenience.
In conclusion, given your needs, you'll still need to evaluate the strengths, weaknesses, and API specifications for the options listed above.
I recommend starting with Links, because it's the most feature-rich and robust option while optimizing on a very small memory footprint and codebase. Its biggest strength is that this was a design goal from the outset, and the entire code tree is built with this design philosophy in mind.
Do let us know what you go for. This is a common enough need in the community that I'm sure others will benefit from your experience.
Have a look at librocket. It meets your requirements of being HTML+CSS, lightweight, handling events and rendering to a buffer. I looked though a bunch of projects recently looking for basically what you asked and this was the match I found.
libRocket is the C++ user interface middleware package based on the HTML and CSS standards. It is designed as a complete solution for any project's interface needs.
libRocket uses the time-tested open standards XHTML1.0 and CSS2.0
(while borrowing features from HTML5 and CSS3), and extends them with
features suited towards real-time applications. Because of this, you
don't have to learn a whole new proprietary technology like other
packages in this middleware space.
Cross platform architecture (Windows, Mac, Linux, iPhone, ...).
Dynamic layout system.
Efficient application-wide styling, with a custom-built templating engine.
Fully featured user control set: buttons, sliders, drop-downs, etc.
Runtime visual debugging suite.
Easily integrated and extensible with Python scripting.
Abstracted interfaces for plugging in to any game engine (samples for OpenGL, DirectX and Ogre3d).
Decorator engine allowing custom application-specific effects that can be applied to any element.
Generic event system that binds seamlessly into existing projects.
Have a look at DS Organize, a homebrew DS browser, and also ES Operating System by Google (for an OS originally developed by Nintendo).
I have suggested looking at DS Organize as the Nintendo DS has only 4MB of RAM (8MB with the memory extension that most DS browsers use). And you might also be able to get away with rendering directly to VRAM, saving you a few 100kb, depending on your memory model and how much freedom you have with VRAM writes outside of VBlank.

Recommend a note taking wiki-like "super" application [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I need a note taking wiki-like "super" application. I'll start with a rundown of applications that I've already evaluated and/or used:
Wikidpad
Pros:
fast switching between the edit and view modes;
nice syntax (especially for pasting code snippets or just raw ASCII text, nice indenting visual clues);
it is standalone application that don't require server;
the wiki pages can be kept in flat text database;
easy drag-and-drop of file attachments (especially for image files).
Cons:
doesn't have history/version control of the pages and the state of the wiki database as a whole;
doesn't have the concept of namespaces for the wiki pages;
MoinMoin wiki
Pros:
nice syntax;
have standalone server (Python based) which makes it truly portable and standalone;
keeps the pages in flat files;
have a lots of nice plugins;
Cons:
its a wiki == slow iterations of editing/taking notes, viewing, rince-repeat...
doesn't have version control integration
Trac
Pros:
All of the features of the MoinMoin wiki, except the flat file database;
Version control integration: I can use the wiki changeset feature and the wiki pages as metadata of my personal codebase;
Cons:
All of the general drawbacks of the wikis;
Not truly portable;
todolist2 (by AbstractSpoon)
Pros:
fast, standalone todolist manager;
the tasks have this really nice and important for me feature of having an rich edit box for taking notes associated with the task with flipping between the task and the notes with a single key;
time tracking for the tasks;
Cons:
doesn't have version control built-in (it has "simple" version control by just making an automatic backup copies of the project/data file with time stamp embedded in its name).
it's hard to filter the tasks by urgency (in the GTD terms, it doesn't have the concept of the containers of tasks: Inbox, Maybe, Next action for each project, etc).
it doesn't have cross-referencing/linking between the tasks in wiki-like fashion.
Thinking Rock
Pros:
implements GTD almost perfectly;
it has notes for every action;
portable;
Cons:
(Maybe because of the Java GUI) doesn't have simple Undo when editing text notes;
it's clunky when switching between the projects/actions tree and the editable notes editbox;
doesn't have version control;
MonkeyGTD/TiddlyWiki
Pros:
truly standalone
almost 100% wiki
nice GTD implementation
Cons:
it's little confusing when there is no easy or user-friendly way to see an overview of the current structure of the wiki pages
I'm not sure if it scales well when there is a lots of pages/data/text/attachments.
doesn't have source control integration;
I'm not sure about version control/pages history...
I want an application that has the following:
the speed and the ease of edit/preview iteration cycle of wikidpad.
the wiki pages and the associated attachments as they are (like wikidpad and MoinMoin).
version control for the wiki pages (like MoinMoin or Trac).
source control integration (like Trac).
time tracking like todolist2 and the task/project nesting like todolist2 and ThinkingRock.
the almost perfect GTD implementation of ThinkingRock or MonkeyGTD.
It's obvious that I haven't decided which one to use because for some reason my requirements are somehow orthogonal in the terms of the features that the aforementioned applications provide... not that the features are orthogonal or it is impossible or impractical... actually, I think that maybe wikidpad is the closest to my ideal, which means that I could:
implement the features that I need (to add version control, GTD-life features/properties for the wiki pages themselves, source control integration), or
continue to search and evaluate, or
get some interesting and valuable opinions here.
Try ConnectedText: http://www.connectedtext.com/
ConnectedText has all the pros of Wikidpad and none of the cons. ConnectedText has a much superior query engine and contains semantic extensions not available in Wikidpad, and is much more stable.
Try KNote http://www.smartgoldfish.com/download.html.
I'm not sure you'll be able to find any application that meets all your requirements, but here is my shameless plug for a note-taking desktop application for Windows that works like a personal wiki:
- http://www.ppcsoft.com/blog/personal-wiki.asp
If you specify which feature(s) that is most important it is easier to tell which is more suitable ?
Any of the tools that save files as text can be added to your own version control system (which is better than using each tools' version control) that you could use for all your important documents.

what kind of software do you use to draw diagram for your presentation and report? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What kind of software do you use to draw diagram for your presentation and report?
Suppose you want to draw a diagram to illustrate the TCP hand shake.
I use visio, but the outcome is too plain.
Is there any free software out there can draw diagrams better? Which can also have some 3D shapes or shadows?
Dia for Windows
gadwin
Gliffy
DiaCze
SmartDraw
All the best man.
Inkscape is a free vector drawing program that will make drawings as elaborate as you want them to be. And while it's probably not what you're looking for, I can't recommend TiKZ (www.texample.net) highly enough. It's what I use for everything nowadays.
If you want beautiful diagrams, be prepared to work for them. Recently, I've been using Illustrator, but that isn't exactly free. I have used Inkscape in the past and it can work very well.
I've filched the company tablet PC for this single reason - so that I can hand-draw diagrams directly in my (OneNote) documents. All the advantages of quick sketches which can be rapidly changed/printed and still have typed text (written text is not a legible option in my case)
A whiteboard and a digital camera (maybe in your phone) works really great!
It's PowerPoint 2007, but you have to using basic shapes (with 3D and shadow) to create diagrams. It's possible, but it's hard work, if you want nice looking.
And same nice background for slides. Different for section head and for other slides.
I think you should save yourself a lot of time and look for images on the web, rather than drawing them yourself. Try searching http://images.google.com for what you need (shapes or whatever) and piece them together with a simple paint program or The GIMP.
If you are not publishing the document, and only attempting to explain information to coworkers, you can find (steal) plenty of well-designed images intended to explain networking concepts.
Otherwise your presentation should probably be in PowerPoint or OpenOffice Impress, or some such presentation tool.
Good old Microsoft Paint. Or, Paintbrush on my Mac.
Keeping it simple works for me. As many colors and shapes as I want, with easy canvas features, and nothing over the top like shadows etc.
I've found the best of the "free" apps to be Paint.NET. Does everything I've ever need an image creation and editing app to do, well supported by the developers and the community and has a huge userbase that has created a bunch of plugins to expand it's features. As a Photoshop/Illustrator lite, it's as good as they come.
You can use Creatly. It's a web based tool simular to Visio. They have a free trial, so you can just check it out.

Which wiki to use after MediaWiki? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
We're thinking of moving from our existing installation of MediaWiki to something more feature-rich. I'm trying to find all the pains people have with MediaWiki today (mainly it's poor handling of external documents and less-than-perfect editing capabilities - compared to Word).
We are using a wiki for design, spec, process guidelines. We have several external documents (docs, powerpoints) that we are currently putting on a shared folder and linking to from the wiki (because uploading files is not very convenient in MediaWiki).
We are trying to make the friction minimum, so that nobody will have an excuse or reason for not using it.
Some options we're considering are Confluence, Trac & Sharepoint. Money is not a big concern, only ease of use (and maintenance) and feature-fullness. What would you use?
I would plug the details of my specific feature needs into the excellent WikiMatrix choice wizard and let it make recommendations.
I would advise either
Foswiki ( http://foswiki.org ), (forked by the whole developer community of TWiki to avoid trademark threats), for a feature-rich and fully open programmer's wiki. Drop on #foswiki on irc.freenode.net to chat with the community.
Mindtouch's Deki Wiki ( http://www.mindtouch.com/ ) clearly the most user-friendly advanced and innovative wiki out there, a modern commercial + open source offering. Great integration with Office docs.
I would avoid Confluence. Confluence made a design choice (forbidding mixing html in pages with Wiki syntax) that proves deadly to any attempt at wysiwyg, as it uses a standard HTML editor for WYSIWYG, and this converts it on save in a very limited subset of it, yielding frustrating surprises for the users (foswiki for instance keeps as html the parts the wiki syntax do not handle like bullet lists in table cells). Confluence have many great sides, notably its integration with atlassian great tools as their JIRA bugtracker, (we use it at work for this with good results) but do not plan to customize it.
There are many good choices on hosted wikis too (Google sites, based on the awesome jotspot engine is one).
Never use Sharepoint of course. Its wiki capabilities are a IE-only joke, and Sharepoint whole architecture is braindead (storing all data - even huge docs - in a non-distributed database goes against Microsoft own recommendations). If you want a DMS with good Office integration, have a look at KT (Knowledge Tree) instead. http://www.knowledgetree.com/ . For political reasons we were forced to use Sharepoint at work but we limited it to basic document managing (never use the MOSS higher layer, as it breaks compatibility between versions) and integrated a foswiki frontend to it (dumped document list & metadata in xml and provided navigation in foswiki, and search with a google box)
But my real advice would be to ... wait for Google wave, that promises to revolutionize the wiki concepts.
Disclaimer: I am part of the foswiki community.
Before you move away from Mediawiki I would urge you to consider the many extensions available. IMO there arent many wikis that offer more features that MW, especially when you consider the number of extensions. See http://www.mediawiki.org/wiki/Category:Extensions
For example, for editing there are browser based editors similar to Word. And there even macros for Word that allow you to export from MS Word to your Wiki, from within Word.
Also, check out the Semantic Mediawiki extensions. These give enormousness benefits in the area of Knowledge Management.
I would personally recommend against moving from Wiki to SharePoint. The huge problem there is SP's dreadful handling of images.
First of all I would stay away from Sharepoint. Period.
I would not consider switching to Trac either, since Trac has special focus on issue tracking, and poor support for external documents.
I would consider switching to Confluence, since:
Money is not an issue (as you said)
You want to minimise maintanance work (as you said)
You want to use wiki to handle external documents (as you said)
I'm typically a strong advocate of open source technology, but with the requirements you gave, I just don't think they would make you happy. For instance if you had personnel available for maintaining and providing customisations to your system, I would definitely suggest trying out Foswiki, which also would otherwise fit your needs very nicely. However, if you really want to stay away from any extra maintance work, Foswiki is not a good option.
I work on Tiki Wiki CMS Groupware and I'll share a few links. This question comes up quite a bit so we have a dedicated page: http://tiki.org/Tiki+vs+MediaWiki
We're thinking of moving from our existing installation of MediaWiki
Tiki & MediaWiki are both PHP/MySQL so you can use the same server.
Tiki has a built-in importer: http://doc.tiki.org/MediaWiki+importer
to something more feature-rich.
Tiki is the http://tiki.org/FOSS+Web+Application+with+the+most+built-in+features
We are using a wiki for design, spec, process guidelines. We have several external documents (docs, powerpoints) that we are currently putting on a shared folder and linking to from the wiki (because uploading files is not very convenient in MediaWiki). We are trying to make the friction minimum, so that nobody will have an excuse or reason for not using it.
http://doc.tiki.org/WYSIWYG
http://doc.tiki.org/File+Gallery (instead of your shared folder)
http://doc.tiki.org/Docs (web-based ODFs)
http://doc.tiki.org/Spreadsheet (web-based)
http://doc.tiki.org/Slideshow (web-based)
http://doc.tiki.org/Draw (web-based)
Some options we're considering are Confluence, Trac & Sharepoint. Money is not a big concern, only ease of use (and maintenance) and feature-fullness. What would you use?
Tiki is Free/Open Source. But if you have money burning your pockets :-)
http://tiki.org/Donation
You can also hire a consultant to provide training/support and to accelerate the implementation and/or sponsor feature development
http://info.tiki.org/Consultants
Have you considered sharing your Word documents with Google Docs? It has revision control and collaboration features like a wiki, as well as a rich text editor that can import and export plenty of formats.
It sounds like TWiki would be a great option for you as well. I haven't used it myself, but it also has a rich text editor, as well as tons of enterprisey project management features in it.
A lot of people seem to like Confluence. I personally don't know it. If you are not already at it and you want something feature-rich than xwiki could be something for you.
I'd add FCK Editor for WYSIWYG, get a decent document management system to run alongside the wiki and carry on with MediaWiki!

What powers Google Charts? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Does any body know what powers Google Charts? I have been using it for a while but not sure what Google used to build it.
They bought the Gapminder library for doing charts. It's a Java library as far as I know, but they don't seem very anxious to release the code as open-source.
Everything at google is done in C++, Java, or Python. I'm guessing the internals is probably done in one of the latter two.
Mathplotlib was my guess too - ( thanks "davidg" ).
SVG - got my own doubts because you don't have to go the length of server side SVG just to produce a static image. No panning or scaling required so not sure if they used SVG
I feel the touch of SVG there..
Maybe Internal engine to generate and work with SVG and export images as PNG images.
Any other thoughts?
Just guessing here: they must be using Python with some charting library and then returning the produced files. There are a few tools to do charts in Python. Matplotlib and ReportLab come to mind.
What is sure is that you can do it with a Java servlet.
Eastwood is an open source implementation of the Google Chart API.
(powered by JFreeChart)
Probably just libraries they have written themselves, it's pretty easy to throw together a chart drawing library, but hard to do it right. So someone hacked together a custom java/C++/python library using already available stuff to be able to update the graphics of his charts easily, and then it extended.
That's the great thing about it, that you can make your own version without much effort, just change the URL and design your own flash animation of the chart. And that the data available in the graphs is easily webscraped..
Just theory, but something like this is perfect small project to do in 20% of your time.