Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/badsyntax/mailinabox-ui
Experimental Mail-in-a-Box User Interface built with React, Redux, TypeScript & Fluent UI
https://github.com/badsyntax/mailinabox-ui
fluent-ui mail-in-a-box mailinabox react redux typescript
Last synced: 11 days ago
JSON representation
Experimental Mail-in-a-Box User Interface built with React, Redux, TypeScript & Fluent UI
- Host: GitHub
- URL: https://github.com/badsyntax/mailinabox-ui
- Owner: badsyntax
- License: mit
- Created: 2020-06-25T22:08:00.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-10-23T18:18:27.000Z (about 1 year ago)
- Last Synced: 2024-10-11T20:11:46.734Z (27 days ago)
- Topics: fluent-ui, mail-in-a-box, mailinabox, react, redux, typescript
- Language: TypeScript
- Homepage: https://badsyntax.github.io/mailinabox-ui/
- Size: 3.56 MB
- Stars: 22
- Watchers: 4
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Mail-in-a-Box User Interface
![Build and Publish](https://github.com/badsyntax/mailinabox-ui/workflows/Build%20and%20Publish/badge.svg)
An experimental SPA user interface for [Mail-in-a-Box](https://mailinabox.email/), using the following tools:
- React & Redux
- TypeScript
- [Fluent UI](https://github.com/microsoft/fluentui) design system
- [Mail-in-a-Box API client](https://github.com/badsyntax/mailinabox-api)**NOTE**: This is very much alpha software, use at your own risk. See [FEATURES.md](https://github.com/badsyntax/mailinabox-ui/blob/master/FEATURES.md) for missing features.
## Screenshots
👉 [View Screenshots](https://github.com/badsyntax/mailinabox-ui/wiki/Screenshots)
## Demo
👉 [View Demo](https://badsyntax.github.io/mailinabox-ui/)
The demo uses a mock API, you can perform any action.
## Running Locally
### Requirements
- Node.js
### Instructions
1. Clone the repo
2. Copy `src/config/config.example.json` to `src/config/config.json` and
- Update the `hostname` field, or
- If you want to use a mock API, set `mockApi` to `true`
3. From the root of the project:
1. Run `npm install`
2. Run `npm start`All API requests sent from the browser are proxied to your box instance via a backend Node.js server to bypass CORS restrictions.
## Running in Production
Download the latest production release here: https://github.com/badsyntax/mailinabox-ui/releases/latest
(I'll add instructions on how to deploy to a Mail-in-a-Box instance in the future.)
## Related Projects
This project uses a [Mail-in-a-Box API client SDK](https://www.npmjs.com/package/mailinabox-api), generated by https://github.com/badsyntax/mailinabox-api.
## Features
See [FEATURES.md](./FEATURES.md)
## License
See [LICENSE.md](./LICENSE.md)