Front-end, back-end and deployment – all in one concise DSL.
.wasp files as an input, Wasp generates
the full source
code of your web app – front-end, back-end and deployment.
Wasp can also be used along with the other types of source code
Create a production-ready web app from scratch with only a few lines
of a concise, declarative code.
Move fast using high-level constructs provided by Wasp or drop down
to js/html/css/… when you require more control.
If Wasp becomes too limiting for you, simply eject and continue
with the source code following industry best-practices, as if it was
handwritten by a senior engineer.
Define how your data looks like
only once – Wasp will generate for
you all the needed back-end and
Write more specification and
less implementation code.
Wasp allows developers to express their app’s
requirements in a faster and
We know how much work it can be to implement a simple form – that
is why Wasp offers
a quick way to create and configure CRUD elements
you will most often need.
In example below we used Wasp to create front-end of a Todo app.
todoApp.wasp we defined our app, main page, data model for Task and CRUD components (form, list) tied to it.
Since Wasp is not yet expressive enough for all the features we need, we also have
Todo.js, which is a React component in which we implement some additional logic on top of Task CRUD components, while we define style in
The output code was generated in React & Redux and you can check it out
on our Github
We are twin brothers, masters of CS, enthusiastic about clean code, functional programming, algorithms, Vim/Emacs, web development, open source, building a product, and hacking in general.
While profesionally doing web development we started imagining higher-level language that would abstract a lot of tedious work, and now we are on a mission to build it!
Wasp is for developers who need to build a web app with the relatively common requirements and want to focus on writing their unique logic instead of dealing with the project set up, dev ops, boilerplate code, … .
You can learn more about our motivation and the journey so far in our
first blog post
Wasp compiles your Wasp code into a source code of the chosen stack (for now React + Redux, Node + Express, Mongo), as if written by hand. You don’t have to know anything about or even look at the generated code while working with Wasp, but if at any moment you feel limited with Wasp and want to continue on your own with the generated code (eject), you can.
No, the idea is that you write your app in Wasp and don’t care about generated code unless you have to leave Wasp due to it being too limiting. But, at an early stage of Wasp development, we do expect people to leave relatively early due to the lack of features, so in that sense it will serve a role of a smart code generator.
For now yes, to speed up the development, but the intention is to also support other popular technologies in the future, so you would be able to choose your tech stack.
Wasp is extensible by its nature, meaning that you can supplement Wasp code with the code of the tech stack it uses (React / Node / Mongo for now). If that is still not enough, you can eject from Wasp and continue with the generated code (which is as if hand-written with best practices) on your own.
While there is no limit to human creativity :D, for now Wasp is intended to be used for creating a new web app from scratch.
That is ok, you will be able to implement just front-end with Wasp and use the existing back-end.
Yes! Wasp will be your dev-ops buddy :).
Current code example shows only a small part of what Wasp will be able to do, to give you an idea. If you would like to learn more as we progress or even be a part of how Wasp is shaped, you can subscribe here.
We totally understand, there are hard challenges involved into building Wasp and we are even skeptical ourselves about some things! But, we are intent on giving our best try to make Wasp into something that you will love, and if you want to join us on this journey (and potentially even be an alpha user), you can subscribe here.