outline goals and non-goals

This commit is contained in:
Nolan Lawson 2018-03-11 12:55:46 -07:00
parent ba54864bda
commit a0e6672d84
1 changed files with 38 additions and 1 deletions

View File

@ -2,16 +2,53 @@
An alternative web client for [Mastodon](https://joinmastodon.org]). An alternative web client for [Mastodon](https://joinmastodon.org]).
## Goals and non-goals
This section lays out some high-level goals for Pinafore, as well as the goals it _doesn't_ intend to tackle.
### Goals
- Support the most common use cases
- Fast even on low-end phones
- Works offline in read-only mode
- Progressive Web App features
- Multi-instance support
- Support latest versions of Chrome, Edge, Firefox, and Safari
- a11y (keyboard navigation, screen readers)
### Possible future goals
- Works as an alternative frontend self-hosted by instances
- Ship in the Android/iOS app stores as a Cordova app
- Support Pleroma/non-Mastodon backends
- i18n
### Non-goals
- Supporting old browsers, proxy browsers, or text-based browsers
- React Native / NativeScript / hybrid-native version
- Full functionality with JavaScript disabled
- Emoji support beyond the built-in system emoji
- Custom emoji keyboard
- Multi-column support
- Keyboard shortcuts
- Admin/moderation panel
- Works offline in read-write mode
## Building ## Building
npm install npm install
npm run build npm run build
PORT=4002 npm start PORT=4002 npm start
Now it's running at `localhost:4002`.
## Development ## Development
npm run dev npm run dev
Now it's running at `localhost:4002`.
## Testing in development mode ## Testing in development mode
In separate terminals: In separate terminals:
@ -53,4 +90,4 @@ Run tests for a particular browser:
Automatically fix most linting issues: Automatically fix most linting issues:
npx standard --fix npx standard --fix