https://github.com/ryanfleck/scalajs
Simple ScalaJS Web Application
https://github.com/ryanfleck/scalajs
javascript scala scalajs webapp
Last synced: about 1 year ago
JSON representation
Simple ScalaJS Web Application
- Host: GitHub
- URL: https://github.com/ryanfleck/scalajs
- Owner: RyanFleck
- Created: 2020-04-28T18:22:03.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-11T03:47:01.000Z (over 3 years ago)
- Last Synced: 2025-02-12T23:40:27.522Z (over 1 year ago)
- Topics: javascript, scala, scalajs, webapp
- Language: Scala
- Homepage: https://scalajs.ryanfleck.ca/
- Size: 517 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ScalaJS Test Project
[](https://travis-ci.org/RyanFleck/ScalaJS)
[](https://www.scala-js.org)
A small repository partially following the [basic ScalaJS tutorial](https://www.scala-js.org/doc/tutorial/basic/)
showcasing how to compile Scala code for the web. I'm writing this because I'm
interested in edge computing and would prefer for computation to be outsourced
to client devices to lower server costs. Built with *IntelliJ IDEA*.
**Completed Goals:**
1. Write some Scala
1. Compile to JavaScript
1. Manipulate DOM
1. Write tests to verify DOM was manipulated
1. Ensure *Travis CI* can run the tests.
1. WebPack everything so I can use regular JavaScript, too.
1. Remove WebPack because it doesn't play nice with ScalaJS and ES6. Investigate?
1. Create a simple REPL
1. Pass the contents of a textarea line
**ToDo:**
1. Send an XMLHTTPRequest to get some data
1. Process the contents of a file or line
1. Persist data in client-side WebDB
1. Utilize a *module* from a different repository
**Test Example**
```
-------------------------------- Running Tests --------------------------------
+ tutorial.webapp.TutorialAppTest.HelloWorld 4ms
+ tutorial.webapp.TutorialAppTest.ClickedMessage 4ms
[info] Tests: 2, Passed: 2, Failed: 0
[success] Total time: 29 s, completed Apr 28, 2020, 6:41:18 PM
```