Cybre pinafore fork
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
chr 2234ed3144 Make cybre theme the default, but actually 6 months ago
assets add manifest description (#262) 9 months ago
bin add "reply all" icon (#392) 8 months ago
docs Add instructions for admins to achieve Pinafore compatibility (#406) 7 months ago
fixtures travis: use special pinafore user for postgres 10 months ago
original-assets add windows icons, optimize icons 11 months ago
routes Make cybre theme the default, but actually 6 months ago
scss Make cybre theme the default, but actually 6 months ago
templates fix built 2xx.html file 6 months ago
tests remove useless aria-hidden (#386) 8 months ago
.gitignore Add CSP (#119) 10 months ago
.travis.yml tests: use `npm ci || npm i` in travis (#373) 8 months ago
CONTRIBUTING.md update to mastodon 2.4.0 in travis (#371) 8 months ago
Dockerfile Added Dockerfile (#313) 9 months ago
LICENSE add footer and license 11 months ago
README.md Add more admin notes (#407) 7 months ago
inline-script.js Make cybre theme the default, but actually 6 months ago
package-lock.json Update css-loader to the latest version 🚀 (#410) 6 months ago
package.json Update css-loader to the latest version 🚀 (#410) 6 months ago
server.js Added Dockerfile (#313) 9 months ago
webpack.client.config.js isolate autosuggestion state (#273) 9 months ago
webpack.server.config.js use standard 1 year ago

README.md

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. See the admin guide to troubleshoot instance compatibility issues.

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.