JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 211
  • Score
    100M100P100Q85646F
  • License CC-BY-NC-4.0

React UI for Netskrafl

Package Exports

  • @mideind/netskrafl-react
  • @mideind/netskrafl-react/style.css

Readme

netskrafl-react

A React front end for Netskrafl

This is a web front end for the Netskrafl game server, packaged as a React component.

The component is written in TypeScript. It assumes that the containing application (a) performs user authentication and (b) determines whether users have full access to the Netskrafl functionality (typically by being paying subscribers) or limited/free access. Information about (a) and (b) is passed to the component via its props.

The code for the Netskrafl backend server can be found on GitHub at https://github.com/mideind/Netskrafl. The backend is written in Python, using the Flask web framework. The netskrafl-react component talks to the Netskrafl server via a JSON API over HTTPS, and uses Firebase for real-time updates.

The source code for netskrafl-react is a bit unusual in that it was originally written for the Mithril UI framework. The Mithril code has been wrapped in a React component. Modifying the component thus requires some familiarity with Mithril, as well as React. However, Mithril is fairly straightforward and arguably simpler than React, so this should not be a major obstacle.

Installation

To install the Netskrafl React component via npm, run the following command:

npm install @mideind/netskrafl-react

Development

During development, you can run the rollup bundler in watch mode by running:

npm run watch

You can also use Storybook as a testing container by running:

npm run storybook

To build the component for production, run:

npm run rollup

See the package.json file for specifics.

Copyright © 2025 Miðeind ehf. The original author of netskrafl-react is Vilhjálmur Þorsteinsson.

This code is released under the CC-BY-NC 4.0 license. See the LICENSE file for details.