thomaspeklak / node-wiki Goto Github PK
View Code? Open in Web Editor NEWHTML5 editor powered wiki with drag and drop file upload and easy page creation
License: MIT License
HTML5 editor powered wiki with drag and drop file upload and easy page creation
License: MIT License
In version 0.1 i18n was prepared with only one language. 0.2 should provide a language switch and at least one addtional language
Pasting links into the content area should have the same effect as dropping.
let users create a task list. This can either be implemented via input/checkboxes with values or more sophisticated via custom styles.
As more features land in Node Wiki it seems necessary to document the features.
Possible solutions:
Most Wiki systems are missing an easy and intuitive navigation construction.
I implemented a middleware script in my work for static navigation.
For that, the special page name 'navigation' is reserved for defining a static menu structure of the wiki.
The content of this page will be incuded and shown on the left hand side in the column topmost above the pages-section (subpages list section).
Implementation already commited in my fork.
Creating an api for the wiki, can be the starting point for other tools to link into the project. This should make frontend development inside node wiki easier.
If you edit tags and remove all input from the input field (0 chars) and bluring the input field (loosing focus) will end up in a non-editable tags section because editing tags depends on a click event on the tags HTML element section.
Possible solution: Add a CSS rule for tags HTML-markup to let it display a padding and a special editing cursor. With a padding, the tags secion will be editable even if no content is displayed in the HTML markup section.
I will implement that in my fork.
If node-wiki is being worked on still, it would be nice to have a user management and respective permissions for pages.
Any plans on that?
Allow opening of links in new/background tabs.
As node wiki advances from a playground to a serious project it needs a good test base. Otherwise contributions are too hard.
The regexp search is working but as of MongoDB 2.4 it incorporates a text search. It would be worth trying out.
Create a link when a link is dropped to content
Support for videos in Content area drop
From a usability perspective deletion should be as easy as creating a page. Best thing to do is probably provide a delete flag on pages and filter all lists.
I'm not sure if a user should be able to permanently delete a page?
See stackoverflow for more details
When entering a slash in page title the page will not be displayed.
Maybe mongodb has issues here
%20 etc. gets shown otherwise for whitespaces in page titles
Version the content of a page. Show diffs and possibility to go back.
21 Jan 11:10:56 - [nodemon] v1.3.2
21 Jan 11:10:56 - [nodemon] to restart at any time, enter `rs`
21 Jan 11:10:56 - [nodemon] watching: /Users/cdieringer/node/node-wiki/lib/**/* /Users/cdieringer/node/node-wiki/models/**/* /Users/cdieringer/node/node-wiki/routes/**/*
21 Jan 11:10:56 - [nodemon] starting `node .`
Live reload watching public dir
watching frontend for changes
Express server listening on port 3000
Could not connect to database "mongodb://localhost/nodewiki". Ensure that a mongo db instance is up and running.
[Error: failed to connect to [localhost:27017]]
21 Jan 11:10:57 - [nodemon] app crashed - waiting for file changes before starting...
net.js:614
throw new TypeError('invalid data');
^
TypeError: invalid data
at WriteStream.Socket.write (net.js:614:11)
at finder.deleted (/Users/cdieringer/node/node-wiki/lib/wipe-deleted-pages.js:11:24)
at NativeConnection.Connection.error (/Users/cdieringer/node/node-wiki/node_modules/mongoose/lib/connection.js:381:24)
at /Users/cdieringer/node/node-wiki/node_modules/mongoose/lib/connection.js:409:14
at /Users/cdieringer/node/node-wiki/node_modules/mongoose/lib/drivers/node-mongodb-native/connection.js:56:21
at /Users/cdieringer/node/node-wiki/node_modules/mongoose/node_modules/mongodb/lib/mongodb/db.js:267:16
at null.<anonymous> (/Users/cdieringer/node/node-wiki/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:550:7)
at emit (events.js:106:17)
at null.<anonymous> (/Users/cdieringer/node/node-wiki/node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:140:15)
at emit (events.js:98:17)
When dropping files into the content section a progress bar will be shown. Thats nice, but when editing the content afterwards, the progress bar will be saved as html content too.
When content gets edited, text gets selected in edit mode and you drag the selected text and drop it in content section, uploading file attempt is happending which is resulting in an unkown server error.
Let a user know that someone else has edited the content and prevent saving of stale content.
disable the possibility to edit a page, if someone is currently working on it.
The navigation isn't shown on tags, all pages, search etc. special pages. Makes navigation in the wiki a little difficult; will implement a config option for that in config/app.js and trigger the rendering of the page navigation on every special page if enabled.
to prevent lot's of versions to be created without any changes
Ensure that no script blocks are passed stored in the content
drag and drop a gist
gist are not that easy as they do not have an iframe solution, but heavily use document.write
to provide their code. There are two possibilities to get a gist into the wiki
Because otherwise the placeholder will be shown in All Tags section
Provide support for pasting code snippets in CKEditor and syntax higlighting
If a page is not saved every upload fails because the asset cannot be associated with a page.
Since static navigation is implemented, a config option for disabling dynamic sub-page navigation would be nice.
I will implement that in my fork
Error is not shown in Frontend. Saving of pages not working correctly
enhance the "drop files" box by providing a file select dialog with automatic upload
nodemon
isn't in your package.json nor mentioned in the "getting started." Could probably go there for beginners.
Once I got it running, I got this error:
Error: module "./paste-media" not found from "/Users/jeff/workspace/node-wiki/frontend/app.js"
Drag and drop of files seems to be broken. Perhaps because of this?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.