GithubHelp home page GithubHelp logo

hhy5277 / nextnote Goto Github PK

View Code? Open in Web Editor NEW

This project forked from brantje/nextnote

0.0 1.0 0.0 3.1 MB

A full Evernote / OneNote style WYSIWYG note editor for Nextcloud / ownCloud. Join our telegram at: https://t.me/NextNote

License: GNU Affero General Public License v3.0

JavaScript 45.12% PHP 29.98% CSS 20.99% HTML 2.47% Shell 1.43%

nextnote's Introduction

NextNote (alpha)

Scrutinizer Code Quality
This application is a rewritten verion of ownNote.
The old Android App won't work, but no worries, we plan to develop a new one.

alpha-release
Alpha means in this case 'pretty stable', but it's possible that due to an update things will break / get sent to /dev/null.
If you value your notes please wait for a stable version.

Changes:

  • Replaced deprecated methods
  • Removed XSS vulnerability (Via the announcements it was possible to inject javascript / html)
  • Updated tiny MCE to 4.7.10.
  • Fixed CSP error in tinymce.
  • Ability to embed files from your nextcloud
  • Ability to link to files from your nextcloud
  • Make use of Entity's, mappers, services

Pull requests are very welcome!

The whole app has been rebuild, so there will be some bugs in there.
Did you find a bug? Report it or fix it and send a PR.

Screenshots

save-as-pdf-example-smaller

recipe-example

nexnote-drag-and-drop-example-bigger

Features

  • Full fledged WYSIWYG editor
  • Share a note with a user or group
  • Note grouping/categorization
  • Archive notes

Todo:

  • Refactor backend to make use of:
    • Entity's
    • Mappers
    • Services
  • Switch to a AngularJS frontend
  • Rename namespace from OwnNotes to NextNotes
  • Implement note sharing
  • Import from Evernote as HTML or ENEX
  • Ability to save files to a folder as HTML files (untested)
  • Implement hierarchical structure for groups (PR's welcome!)
  • Add markdown support
  • Import from Notes app.
  • Switch between database or file mode
  • Add admin section for allowed image / video domains due CSP.
  • Encrypted notes? (What about sharing?)
  • Travis tests (We really need help with this, so PR's welcome!)
  • Develop an app for Android/iOS (We really need help with this, so PR's welcome!)

Chat

There is a Telegram chatroom available.

Installation

  • Place this app in nextcloud/apps/nextnote (Rename the extracted ZIP to "nextnote" or you will receive errors)
  • Note: custom_csp_policy changes are no longer required

Scripted installation

You can also use this script developed by enoch85:

#!/bin/bash

# Variables
DISTRO=$(lsb_release -sd | cut -d ' ' -f 2)
OS=$(uname -v | grep -ic "Ubuntu")

# Functions
# Whiptail auto-size
calc_wt_size() {
    WT_HEIGHT=17
    WT_WIDTH=$(tput cols)

    if [ -z "$WT_WIDTH" ] || [ "$WT_WIDTH" -lt 60 ]; then
        WT_WIDTH=80
    fi
    if [ "$WT_WIDTH" -gt 178 ]; then
        WT_WIDTH=120
    fi
    WT_MENU_HEIGHT=$((WT_HEIGHT-7))
    export WT_MENU_HEIGHT
}

msg_box() {
local PROMPT="$1"
    whiptail --msgbox "${PROMPT}" "$WT_HEIGHT" "$WT_WIDTH"
}

################

# Check Ubuntu version
echo "Checking server OS and version..."
if [ "$OS" != 1 ]
then
msg_box "Ubuntu Server is required to run this script.
Please install that distro and try again.
You can find the download link here: https://www.ubuntu.com/download/server"
    exit 1
fi

if ! version 16.04 "$DISTRO" 18.04.4; then
msg_box "Ubuntu version $DISTRO must be between 16.04 - 16.04.4"
    exit 1
fi

# Install git if not existing
if [ "$(dpkg-query -W -f='${Status}' "git" 2>/dev/null | grep -c "ok installed")" != "1" ]
then
    apt update -q4
    apt install git -y
fi

pull() {
cd /var/www/nextcloud/apps || exit
rm -rf nextnote
git clone https://github.com/brantje/nextnote.git nextnote
chown -R www-data:www-data /var/www/nextcloud/apps/nextnote
sudo -u www-data php /var/www/nextcloud/occ app:enable nextnote
}

if pull
then
    exit
else
    echo "not sucessfull pull $(date)" > /var/log/nextnote_pull.log
fi

Simply just run it everytime you want to get the latest master code.

Development

NextNotes uses a single .js file for the templates.
This gives the benefit that we don't need to request every template with XHR. For CSS we use SASS so you need ruby and sass installed. templates.js and the CSS are built with grunt, so don't edit them as your changes will be overwritten next time grunt is ran.
To watch for changes use grunt watch

nextnote's People

Contributors

atbanpc avatar aviret avatar brantje avatar mattenklicker avatar morrisjobke avatar mulander avatar nextcloud-bot avatar nickvergessen avatar sunjam avatar thomasdaheim avatar trurli avatar

Watchers

 avatar

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.