Commit Graph

813 Commits

Author SHA1 Message Date
Jonathan Dahan a3e22df15e
tag and publish on npm
this is just a sketch, and we need to set NPM_AUTH_TOKEN
2020-02-10 13:17:37 -05:00
Cinnamon f6b34f4984
Merge pull request #189 from christianbundy/release-2.13.1
2.13.1
2020-02-10 10:01:55 -08:00
Christian Bundy 6031b11470 2.13.1 2020-02-09 16:05:36 -08:00
Cinnamon 68631d76a9
Merge pull request #188 from christianbundy/fix-about
Fix bug where others could still change your name
2020-02-09 16:03:45 -08:00
Christian Bundy 410b97e9e4 Fix bug where others could still change your name
Problem: There was one missing component that would filter out nicknames
from other people. This caused a problem where we could get a name for a
feed but it could've been assigned by a friend, which we don't want
right now.

Solution: Ensure that the subject of the message is the same as the
author of the message.
2020-02-09 13:50:49 -08:00
Cinnamon 74e6925058
Merge pull request #186 from christianbundy/release-2.13.0
2.13.0
2020-02-09 13:30:42 -08:00
Christian Bundy dfb498181b 2.13.0 2020-02-09 08:11:32 -08:00
Cinnamon 2295e7858a
Merge pull request #184 from christianbundy/get-about
Use custom getAbout() to replace SSB-About
2020-02-08 19:36:45 -08:00
Cinnamon 15784efa68
Merge pull request #185 from christianbundy/add-robots
Add basic robots.txt to keep search engines away
2020-02-08 19:26:34 -08:00
Christian Bundy df11dc07bc Add basic robots.txt to keep search engines away
Problem: Search engines are controversial and my understanding is that
most people on SSB don't want their messages indexed by search engines.
If that's the case, we should probably disable it.

Solution: Add basic `robots.txt` file to ask search engines to stay away
and please don't save info. I'm concerned that, like `publicWebHosting`
redactions, it gives a false sense of privacy, but it seems like this is
probably what most people would want?
2020-02-08 19:04:08 -08:00
Christian Bundy e3c0b65e5c Use custom getAbout() to replace SSB-About
Problem: The SSB-About plugin is incompatible with our needs. More info
in the GitHub issue linked below and in the code comments.

Solution: Unfortunately, roll our own alternative to the SSB-About
plugin so that we can be 100% sure that it pulls the latest 'about'
published by an author about themselves and doesn't just skip `false`.
2020-02-08 18:50:06 -08:00
Cinnamon d944d8f711 Merge pull request #181 from christianbundy/public-option
Add --public option for public viewers
2020-02-08 16:07:18 -08:00
Cinnamon 1b489ba485
Merge pull request #182 from christianbundy/social-filter-fix
Fix and document `socialFilter()`
2020-02-08 16:04:06 -08:00
Christian Bundy 803538628c Fix and document `socialFilter()`
Problem: The `socialFilter()` function wasn't documented and contained a
bug where it wouldn't show your posts when `following = true`. This is
because you usually don't follow yourself, so `following = true` was
basically equivalent to `me = false`.

Solution: Add some documentation and resolve the bug by adding special
handling for when the message is from us *before* passing to the general
implementation for follow/block checking.

Resolves https://github.com/fraction/oasis/issues/155
Resolves https://github.com/fraction/oasis/issues/177
2020-02-08 11:13:51 -08:00
Christian Bundy 0236358dc8 Add --public option for public viewers
Problem: It's hard to show off Oasis or take screenshots without
respecting the `publicWebHosting` convention. While `publicWebHosting`
lacks a formal specification and I'm a bit confused about what its
boundaries are, it sounds like some of our friends would like to avoid
us publishing any of their content on the public web if we can avoid it.

Solution: Add --public option that turns Oasis into a public web viewer.
This makes it **slightly inconvenient** to see these public posts, but
should absolutely not be mistaken for a privacy guarantee. Only HTTP GET
endpoints are allowed, so random people can't publish or change
settings. The name, avatar, description, content warning, and message
contents are replaced with "Redacted", but again, this is all public
information that we can never provide real privacy for.

Resolves https://github.com/fraction/oasis/issues/48
2020-02-08 10:46:57 -08:00
Christian Bundy f4257a5e27
Merge pull request #175 from fraction/cinnamon-bun-patch-1
Remove duplicate line from security.md
2020-02-07 14:06:54 -08:00
Cinnamon 7f55628358
Merge pull request #154 from christianbundy/add-invite-code
Add invite code
2020-02-06 15:17:40 -08:00
Cinnamon 7ee77172f2
Merge branch 'master' into add-invite-code 2020-02-06 14:22:55 -08:00
Cinnamon d76e594e3a
Remove duplicate line from security.md 2020-02-06 14:15:03 -08:00
Cinnamon 36dabe41e3
Merge pull request #174 from christianbundy/re-add-publish
Re-add publish to nav menu
2020-02-06 13:23:34 -08:00
Christian Bundy 20b8bd188b Re-add publish to nav menu
Problem: Publish was missing! Oops.

Solution: Re-add it.

Resolves https://github.com/fraction/oasis/issues/171
2020-02-06 11:44:37 -08:00
Cinnamon e6844eb1c4
Merge pull request #169 from christianbundy/fix-blob-sniff
Remove nosniff from blob URLs
2020-02-05 19:31:18 -08:00
Cinnamon 0c38413e9c
Merge pull request #168 from christianbundy/emoji
Fix emoji and breaking space in main nav
2020-02-05 17:44:03 -08:00
Christian Bundy 0240401413 Remove nosniff from blob URLs
Problem: We use nosniff to keep the web browser from getting confused
about what kinds of content we're serving in Oasis, but this causes
problems for blob URLs that have arbitrary data.

Solution: Remove nosniff on blob URLs to let the browser figure out what
kind of content we're serving.

Resolves https://github.com/fraction/oasis/issues/138
2020-02-05 17:03:04 -08:00
Christian Bundy 602a495c7c Fix emoji and breaking space in main nav
Problem: The regular space in the sidebar emoji was breaking the line at
a specific viewport width and the emoji were being shown as the wrong
font.

Solution: Use a non-breaking space and `font-family: initial` for
full-color emoji instead of using the system font.

Resolves https://github.com/fraction/oasis/issues/150
Resolves https://github.com/fraction/oasis/issues/153
2020-02-05 14:35:30 -08:00
Cinnamon 8304dce44e
Merge pull request #161 from christianbundy/private-mentions-publish
Add view info for Private, Mentions, and Publish
2020-02-05 12:50:50 -08:00
Jonathan Dahan 5ffa7fef04
Merge pull request #162 from christianbundy/fix-social-filter
Fix socialFilter() to change `{ me = null }`
2020-02-05 13:49:51 -05:00
Christian Bundy a642d20edd Fix socialFilter() to change `{ me = null }`
Problem: The socialFilter was hiding posts published by the user, which
felt weird and uncanny.

Solution: Fix the default so that `{ me }` isn't hidden from a view
unless the model specifically wants that to happen.

Resolves https://github.com/fraction/oasis/issues/156
2020-02-04 18:05:50 -08:00
Christian Bundy d212948833 Add view info for Private, Mentions, and Publish
Problem: The Private and Mentions page didn't have view labels yet, and
Publish should be its own page instead of being at the top of every
page.

Solution: Inspired by @cinnamon-bun's work to add friendly view labels,
plus a new Publish page.  This also moves the period selection from the
popular page into the view label, which felt better to me with the
previous `<section>` background. I also tried a different text format
for describing the pages, using a common form and using `<strong>` to
draw attention to any change from "Posts from people you follow, sorted
by recency" which feels like the expected default for most people.

@cinnamon-bun: To me this feels like a fun back-and-forth where I'm
riffing on your work and hoping that you do the same, but if it feels
wrong/rude please let me know. Trying to work on designs with a system
like C4 is super new for me and I wouldn't be surprised if there are
pain points to fix!

Resolves https://github.com/fraction/oasis/issues/160
2020-02-04 17:52:50 -08:00
Christian Bundy 547ceeeac9 Add basic follow-back invites to settings page
Problem: There was no way to onboard new users since we couldn't redeem
invites.

Solution: Add basic follow-back invites to the settings page. This takes
an invite string, runs it through invite.accept, and either returns the
error in full *or* redeems the invite quietly.
2020-02-04 15:03:05 -08:00
Christian Bundy 8358bb5dab
Merge pull request #157 from cinnamon-bun/feed-descriptions
Add description of each feed at the top of the page
2020-02-04 14:57:53 -08:00
Cinnamon 351ee2a2b5 remove leftover console.log 2020-02-04 14:21:33 -08:00
Cinnamon b79ece89e6 add title to likes page 2020-02-04 13:59:54 -08:00
Cinnamon 479285d244 add help text explaining what is in each view 2020-02-04 13:30:28 -08:00
Cinnamon 21f50d1c72
Merge pull request #139 from christianbundy/add-i18n
Add basic scaffolding for internationalization
2020-02-04 11:45:50 -08:00
Christian Bundy de117f8416 Merge branch 'master' of github.com:fraction/oasis into add-i18n 2020-02-04 09:57:45 -08:00
Cinnamon ebdee55d80
Merge pull request #148 from christianbundy/add-topics-page
Add topics page
2020-02-04 09:45:33 -08:00
Cinnamon 7dfd84b65e
Merge pull request #146 from christianbundy/no-strangers
No strangers
2020-02-03 21:55:27 -08:00
Christian Bundy 1099395dfa Merge branch 'master' of github.com:fraction/oasis into add-i18n 2020-02-03 21:51:59 -08:00
Cinnamon 01d2ad7781
Merge pull request #133 from christianbundy/faster-following
Make 'Following' page way faster
2020-02-03 21:40:32 -08:00
Cinnamon 833e74ae8a
Merge pull request #141 from christianbundy/fix-search
Fix search hanging when querying 3 or fewer chars
2020-02-03 21:34:28 -08:00
Cinnamon 1a25b09cbc
Merge pull request #143 from christianbundy/fix-img
Fix /image/ URL returning a broken image
2020-02-03 21:25:43 -08:00
Cinnamon 4d00893981
Merge pull request #145 from christianbundy/fix-key-not-found
Make "key not found" error more useful
2020-02-03 21:19:46 -08:00
Cinnamon ea1a2dfce1
Merge pull request #151 from christianbundy/add-github-install
Add bleeding-edge install instructions to readme
2020-02-03 21:17:41 -08:00
Cinnamon 6ef9f7f5b6
Merge pull request #147 from christianbundy/fix-nav
Fix nav alignment on smaller screens
2020-02-03 21:12:46 -08:00
Christian Bundy d40a5c6a88 Add bleeding-edge install instructions to readme
Problem: https://github.com/fraction/oasis/issues/149

Solution: Add note to the readme advertising the npm install straight
from GitHub, which will pull the latest `master`.
2020-02-03 09:41:37 -08:00
Christian Bundy 7f40a99799 Add 'Topics' page to show latest root posts
Problem: @masukomi pointed out that the 'latest' view doesn't show the
awesome slice of content that you'll see if you just look at root posts.

Solution: Let's experiment with them! This commit adds a 'Topics' page
that has the latest root posts from people you're following.
2020-02-02 16:54:37 -08:00
Christian Bundy e28095e27d Fix nav alignment on smaller screens
Problem: The nav is aligned to the left of the screen on mobile, which
feels off-center and unbalanced on mobile. https://github.com/fraction/oasis/issues/135

Solution: Center the menu to optimize for space around the links.
2020-02-02 16:43:15 -08:00
Christian Bundy c2ea8f7cb5 Hide strangers on popular+latest and hide blocked
Problem: We shouldn't be showing any strangers on the popular or latest
pages. We shouldn't be showing anyone who's been blocked on any of those
feeds.

Solution: Don't show blocked people on any pages and don't show
strangers on the popular / latest pages.
2020-02-02 16:37:49 -08:00
Christian Bundy 9258f4753c Make "key not found" error more useful
Problem: If the user tries to see a thread and the link points to a
message we don't have, then we don't have any way to display anything in
the thread. How could we even know which thread it's in?

Solution: Throw the error but make it more useful and fix the "non-error
thrown" verbiage that we've inherited from a dependency trying to throw
a non-error.
2020-02-02 15:36:15 -08:00