Mirror of upstream Pinafore https://github.com/nolanlawson/pinafore/
Go to file
Nolan Lawson e8d2cd9ffc
tests: quicker login, tweak test setup (#372)
* make tests faster by logging in directly

* downgrade testcafe

* Revert "downgrade testcafe"

This reverts commit 0f78f5ef63f25b6428de2faba476a353a338c695.

* try a delay

* the delay does not do anything

* disable concurrency in testcafe

* make setup script less noisy

* try transparency of 2?

* Revert "the delay does not do anything"

This reverts commit 438b3519a4e0c325e89f0c2a0eff6a7a4ae11ebd.

* try a delay of 400ms

* okay fine delay of 1s

* try concurrency of 4 again
2018-06-08 09:00:20 -07:00
assets add manifest description (#262) 2018-05-03 21:24:18 -07:00
bin tests: quicker login, tweak test setup (#372) 2018-06-08 09:00:20 -07:00
docs Add CSP (#119) 2018-04-14 15:50:16 -07:00
fixtures travis: use special pinafore user for postgres 2018-04-10 18:39:56 -07:00
original-assets add windows icons, optimize icons 2018-03-22 20:43:16 -07:00
routes tests: quicker login, tweak test setup (#372) 2018-06-08 09:00:20 -07:00
scss fix container focus rendering issue on Edge (#256) 2018-05-02 20:35:05 -07:00
templates switch from copy icon to link icon (#343) 2018-05-26 17:23:27 -07:00
tests tests: quicker login, tweak test setup (#372) 2018-06-08 09:00:20 -07:00
.gitignore Add CSP (#119) 2018-04-14 15:50:16 -07:00
.travis.yml use npm install instead of npm ci in travis (#362) 2018-06-07 07:14:05 -07:00
CONTRIBUTING.md update to mastodon 2.4.0 in travis (#371) 2018-06-07 15:26:47 -07:00
Dockerfile Added Dockerfile (#313) 2018-05-24 19:59:48 -07:00
inline-script.js fix themes (#199) 2018-04-21 00:33:42 -07:00
LICENSE add footer and license 2018-03-07 09:25:07 -08:00
package-lock.json Update testcafe to the latest version 🚀 (#370) 2018-06-07 15:26:21 -07:00
package.json update to mastodon 2.4.0 in travis (#371) 2018-06-07 15:26:47 -07:00
README.md Fix Mastodon link (#364) 2018-06-03 13:36:33 -07:00
server.js Added Dockerfile (#313) 2018-05-24 19:59:48 -07:00
webpack.client.config.js isolate autosuggestion state (#273) 2018-05-06 16:25:17 -07:00
webpack.server.config.js use standard 2018-02-08 22:29:29 -08:00

Pinafore Build Status Greenkeeper badge

An alternative web client for Mastodon, focused on speed and simplicity.

Pinafore is available at pinafore.social. Bleeding-edge releases are at dev.pinafore.social.

See the user guide for basic usage.

For updates and support, follow us at @pinafore@mastodon.technology.

Browser support

Pinafore supports the latest versions of the following browsers:

  • Chrome
  • Edge
  • Firefox
  • Safari

Compatible versions of each (Opera, Brave, Samsung, etc.) should be fine.

Goals and non-goals

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
  • Android/iOS apps (using Cordova or similar)
  • Support Pleroma/non-Mastodon backends
  • i18n
  • Offline search
  • Full emoji keyboard
  • Keyboard shortcuts

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
  • Multi-column support
  • Admin/moderation panel
  • Works offline in read-write mode (would require sophisticated sync logic)

Building

To build Pinafore for production:

npm install
npm run build
PORT=4002 npm start

Docker

To build a docker image for production:

docker build .
docker run -d -p 4002:4002 [your-image]

Now Pinafore is running at localhost:4002.

Pinafore requires Node.js v8+.

Developing and testing

See CONTRIBUTING.md for how to run Pinafore in dev mode and run tests.

Changelog

For a changelog, see the GitHub releases.