Web wallet for CrypticOre written in React

@Drew Lemmy Drew Lemmy authored on 14 Mar 2021
.github chore: workflow attempt 4 4 years ago
.vscode feat: add krist commits to whats new page 4 years ago
public feat: add krist what's new and kristweb commits 4 years ago
src feat: add kristweb what's new 4 years ago
tools feat: add krist what's new and kristweb commits 4 years ago
typings/react-timeago/lib/ formatters i18n: add timeago locales 4 years ago
.editorconfig refactor: switch to ant-design 4 years ago
.eslintignore feat: credits screen, websocket, lint 5 years ago
.eslintrc.json refactor: remove react import (react v17) 4 years ago
.gitignore feat: show build version 4 years ago
LICENSE.txt feat: initial commit 5 years ago
README.md chore: update README for i18n library info 4 years ago
craco.config.js feat: add krist what's new and kristweb commits 4 years ago
package.json feat: add krist what's new and kristweb commits 4 years ago
pnpm-lock.yaml feat: add krist what's new and kristweb commits 4 years ago
tsconfig.extend.json fix: address page auto-refresh (fixes #9) 4 years ago
tsconfig.json i18n: add timeago locales 4 years ago
README.md

KristWeb v2


Dashboard design mockup

STILL IN DEVELOPMENT

This project is heavily under development. It is currently in the design stages, meaning there is no useful functionality yet.

Rewrite of the Krist Web Wallet, in React. This is a fully clientside Krist wallet that only needs to communicate to the Krist node itself. It securely saves wallets encrypted in your browser's Local Storage, so you don't have to type in wallet passwords ever again!

Building (for development)

git clone https://github.com/tmpim/KristWeb2
cd KristWeb2

npm i -g pnpm # If you don't have pnpm, please use it for development

pnpm install
npm start # Run the development server

Building (for production)

git clone https://github.com/tmpim/KristWeb2
cd KristWeb2
npm install
npm run full-build # Build the production files

Contributing

As per tmpim convention, this project uses Conventional Commits as a standard for commit messages.

Contributing translations

Translation files are currently created manually in the i18next JSON format, with support for JSON5 syntax. You can find existing translations in public/locales. The English (GB) translation is used as the fallback.

Language files are named with IETF language tags. Short tags (e.g. en instead of en-GB) are preferred.

IMPORTANT: If you are adding a new language, you must add a listing for the language with the English name, native name, a country code (for the flag) and the contributors list to src/__data__/languages.json.

The keys antLocale, dayjsLocale and timeagoLocale are all optional keys that refer to the locale names from the respective libraries. If the library does not support your language, create an issue on this repo or mention it in your PR, because I can add a simple system to support custom translations for these libraries if it is needed, though you should also PR to the libraries themselves.

List of supported locale codes for each library:

The library will automatically detect the language from your browser to use, but for the sake of testing, you can override it by running the following command in the developer console (Ctrl+Shift+I):

localStorage.i18nextLng = "en";

If you need any help with specific i18next features (e.g. handling plurals), don't hesitate to contact Lemmmy.

If you like my work, and want to help me with this hobby project and many more in the future, please consider donating.

License

Copyright (c) 2020-2021 Drew Lemmy

This project is licensed under the GPL v3 license. See LICENSE.txt for more.