

Vbuild: “Compile” Vue components to standalone HTML/JS/CSS - manatlan
https://github.com/manatlan/vbuild
Its main purpose is to let you use components (.vue files) in your vuejs app, without a full nodejs stack. Just use python2 or python3. BTW, it provides a method to minimize your js scripts (es2015 compliant).<p>(It provides methods to help you to build your vuejs app without nodejs)<p>Available on <a href="https:&#x2F;&#x2F;github.com&#x2F;manatlan&#x2F;vbuild" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;manatlan&#x2F;vbuild</a> (MIT licence)<p>Available on pypi : <a href="https:&#x2F;&#x2F;pypi.org&#x2F;project&#x2F;vbuild&#x2F;" rel="nofollow">https:&#x2F;&#x2F;pypi.org&#x2F;project&#x2F;vbuild&#x2F;</a>
======
georgecalm
The title of this submission is a bit misleading. This script parses the .vue
file and extracts the three sections into x-template script, Vue.component
script and a style. These are not standalone in the sense that they cannot
exist without vue and vue-template on the page (the later is large and
unnecessary when compiling with webpack). Essentially this does what the vue
webpack plugin does naïvely and without many of the features like support for
different template / JS / style language compilation (e.g. Babel and sass).

~~~
type0
Gosh,there is so much half assed redundancy in js world that no wonder that so
many beginners feel lost.

This does seem a bit too experimental to actually be useful. Some vue based
projects are actually nice and easy for beginners to be productive (like
Nuxt), but the whole vue ecosystem has never clicked with me even after I
toyed with it for at least 2 or 3 times.

~~~
aikah
> Gosh,there is so much half assed redundancy in js world that no wonder that
> so many beginners feel lost.

Beginners feel lost because the JavaScript world has learned nothing from
Java's ant. These insane build/asset pipelines that take forever to run are
the bane of the JS world.

It's like nobody remembers you can just write a JavaScript,then link it to an
HTML without 35 compilation steps.

~~~
paradite
We are no longer just trying to toggle a modal or show a popup.

The requirement for frontend has changed dramatically and now we need to
handle entire UI flow, interactivity, data synchronization, and even some
business logic like filtering and validations with JS, HTML and CSS.

There's no web app for air traffic controller yet, but pretty much everything
else has a web app with a huge set of feature and non-feature requirements.

~~~
aikah
> We are no longer just trying to toggle a modal or show a popup.

> The requirement for frontend has changed dramatically and now we need to
> handle entire UI flow, interactivity, data synchronization, and even some
> business logic like filtering and validations with JS, HTML and CSS.

What does it have to do with using Babel/Webpack and what not? it hasn't.

The DOM is plenty and enough to implement MVC on top of it without requiring
200 libraries from NPM. Developers have been writing complex GUI apps for more
than 4 decades without the need for a specific framework, how did they manage
to do so yet everybody needs some complex framework in the browser? no they
don't. Most of these web apps are forms.

Now I'm not saying don't use react and whatever pipeline you are using. But
downloading node and all these stuff isn't what a beginner should be exposed
to. Beginners should learn basic principles of front-end development which
includes the DOM.

~~~
paradite
> Do you think an app like Photoshop or 3DSMax uses a react like framework on
> top of whatever C++ GUI they are using?

Yes I think so. Why else would they require 1GB of space to install them and
specific hardware to run them efficiently? As a matter of fact, they require
rendering libraries from graphics card companies. The difference is that they
use their own proprietary frameworks instead of open sourcing them.

> How many apps can boast about being as complex on the web? most of these web
> apps are forms.

Not a lot, but quite significant nontheless. For example google docs, office
365, Facebook, Amazon, and many cloud solutions for enterprise. I agree most
of web apps out there are just fancy forms and don't really need any
frameworks, but there are legitimate use cases for them.

Edit for your updated comment:

Yes, I fully agree that web developers should start from basics, not
frameworks and libraries. Cheers.

~~~
sam0x17
All of the above, you could implement in vanilla javascript and HTML 5 just
fine. People are just getting crazy these days.

~~~
ng12
I can tell you've never actually tried doing that, especially not with a team
of 4-5 developers and constantly changing requirements.

If it doesn't sound incredibly painful your webapp isn't complicated enough to
warrant a framework anyways.

~~~
sam0x17
I'm literally in charge of a team of 3 devs that does that. React complicated
our stack, slowed things down both development wise and in terms of
inefficient asset management, so we reverted to vanilla JS and never looked
back.

~~~
ng12
What kind of app is it? Is it an SPA or a mostly-HTML website with some bells
and whistles?

I've been through the whole gamut -- pure JS, jQuery, Backbone, Angular1, and
React. I love React because it's by far the most pleasant experience for my
work. You would not get me to go back to pure JS over pain of death, it's just
a non-starter for the types of apps we're building.

------
avip
Just as a side note: there is already a way to consume vue components in a
server agnostic way - build a web component, which vue cli3 supports. I think
bowsers compatibly aside, that’s the right approach.

~~~
bendotero
Vue cli3 is such a good tool I'm not sure why you'd need this python tool to
essentially do what the cli does in a much more convenient way.

------
jvanveen
I personally don't like SFC, because it involves build tasks that are better
left to specialised tools IMO.An alternative is to use the vue template
compiler directly, without SFC, by making a simple wrapper around it. An
example of this:
[https://github.com/wearespindle/fuet](https://github.com/wearespindle/fuet)

------
deckiedan
This could be very useful for django/vue stacks, to limit what's needed server
side...

------
evadne
Sounds like Vueify

------
anothergoogler
Somebody please tell OP about lxml or BeautifulSoup.

