All Projects → shadaj → Slinky

shadaj / Slinky

Licence: mit
Write Scala.js React apps just like you would in ES6

Programming Languages

scala
5932 projects
scalajs
39 projects

Projects that are alternatives of or similar to Slinky

Client
The Hypothesis web-based annotation client.
Stars: ✭ 416 (-18.91%)
Mutual labels:  frontend
Framework
A modular front-end framework - inspired by the server-side and Web Components.
Stars: ✭ 448 (-12.67%)
Mutual labels:  frontend
Cohesive Colors
Tool that may help you to create cohesive color schemes.
Stars: ✭ 492 (-4.09%)
Mutual labels:  frontend
Awesome List
collect all awesome about IT
Stars: ✭ 425 (-17.15%)
Mutual labels:  frontend
Ivi
🔥 Javascript (TypeScript) library for building web user interfaces
Stars: ✭ 445 (-13.26%)
Mutual labels:  frontend
Curriculum
Dive into our 7-month web development program covering HTML, CSS, Javascript, Node, and React!
Stars: ✭ 453 (-11.7%)
Mutual labels:  frontend
Vue Skeleton Mvp
VueJs, Vuetify, Vue Router and Vuex skeleton MVP written on JavaScript using async/await built to work with API REST skeleton: https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton
Stars: ✭ 406 (-20.86%)
Mutual labels:  frontend
Swiper
轻量的移动端 H5 翻页库
Stars: ✭ 504 (-1.75%)
Mutual labels:  frontend
Xi Term
A terminal frontend for Xi
Stars: ✭ 446 (-13.06%)
Mutual labels:  frontend
Vgrep
vgrep - a user-friendly pager for grep
Stars: ✭ 492 (-4.09%)
Mutual labels:  frontend
Mobx Angular
MobX connector to Angular
Stars: ✭ 432 (-15.79%)
Mutual labels:  frontend
Reagent
The idea and some of the code for making components atom-like comes from pump. The reactive-atom idea (and some code) comes from reflex.
Stars: ✭ 4,344 (+746.78%)
Mutual labels:  frontend
Reactive Interaction Gateway
Create low-latency, interactive user experiences for stateless microservices.
Stars: ✭ 465 (-9.36%)
Mutual labels:  frontend
Annotated Webpack Config
This is the companion github repo for the "An Annotated webpack 4 Config for Frontend Web Development" article.
Stars: ✭ 425 (-17.15%)
Mutual labels:  frontend
Painterro
Painterro - JavaScript painting plugin
Stars: ✭ 496 (-3.31%)
Mutual labels:  frontend
React Blur
React component to blur image backgrounds using canvas.
Stars: ✭ 416 (-18.91%)
Mutual labels:  frontend
Vue Slick Carousel
🚥Vue Slick Carousel with True SSR Written for ⚡Faster Luxstay
Stars: ✭ 447 (-12.87%)
Mutual labels:  frontend
Korolev
Single Page Applications running on the server side.
Stars: ✭ 510 (-0.58%)
Mutual labels:  frontend
Po Angular
Biblioteca de componentes Angular.
Stars: ✭ 497 (-3.12%)
Mutual labels:  frontend
San
A fast, portable, flexible JavaScript component framework
Stars: ✭ 4,514 (+779.92%)
Mutual labels:  frontend

Write Scala.js React apps just like you would in ES6

Get started at slinky.dev

What is Slinky?

Slinky is a framework for writing React apps in Scala with an experience just like using ES6.

Slinky lets you:

  • Write React components in Scala with an API that mirrors vanilla React
  • Implement interfaces to other React libraries with automatic conversions between Scala and JS types
  • Write apps for React Native, React 360, and Electron, including the ability to share code with web apps
  • Develop apps iteratively with included hot-reloading support

Contributing

Slinky is split up into several submodules:

  • core contains the React.js facades and APIs for creating components and interfaces to external components
  • web contains bindings to React DOM and definitions for the HTML/SVG tag API
  • reactrouter contains bindings to React Router
  • history contains a facade for the HTML5 history API
  • native contains bindings to React Native and external component definitions for native UI elements
  • vr contains bindings to React 360 and external component definitions for VR UI elements
  • readWrite contains the Reader and Writer typeclasses used to persist state for hot reloading
  • hot contains the entrypoint for enabling hot-reloading
  • scalajsReactInterop implements automatic conversions between Slinky and Scala.js React types
  • testRenderer contains bindings to react-test-renderer for unit testing components
  • coreIntellijSupport contains IntelliJ-specific support for the @react macro annotation
  • tests contains the unit tests for the above modules (except native and vr which have local tests)
  • docs and docsMacros contains the documentation site, which is a Slinky app itself

To run the main unit tests, first install the dependencies by running npm install inside the tests folder, then from the base folder run sbt tests/test. Similarly for React Native tests, run npm install inside the native folder, then from the base folder run sbt native/test.

Note to IntelliJ IDEA users. When you try to import Slinky SBT definition in IDEA and encounter an exception like java.nio.file.NoSuchFileException: /Users/someuser/.slinkyPluginIC/sdk/192.6817.14/plugins, you should try to download required IntelliJ files for plugin subproject manually before importing:

sbt coreIntellijSupport/updateIntellij

And then import the project again.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].