Mirror of https://github.com/fraction/oasis.git to build Docker images 🙈
Go to file
Christian Bundy 3c9ec37d2f Add very basic test suite
Problem: ESLint and TypeScript help catch some types of regressions, but
they don't protect us against obvious stuff like "the server won't
start". This means that humans need to test a bunch of stuff manually,
and that can be really tedious and exhausting.

Solution: Yesterday someone invented this cool concept called "testing"
where you write automated tests for your software to ensure it actually
works the way you expect. It might have beeen invented before yesterday,
I don't know. Anyway, this solution adds a bunch of tests that send HTTP
GET requests to a bunch of endpoints to make sure the server is at least
returning HTTP 200 responses. It also fixes a race condition where HTTP
server was available before the readme / version strings were loaded.
2020-04-03 09:17:13 -07:00
.github Remove version question from issue template 2020-03-24 11:35:24 -07:00
contrib Fix issue w/ mkdirp race condition 2020-03-15 13:57:35 -07:00
docs Clean up root of project directory 2020-04-01 15:04:57 -07:00
scripts Remove debug output and add comments 2020-02-26 20:40:23 -08:00
src Add very basic test suite 2020-04-03 09:17:13 -07:00
test Add very basic test suite 2020-04-03 09:17:13 -07:00
.cspell.json Fix theme using capitalization 2020-03-24 14:55:50 -07:00
.dockerignore Add support for running oasis in a docker container 2020-01-01 10:07:41 -05:00
.gitignore Add VSCode files to gitignore 2020-02-17 12:57:38 +01:00
.mailmap Add .mailmap for canonical identities 2020-03-24 16:59:20 -07:00
.prettierignore Add very basic test suite 2020-04-03 09:17:13 -07:00
.stylelintrc Re-add stylelint config 2020-04-01 18:28:59 -07:00
.travis.yml Resolve Travis CI + Windows EOL bug 2020-03-23 19:20:38 -07:00
LICENSE Add LICENSE file (for AGPL-3.0) 2020-01-28 17:45:00 -08:00
README.md Add Matrix chat room to readme 2020-03-27 09:24:13 -07:00
package-lock.json Add very basic test suite 2020-04-03 09:17:13 -07:00
package.json Add very basic test suite 2020-04-03 09:17:13 -07:00

README.md

Oasis

Oasis is a free, open-source, peer-to-peer social application that helps you follow friends and discover new ones on Secure Scuttlebutt (SSB).

🦀 Powered by SSB.
You're the center of your own distributed network. Online or offline, SSB works anywhere that you are. Follow the people you want to see and never worry about spam again. Switch to any SSB app you want at any time.

🌐 Bring your own browser.
Use your favorite web browser to read and write messages to the people you care about. Oasis runs a small HTTP server on your own computer, so you don't need to worry about adding another Electron app to your computer.

🏰 Just HTML and CSS.
No browser JavaScript! Oasis has strict security rules that prevent any JavaScript from running in your browser, which helps us make Oasis accessible and easy to improve.

Example

After installing, launch Oasis from the command line by running:

oasis

It will then pop open a browser window for you.

Screenshot of Oasis

Use oasis --help to get configuration options. You can change the default values with a custom configuration.

Installation

First, you'll need Node.js and npm on your computer. Run node --version to see if you have it. If not, or if it's older than the current or active LTS version, you should download Node.js first.

Then you can install the stable version of Oasis:

npm -g install fraction/oasis#semver:

Or, for faster updates and less stability, install Oasis from GitHub and upgrade often.

npm -g install fraction/oasis

Check out install.md for more information.

FAQ

Can I use the same profile from multiple computers?

No, this is a limitation of SSB. You'll need to make a separate profile on each device. There is a workaround we'd like to implement which ties your multiple profiles together.

Can I run this at the same time as Patchwork and other SSB apps?

Yes! They will both use the same data and profile. You can either run them one at a time or simultaneously. If you run them at the same time, start Patchwork first, then Oasis.

Details: SSB apps have two parts: a "server" that manages the database (on your own computer), and a user interface that gets things from the server to display. Only one server can run at a time, but multiple apps can use it.

App Runs its own SSB server Can use SSB server of another app
Oasis Yes, unless one is already running Yes
Patchwork Yes No, only uses its own server
Patchbay Yes No, only uses its own server
Patchfox No Yes, depends on other apps to provide a server

Resources

See Also

License

AGPL-3.0