Hacker News new | past | comments | ask | show | jobs | submit login
Pencil: open-source GUI prototyping tool (evolus.vn)
320 points by cheiVia0 on Nov 7, 2016 | hide | past | favorite | 79 comments



The original project is abandoned, but a recently updated fork is available at github.com/prikhi/pencil.

I prefer Pencil to more commonly referenced options like Balsamiq. Looks like no commits in a few months, but hopefully the form is still going. An open source UX tool focused on software application workflow prototyping rather than GUI layout is an asset to the software development community.


It's not abandoned, but actually active again: There was a RC release of a rewrite in electron at the end of July, see here: http://pencil.evolus.vn/Next.html.


Awesome! Very excited to see this and looking forward to trying it out.

I've gotten a lot of mileage out of the "sketchy" widgets that look hand drawn and the ability to easily link between layouts. Great for rapidly validating mobile app workflows with users!

Other than Marvel App (which companies uncomfortable with hosting design work in cloud services can't use), I've found Pencil to be the most productive UX-focused design tool out there. Every other tool seems to be UI-focused, but it's usually easier to prototype UI right in HTML5 once the UX workflow is well understood.


Website looks very dated! Even the footer says '2012'.

Why would they use KDE screenshots as the main screenshots too. KDE looks awful IMHO.


KDE5 Breeze looks pretty nice actually, and KDE looks like anything because it is that adaptable, so it's not even sensible to assert an idea like "KDE looks awful" since there is no look KDE doesn't offer, so it can do awful or whatever you think is amazing.


Looks like the original creators rebooted it under the github project https://github.com/evolus/pencil.


created an HN-account to tell you: Thank you!


Thank you to your team for a great open source tool (assuming from your comment that you're one of the developers).


If you're on Pencil team, then you should know the links to zip's under Stencils and Templates are broken.


Consider adding a downloadable build to the github page. I'm capable of doing it, but feeling little lazy to install using npm (mine is probably outdated etc.), but I'd definitely install a ready build.


Been using this for a while due to student-related poorness. Gotta say it does what I want and has helped numerous times also in bigger projects. The low fidelity helps you focusing on gui structure.


What would you have used if money was not an issue?


Probably balsamiq.


Seems like an abandoned project. Website copyright is 2012, last stable release 2013, last news update over a year ago.

What's the context? Is it somehow notable regardless?


Well they had 3.0 RC1 released in July 2016 http://pencil.evolus.vn/Next.html and their GitHub page at https://github.com/evolus/pencil/ is fairly active.


Checked issues page and not found an response from their dev in the first page, to me it's inactive.

I wandered to this software awhile ago but then moved immediately to Lucidchart.com then Draw.io


The company that make it is Vietnamese I think. They do some paid software too, and it looks like pencil is what the developer does when he has time. So I think the project is active, but not very active.



I guess they abandoned it after that then. May be someone will pick it up soon.


It's free, and not a 2 week trial free.

It helped me out just last week because employer has no license for paid software...

The V3 release is quite recent and although the features are similar to earlier versions, the GUI is much improved. It is also Win/Apple/LINUX software, so projects should be portable.

What lacks most of all, imo, is that finding sets of templates for newer OSes needs a bit of work. If I was the developer I would spend some time creating these myself, and then beg for donations on the back of that.


There is a newer fork, that works an Pencil 2.

https://github.com/prikhi/pencil


This is a great product. Although not sure why suddenly it is appearing on HN. Version 2 worked well and Version 3 I find a bit more complex but still great.

Above what they have on their website, there's various extra packs (stencils) [0] that you can install with Bootstrap elements and Android Material elements. Albeit that I find its better to keep to the sketchy UI as otherwise you focus too much on the details.

  [0]: http://nathanielw.github.io/pencil-stencils/


Or you can just use Qt's Designer which makes it very fast to knock up a GUI. (and then later evolve it into the real thing as well)


Not really, the 2 things are not alike and I don't think QT designer exports to PDF, web and png (one of which is what the project manager needs, not a project file that runs in an IDE).

Not bashing QT, but QT designer is not a wireframing/mockup tool.


You can take a screenshot. It is an interesting idea provided it's as simple as mockup tools.


Or you could build it into a executable and send that to the exec. I'd imagine that's better than a pdf/png picture, no?


"Oh, looks like you are nearly finished with it. The button does nothing if I click on it. I assume you have this finished by next week instead of next month. Good job. I already notified Sales and Marketing that we finish early. Will adapt our timing estimations now that have a fast coder like you on the team. -cheers your exec"


Sounds like a joke, yet it's spot-on.


ha ha ha


Project managers want to put things in Word documents, they don't want executables, they don't want a demo.

The point of wireframing is that the client doesn't look at it and go "this detail is wrong!" Wireframes and mockups should only communicate pre-prototype ideas, work-in-progress ideas and workflows. I think you might not understand what a tool like this is for if you think QT creator is better than every sketching tool on the market. Not a personal attack, but we seem to be talking in circles already.


Entirely possible, I'm not an UX/UI expert and not familiar with that particular tool. Maybe it's more about crafting/prototyping the UX instead of the UI?


Pretty much that - as someone else expressed in a joke: You don't want to send the message that it's about evaluating functionality and that you're lamost done. You want to send the message that this is a sketch to use as a basis for discussing flows.

This is one of the reasons why find people taking pains in some of these type of tools to not make it look like the real deal, because the closer it looks to the real deal, the more some people get hung up on irrelevant details.


I wouldn't write off project managers' appreciation for interactive prototypes...

Although I would agree that they often (but, ime, not always) appreciate an export (eg pdf) that can be signed off and stored.

We've had some project managers who were almost the most enthusiastic team member about interactive prototypes because they were the most effective (and understandable) thing to demonstrate/give to customers.

(To your general point though, I entirely agree, I wouldn't use QT Designer for this role -- and I'm also quite a fan of pencil, because it feels intentionally plain/bland.)


I think we agree, but prototypes and demos are not the same thing. A wireframe can be a prototype, with buttons linking from one page to another to demonstrate workflow, a prototype would be built to a near-finished specification and close to an alpha/beta.

I feel like I'm being a pedantic a-hole in this thread, but the terminology of UX/IxD and the process seems like one of the more misunderstood aspects of building software and as a lot of developers (in my experience) want to either dismiss the process as unnecessary (they don't need to be told what to do) or they want to take on the process themselves (experienced coder, of course I can analyse and plan a user interface). I'll stop now before I start ranting.


According to history, an executable is the perfect thing for a Word document. ;-)


We used Pencil on one of the modules I took at uni. I think that, aside from a bit of glitchiness (I remember having a spot of trouble pasting text), most of us got on quite well with it. It's relatively simple, but rather decent at what it does.


http://logicnet.dk/DiagramDesigner/ is a light and operational alternative to Pencil.


Windows only


I love Balsamiq (desktop version), but lately I'm finding it such a memory hog on OS X that's rendering my machine unusable, and that's with not-so-large projects (30+ mockups)


whoa that's no good! Can you please send some more details to support@balsamiq.com? It definitely shouldn't do that. Thanks!


At first, I thought that this was referring to https://github.com/pencil2d/pencil


Poor native support on OSX. Doesn't even allow to Hide the window.


thats the reason i stopped using this one, i started using Sketch and everything became much beautiful


sketch is OSX only, though, so for us not on premium-ware it isn't an option.


Even for those on premium-ware, the recent switch from $99/license to $99/license/year-if-you-want-updates is quite an expensive step.


I used this project about a year ago when I need a fast way to create wireframes, and was impressed! There are some rough edges here and there, but it Just Works. Kudos to developers!


.vn is an interesting choice for a domain. The Vietnamese government has not been an ally of free speech or of sharing ideas around the globe.


just tried the electron-based new release(RC release) and it looks fantastic! I can do GUI design, and flowchart better than what I did with DIA.


http://pencil.evolus.vn/Next.html

> Electron as the new runtime

No. Just no.


Why. Just why.

edit: No really, why? Genuinely curious. You have to at least come with one reason after writing that.


Indeed, seems like an odd complaint considering the existing application is just ZUL, so isn't it almost the same thing, but on FF instead?


a, they are ginormous

b, they are slow

c, they don't integrate well with desktop

d, they put 1 of not 2 additional layers to execution ( a browser in the background + the node nonsense stack )

In short, they are wasteful. I want to get the speed of my desktop back; it is ridiculous that a 3 year old laptop with a high end ssd lags running these crappy electron things; all of them just keep swallowing memory like there's no tomorrow.


Didn't downvote but you can't blame the framework for the work of other developers.

a & b. Yes, Electron is going to be slower than writing something in a lower level language and yes, it's going to take more memory due to the JS runtime. But it's entirely possible to create an efficient piece of software that can be easily extended (examples: Visual Studio Code, Slack).

c. I don't even know what this is supposed to mean. Electron is built _specifically_ as a way of writing desktop applications and it works on just about everything. I even wrote an Electron app that runs smoothly on my old Raspberry Pi 2.

d. You don't get a full browser, just the WebKit rendering engine and V8 with Node.js bindings. Node.js has proven itself to be a worthwhile venture. A number of companies now use Node.js in their backend. It's definitely not perfect nor is it the fastest thing in the world but it isn't so terrible as to toss it out entirely.


I wouldn't exactly put "efficient" and "Slack" in the same sentence when it's a terrible memory and CPU hog. Actually Slack is the perfect example of Electron done absolutely wrong.


I guess I've gotten lucky. I don't have a very high-powered machine but I can run Slack, Visual Studio, Atom, and Chrome with a bunch of tabs without any issues.


c. The design. Every single electron app I've tried/launched have it's own aesthetics, which looks completely alien to my system. ( Which currently runs XFCE. )


Blame it on the developers of those apps. Options already exist for producing a native look and feel via CSS. [1] [2]

[1] http://photonkit.com/ [2] http://reactdesktop.js.org/demo/


reactdesktop:

"Because this library is being currently built for Electron and NW.js, the examples and demos on this site will only work properly in Chrome."

/me closes tab


This applies to Java, QT, and almost any other cross-platform UI library.


It applies to the ones with crappy UI. Stuff like wxWidgets tries to look native for the specific platform. If it's non-native look & extremely inefficient, then it's simply a bad framework for efficient, usable, cross-platform apps. That some predecessors do better is evidence.


A note: "my old Raspberry Pi 2" -that was released in February 2015, which makes it ~1,5 years old. If that "old" IT is utterly broken.


I only call it my "old" one because I got a 3 recently.


Whoever downvotes this please give an explanation and a reasoning for why and how electron applications can beat, for example, QT apps.


I've only seen one really well executed Electron-based tool: Visual Studio Code.

It's fast, and isn't entirely an enormous executable (40-ish MB).

However, most Electron apps are slow, laggy, and 100+ MB.

It seems great when used by an expert, or great for a stopgap when you need to get something into public hands, but you plan on replacing it with something smaller and faster.


> most Electron apps are slow, laggy, and 100+ MB.

Yes, because it's common in (Node)JS land to add many dependencies. I guess MS simply coded most of the stuff on their own, which keeps the size low.

Also, they use TypeScript and I heard that it reduces function polymorphism, which can increase performance (but I don't know how much). Also, as far as I know, VSCode runs plugins in different processes, which makes the main process snappier.


TypeScript generates readable JS that is as close to the TypeScript source as possible. It doesn't do optimizations that I know of.


I know that.

But I heard that the static typing (implicitly) leads devs to write more monomorphic functions, which seem to be much easier to optimize by the JavaScript-VMs. But yes, you can write such code in JavaScript yourself.

The thing is that writing polymorphic stuff is a bit more effort in TypeScript, if you don't want to throw 'any' around everywhere.


I think in 2016 people most developers have disk space for install additional 100 or more megabytes for code editor (unless you're working on low end with very small disk size, but If you do, you would have more problems than freeing 100 megabytes of space)


Sure... But a larger program better come with benefits.

VS Code does, its fast, extensible and has been the launching pad for some very cool things like a unified syntax protocol.

Atom does, but quickly becomes unuseable with too many extensions, and so I find myself not using it. What did the extra bloat give it over something like Sublime?


The problem with Electron is that people are able to identify the framework. If a few popular apps using the same framework have similar flaws, people will then blame the framework.

It happens frequently, regardless of platform and regardless of the underlying platform's actual strengths and weaknesses.


What is wrong with that? Visual studio code runs on Electron. I bet it looks much more polished and performant than many native editors out there.


Problem with Electron is, that some stuff implemented on it is really slow. Look how Atom compares to VSCode, one is really snappy, the other starts lagging when you installed a bunch of extensions.

Also, companies like Slack just use Electron as a 60MB wrapper for their website.


That could be an issue with any language or platform. Sloppy programming (Not meaning to say Atom guys are sloppy) can cause bloat irrespective of the underlying platform. Electron magnifies it because well there are layers and layers of abstraction. But if you do it correctly, it's quite good, as proven by the VSCode team. So we can stop bashing it purely for performance reasons.

Size is still on higher side than desired, but not really much, especially in today's context. If you package it lean, it could come around 40-50mb compressed. That's downloadable in couple of seconds on modern networks and desktop devices.

But the convenience it offers is huge. Same codebase for Linux, Windows, Mac and most importantly Web. Want to convert your project into a SaaS offering? Don't rewrite it, just ship it with an abstraction layer to swap the Native file system calls with Ajax. You can't beat that (yet).


Can't the "cool new Microsoft" write a "Electron Best Practices" book? :)


Indeed, It's exactly what I was thinking..


Let them Extend it for NodeChakra.


Wasn't it a Firefox extension before?

Seems like a step forward to me.


There was a FF extension version alongside the install to OS version. It won a Best FF Extension prize in ~2012.


but isn't XUL getting phased out? back in 2008-09, ported a bunch of Delphi apps to XUL. Took longer to develop than Delphi but with mozrepl and a live connection to emacs, it wasn't a bad experience at all. js-ctypes made talking to native libs fairly easy without having to resort to XPCOM extensions. Sure, XUL felt over-engineered and was heavy but it is (was?) an acceptable cross-platform toolkit for a large class of applications. Gecko embedding API was another thing that Mozilla started and then dropped it. Once Chrome arrived on the scene, Moz just turned into a Wile E. Coyote... sigh.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: