Git Product home page Git Product logo

shaark's Introduction

Logo Shaark

Shaark is a self-hosted platform to keep and share your content: web links, posts, passwords and pictures.

All of your data can be private, public or both and can be browsed by tags or all-in-one search.

Shaark is production ready, inspired by Shaarli, built with Laravel and Vue.js.

πŸ“Œ Roadmap for the next version is available, we'd like to hear your feedback!

Summary

Features / Demo / Documentation / Contribute / Security / Tests / Licence

Features

  • Links : to keep your bookmarks (with health-checks)
  • Stories : posts with markdown flavored content
  • Chests : to save your passwords
  • Albums : to host your pictures
  • Rapid sharing extension and Progressive Web App
  • Tagging system, walls, search and RSS feeds
  • Private content or entirely private (with temp sharing)
  • Theming (dark mode, background)
  • i18n (πŸ‡¬πŸ‡§, πŸ‡«πŸ‡·, πŸ‡©πŸ‡ͺ, πŸ‡―πŸ‡΅ and πŸ‡³πŸ‡±)
  • Archiving (as pdf, as media)
  • DB encryption, 2-FA, Multi-users, backup

Demo

Homepage

A public demo is available at https://shaark.mka.ovh. Credentials are [email protected] and secret. This demo is resetted hourly.

Documentation

Contribute

Features and bugs

All contributions are welcome! Please use the dev branch for your pull requests.
If you make changes to JS, don't compile assets in production, I'll manually compile them when merging for security reasons.

Translation

Shaark is actually available in πŸ‡¬πŸ‡§, πŸ‡«πŸ‡·, πŸ‡©πŸ‡ͺ, πŸ‡―πŸ‡΅ and πŸ‡³πŸ‡±. Feel free to make a pull request to add or update a localization. You can see laravel base localizations on this repo.

Security

If you find any security issues, please send me an email (can be found in composer.json).

Global privacy

If you don't want your content being publicy accessible, you can update this preference once application is installed from settings section.

2-FA

You're able to active 2-FA (2 factors authentication). By default 2-FA is disabled but you can update it from your app settings. Code length and code expiration are also configurable. Test if you application can send emails before enabling this feature.

Auth monitoring

Shaark logs all successful and failed auths with their associated devices.

Chests encryption

Since 1.2.9, all chests data are encrypted in your database using AES-256-CBC and your app key.

Multi-users

Others users can be admin or non-admin. Admin users are like the main user and have an access to the entire content. Non-admin users can't access the settings section and can only see their own private content.

Tests

  1. Be sure to have a testing database with touch database/testing.sqlite and have composer require-dev dependencies installer.
  2. Run testing server php artisan serve --env=testing.
  3. Run tests php artisan dusk --env=testing

Licence

MIT

shaark's People

Contributors

dododedodonl avatar kayschima avatar marceauka avatar pandry avatar tuananhp-1844 avatar wyred avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shaark's Issues

css and js broke

Hi, am testing shaarli but am getting an error in CSS and js broke. I think its something to do with a public folder or mix-manifest.json file is not readable.

Laravel Shaarli - Laravel Shaarli - Google Chrome 11_5_2019 7_48_01 AM (2)
am using xamp

Customize search mode

Related to #33

Search use "full-text search" with Laravel Scout. Add an option to search with a simple SQL LIKE %search%

Compact mode

Allow to display content as compact mode (with no content)

Preferred order for posts

By default posts are ordered by created date. It'll be nice to choose posts order by created_at or updated_at

[Question] No need yarn at installation?

In readme.md Installation process doesn't include yarn or npm run prod.
Is there no need to exec them?

and

When setting APP_ENV=production, php artisan shaarli:install always fails. It it OK?

Manage menu not clickable on Safari

Hi,

Thanks for making this app!

I've just installed it on my server and have encountered a few problems. One of them is this menu.
It is not clickable on when viewed on Safari v13.0.1.
It works fine on google Chrome

shaarli-manage-menu

Pingback system

A pingback system allowing Laravel shaarli instances to communicate

Laravel Shaarli new branding is Shaark

Laravel Shaarli was initialy a fun project to re-implement Shaarli with Laravel but it's becoming quite different and keeping the name "Shaarli" is misleading for users.

The new name "Shaark" will be used in the next version.
If you already have an instance of shaarli it's important to change your git remote url:
git remote set-url origin https://github.com/MarceauKa/shaark.git

2FA

Implements 2FA

Extra HTML code in "Title" field when adding URL

At the "Add Link" form, I fill in the URL, the Title and Content is then auto-filled. However, the Title field has some extra HTML codes.

shaarli-addurl

This is on v1.2.16

Edit: Looks like this happens only when there's a / in the title

Suggestions

It seems to be a solid project for such a short development time! πŸ‘

If I may suggest a few improvements after a quick glance at the project:

  • it seems to have a lot of dependencies, maybe necessary but undocumented (PHP Excel ?)
  • due to these dependencies, required PHP extensions should be added to the README
  • you should explain how to get it started with SQLite as the default .env contains MySQL settings
  • almost no unit tests πŸ‘€

Comment system to posts

Please make it possible to allow comments (only for Registered Users) to a Link or Image or Story.

Search improvements

  • Add search loading indicator
  • Add search history
  • Add "no results" information

Responsive navbar

  • Show search without having to click on the hamburger menu
  • Show user menu without having to make 2 clicks

Search does not work for Japanese text

On English, it works fine:
γ‚Ήγ‚―γƒͺγƒΌγƒ³γ‚·γƒ§γƒƒγƒˆ 2019-10-25 午後3 26 04

When searching Japanese, nothing shows up:
γ‚Ήγ‚―γƒͺγƒΌγƒ³γ‚·γƒ§γƒƒγƒˆ 2019-10-25 午後3 26 16

Thought you might want to know in case you want to push this project to Japanese users.

Content temp URL

For Link, Story or Chest that's private, add the availability to share a temp link

Multi users

Allow multi users. Each user can have their own private content.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.