Update "Requirements" and "Getting started" README sections (#205)
I hope this makes `README.md` a bit more friendly for our early adopters, but any feedback is welcome as usual 🙂
This commit is contained in:
parent
ac50208447
commit
f15f598d7b
71
README.md
71
README.md
|
@ -21,16 +21,6 @@ forget to check [the "Contributing" section](https://github.com/swiftwasm/Tokama
|
||||||
If you'd like to participate in the growing [SwiftWasm](https://swiftwasm.org) community, you're also very
|
If you'd like to participate in the growing [SwiftWasm](https://swiftwasm.org) community, you're also very
|
||||||
welcome to join the `#webassembly` channel in [the SwiftPM Slack](https://swift-package-manager.herokuapp.com/).
|
welcome to join the `#webassembly` channel in [the SwiftPM Slack](https://swift-package-manager.herokuapp.com/).
|
||||||
|
|
||||||
## Getting started
|
|
||||||
|
|
||||||
Tokamak relies on [`carton`](https://carton.dev) as a primary build tool. Please follow
|
|
||||||
[installation instructions](https://github.com/swiftwasm/carton#requirements) for `carton` first.
|
|
||||||
|
|
||||||
After `carton` is successfully installed, type `carton dev --product TokamakDemo` in the
|
|
||||||
root directory of the cloned Tokamak repository. This will build the demo project and its
|
|
||||||
dependencies and launch a development HTTP server. You can then open
|
|
||||||
[http://127.0.0.1:8080/](http://127.0.0.1:8080/) in your browser to interact with the demo.
|
|
||||||
|
|
||||||
### Example code
|
### Example code
|
||||||
|
|
||||||
Tokamak API attempts to resemble SwiftUI API as much as possible. The main difference is
|
Tokamak API attempts to resemble SwiftUI API as much as possible. The main difference is
|
||||||
|
@ -115,6 +105,67 @@ This way both [Semantic UI](https://semantic-ui.com/) styles and [moment.js](htt
|
||||||
localized date formatting (or any arbitrary style/script/font added that way) are available in your
|
localized date formatting (or any arbitrary style/script/font added that way) are available in your
|
||||||
app.
|
app.
|
||||||
|
|
||||||
|
## Requirements for app developers
|
||||||
|
|
||||||
|
- macOS 10.15 and Xcode 11.4 or later for macOS.
|
||||||
|
- [Swift 5.2 or later](https://swift.org/download/) for Linux.
|
||||||
|
|
||||||
|
## Requirements for app users
|
||||||
|
|
||||||
|
Any browser that [supports WebAssembly](https://caniuse.com/#feat=wasm) should work, which currently includes:
|
||||||
|
|
||||||
|
- Edge 16+
|
||||||
|
- Firefox 53+
|
||||||
|
- Chrome 57+
|
||||||
|
- (Mobile) Safari 11+
|
||||||
|
|
||||||
|
Not all of these were tested though, compatibility reports are very welcome!
|
||||||
|
|
||||||
|
## Getting started
|
||||||
|
|
||||||
|
Tokamak relies on [`carton`](https://carton.dev) as a primary build tool. As a part of these steps
|
||||||
|
you'll install `carton` via [Homebrew](https://brew.sh/) on macOS (unfortunately you'll have to build
|
||||||
|
it manually on Linux). Assuming you already have Homebrew installed, you can create a new Tokamak
|
||||||
|
app by following these steps:
|
||||||
|
|
||||||
|
1. Install `carton`:
|
||||||
|
|
||||||
|
```
|
||||||
|
brew install swiftwasm/tap/carton
|
||||||
|
```
|
||||||
|
|
||||||
|
If you had `carton` installed before this, make sure you have version 0.4.1 or greater:
|
||||||
|
|
||||||
|
```
|
||||||
|
carton --version
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Create a directory for your project and make it current:
|
||||||
|
|
||||||
|
```
|
||||||
|
mkdir TokamakApp && cd TokamakApp
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Initialize the project from a template with `carton`:
|
||||||
|
|
||||||
|
```
|
||||||
|
carton init --template tokamak
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Build the project and start the development server, `carton dev` can be kept running
|
||||||
|
during development:
|
||||||
|
|
||||||
|
```
|
||||||
|
carton dev
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Open [http://127.0.0.1:8080/](http://127.0.0.1:8080/) in your browser to see the app
|
||||||
|
running. You can edit the app source code in your favorite editor and save it, `carton`
|
||||||
|
will immediately rebuild the app and reload all browser tabs that have the app open.
|
||||||
|
|
||||||
|
You can also clone this repository and run `carton dev` in its root directory. This
|
||||||
|
will build the demo app that shows almost all of the currently implemented APIs.
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
### Modular structure
|
### Modular structure
|
||||||
|
|
Loading…
Reference in New Issue