• Stars
    star
    210
  • Rank 187,585 (Top 4 %)
  • Language
    Scala
  • License
    MIT License
  • Created over 12 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Next generation user interface and application development in Scala and Scala.js for web, mobile, and desktop.

youi

Build Status Codacy Badge Codacy Badge Stories in Ready Gitter Maven Central Latest version Javadocs

Next generation user interface and application development in Scala and Scala.js for web, mobile, and desktop.

Status

There is heavy development going on toward 1.0, but YouI releases are stable and used in several production systems.

Modules

YouI is divided into modules of functionality to minimize the dependencies required for your specific usage:

  • app - unification of client and server to write complete applications (Scala and Scala.js)
  • canvas - User Interface implementation on HTML Canvas for greater power and flexibility than HTML provides
  • client - HTTP client for asynchronous request/response and restful support (Scala)
  • communication - communication framework to provide type-safe communication between a client / server (Scala and Scala.js)
  • core - core features generally useful for web and HTTP (Scala and Scala.js)
  • dom - features and functionality related to working with the browser's DOM (Scala.js)
  • example - example and test functionality for applications using youi
  • hypertext - extension functionality for working with HTML in a more powerful way
  • macros - internal macros for various internal uses
  • optimizer - HTML, JavaScript, and Image optimizations to reduce extra overhead from your application
  • server - base functionality for a web server (Scala)
  • server-undertow - implementation of server using Undertow (Scala)
  • spatial - Spatial and math related functionality for Matrix and other operations
  • stream - streaming functionality for on-the-fly processing and modification of any XML or HTML content (Scala)
  • utilities - internal utilities to support the infrastructure of youi

External Projects

Though this project has several sub-modules, where possible, external projects exist to add optional functionality.

  • youi-plugin - An SBT plugin to simplify setting up your youi project.
  • youi-template - Stand-alone server instance to help designers work with HTML templates locally and support integration for developers.
  • youi-designer - User interface designer tool to create, edit, import, export, and generate user interfaces for youi.
  • youi-example - An example project showing the basic usage of youi.

Tutorials

Though YouI provides many modules to accomplish many things, the primary goal of YouI is application development for web, mobile, and desktop. Take a look at the app module for a great getting started tutorial.

Examples

More examples are located in the example directory. Run them with sbt

exampleJS/fastOptJS 
exampleJVM/reStart 

then load http://localhost:8080/ui-examples.html or search with def path: for URLs.

Roadmap

https://github.com/outr/youi/wiki/Roadmap

More Repositories

1

scribe

The fastest logging library in the world. Built from scratch in Scala and programmatically configurable.
Scala
524
star
2

reactify

The first and only true Functional Reactive Programming framework for Scala.
Scala
86
star
3

scarango

ArangoDB client written in Scala
Scala
59
star
4

scalarelational

Type-Safe framework for defining, modifying, and querying SQL databases
Scala
58
star
5

lucene4s

Light-weight convenience wrapper around Lucene to simplify complex tasks and add Scala sugar.
Scala
54
star
6

media4s

Scala command-line wrapper around ffmpeg, ffprobe, ImageMagick, and other tools relating to media.
Scala
34
star
7

perfolation

Performance focused interpolation
Scala
30
star
8

profig

Powerful configuration management for Scala (JSON, properties, command-line arguments, and environment variables)
Scala
28
star
9

sgine

Scala Engine for OpenGL-based Desktop, Android, and iOS game and business development.
Scala
23
star
10

mailgun4s

Mailgun API implementation in Scala
Scala
17
star
11

neo4akka

Neo4j Scala client using Akka-Http
Scala
15
star
12

powerscala

Powerful framework providing many useful utilities and features on top of the Scala language.
Scala
15
star
13

scala-stripe

Complete Browser and Server client integration of Stripe in Scala and Scala.js
Scala
12
star
14

spice

Powerful client / server technology for Scala
Scala
9
star
15

jefe

Manages installation, updating, downloading, launching, error reporting, and more for your application.
Scala
8
star
16

googleapi.scala.js

Wrapper around Google APIs
Scala
6
star
17

scalajs-pixijs

Scala.js facade for Pixi.js
JavaScript
6
star
18

giant-scala

Advanced functionality for working with MongoDB in Scala
Scala
6
star
19

scalapass

Useful tools for managing storage and validation of passwords in Scala applications
Scala
5
star
20

pdf4s

Simplified wrapper to create PDFs in Scala
Scala
5
star
21

outrgl

DEPRECATED: Please use http://youi.io going forward
Scala
5
star
22

nextui

UI Abstraction Framework
Scala
4
star
23

youi-designer

User interface designer tool to create, edit, import, export, and generate user interfaces for youi.
Scala
4
star
24

pmc

Project Management in Code - An incredibly straight-forward project management and build tool for Scala.
Scala
4
star
25

lightdb

Bare Metal Modular Database
Scala
4
star
26

youi-template

Infrastructure for working with existing HTML files.
Scala
4
star
27

uberzip

Very fast multi-threaded unzipping utility.
Scala
3
star
28

youi-example

Example application built on YouI
Scala
3
star
29

robobrowser

Headless Browser wrapper library providing lots of features for API-access
Scala
3
star
30

hyperscala

DEPRECATED - See https://github.com/outr/youi for something far better.
Scala
3
star
31

youi-plugin

SBT plugin for use with YouI projects
Scala
3
star
32

outrbackup

Multi-threaded backup system.
Scala
2
star
33

iconsole

Web-based terminal / console with modular integration and distributed connectivity
Scala
2
star
34

async

Scala and Scala.js framework to execute and schedule asynchronous tasks
Scala
2
star
35

batcher

Command-line tool to batch operations, pause, save, and control concurrency
Scala
2
star
36

jsdoc2scalajs

Automated conversion of JSDocs to Scala.js facades.
Scala
1
star
37

smartystreets-scala-sdk

Scala SDK for SmartyStreets (https://smartystreets.com)
Scala
1
star
38

scalarelational-manual

Source for generating the ScalaRelational manual
Scala
1
star
39

webmidi.scala.js

Scala.js facade for Web MIDI API and https://github.com/cwilso/WebMIDIAPIShim
Scala
1
star
40

sgine-desktop.g8

Desktop-only template for Sgine
Scala
1
star
41

jar-heaven

The final solution to JAR Hell
Scala
1
star
42

torrent

Prototype for bittorrent management in Scala
Scala
1
star
43

scalajs-fabricjs

Facade around Fabric.js for Scala.js
Scala
1
star
44

ytscreensaver

Simple wrapper to play YouTube videos as a screensaver with the clock
HTML
1
star
45

geoscala

Locational data index that is full-text searchable and can update itself. Complete geospatial sorting and filtering support.
Scala
1
star