https://github.com/dncomponents/dncomponents
Java UI web framework
https://github.com/dncomponents/dncomponents
gwt java javascript typescript
Last synced: 9 months ago
JSON representation
Java UI web framework
- Host: GitHub
- URL: https://github.com/dncomponents/dncomponents
- Owner: dncomponents
- License: apache-2.0
- Created: 2019-12-03T13:46:36.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-06-03T15:34:49.000Z (about 2 years ago)
- Last Synced: 2024-11-14T12:56:41.038Z (over 1 year ago)
- Topics: gwt, java, javascript, typescript
- Language: Java
- Homepage: https://dncomponents.com
- Size: 3.22 MB
- Stars: 10
- Watchers: 5
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dncomponents
Client side java UI framework for building rich web applications written purely in Java language using GWT
compiler and elemental2 browser API without any external js libraries.
http://dncomponents.com
Note: There is the same project using [TeaVM](https://teavm.org/) compiler [here](https://github.com/dncomponents/dncomponents-tea)
| Module | Info |
|---------------------------------------|--------------------------------------------------------------------------:|
| core | Basic classes to build user interface with elemental2 and dn HTML binder |
| template_annotation_processor | Annotation processor to generate code from java/html pairs |
| mvp | Lightweight MVP pattern |
| core-uui | Components of dncomponents |
| bootstrap-ui | Views implementation of dncomponents in bootstrap front-end framework |
| material-ui | Views implementation of dncomponents in material design |
| main | tests components |
| main-reactive | tests reactive features |
## Getting started
See [project web site](https://dncomponents.com/index.html).
### To run components examples
Get a stable set of components, same as you can see at [dncompoentns bootstrap example](https://dncomponents.com/demo/index.html).
clone the project `git clone https://github.com/dncomponents/dncomponents.git`
`cd main` and `run mvn gwt:devmode`
Download starter project [here](https://github.com/dncomponents/dncomponents-java-starter-bs) .
### To test new reactivity features
This attempts to bring some features of popular frameworks - Vue, React, and Angular, such as:
* **Reactivity** Data-binding system that synchronize the state of the application with DOM.
* **Component based** Organizing code into reusable UI components encapsulating their own logic, styling, and structure.
* **Two-way data binding** Changes in the model affect the view and vice versa.
* **Loops** Iterating over arrays and objects using the **dn-loop** directive, handy for rendering lists and tables dynamically in the DOM.
* **Conditional Rendering** With **dn-if, dn-if-else dn-else** directives, you can conditionally render elements based on the value of expressions or data properties.
Read more [here](https://github.com/dncomponents/dncomponents/blob/master/main-reactive/README.md)
Note that this is still work in progress and we need feedback and more testing.
cd `main-reactivity` and `run mvn gwt:devmode`
Download starter project [here](https://github.com/dncomponents/dncomponents-java-elemental-starter)
## Contact
Join [gitter room](https://app.gitter.im/#/room/#dncomponents.com:gitter.im)
support@dncomponents.com
## License
This project is licensed under
* [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0)