Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

EverestCamp is the most simple knoweldge base tool. Vision of this project:

  • Make the process of documentation worthwhile for your employees.
  • Provide tools to make use of the knoweldge of your employees.

Work in progress:

Screenshot Desktop

Screenshot Mobile


  • Intuitive user experience
  • AutoSave everywhere
  • Image upload by drag and drop or paste
  • Taxonomy editor to organize knowledge articles.
  • Drag and drop sortable taxonomy tree
  • Responsive and reactive layout
  • Markdown editor with live preview
  • Instant fulltext search
  • Configurable access rights


  • Replace FS Collection with Meteor-Files
  • Move Access Control into components.
  • Multiple File paste
  • Filter not public images for public users
  • View visiblity Access - make nav el for unauthorized user in, add edit button on post view
  • Finishing change email process
  • Create AutoSave for every 3 seconds in editor.
  • Enable Tabulator usage in editor


  • IE Image selector does not work
  • IE scrollbar does not show up
  • User Register return value is not processed
  • Fix ref error for input

Longterm Task


  • On Page reload route.edit is denied -> rework redirect
  • Data Acess Control for users
  • If user cannot create node make sure he can create a post -> check type
  • User profile - change username, email, last and firstname, password
  • User Profile change process - reactiviy, change mail
  • Notifcations are not persistent on route change
  • find Notification tool that works - or fork react-notify-toast or
  • Add user management site - table with search and role dropdown
  • Routing Access Control
  • Fix header title
  • Content optional?maybe?
  • Add username and lastname, firstname to form
  • Routing Config into Meteor Settings
  • Guest user Fronted - PostSearch with SingleView with content and last author.
  • FlowRouter not found konfigurieren
  • Bootstrap 4 - Replace form-group with p tag
  • slug title redirect
  • Update navigation / -> forntpage, post -> mainpage
  • post single does not work -> fuck
  • Limit is ignored by PostList
  • Insert image dialog
  • fix slug from post
  • fix author update in post
  • User role setup
  • Add save button for new version by user -
  • Email Verification redirect
  • Public checkbox for post and file
  • Inject image css into markdown parser
  • Make components dual -> either load data from props or subscription
  • Add Draft.js as Editor -
  • Replace the other bootstrap components
  • Rework subsription management > see files modal in post-edit
  • Copy paste in editor adds div
  • TreeView node list is also filtered
  • TreeView without subsciber
  • Fix undefined in className
  • Mark active Post in tree
  • NodeList selector causes sub twice
  • remove jquery validation (jquery and form validations)
  • Replace manual className adding with classnames
  • replace div with grid row
  • Focus Title field when open post or node -> only if id of post changed
  • Drag n drop is triggered two times
  • Draggable TreeView -
  • Multi file upload in gallery
  • Add profile for user with empty collapsedNodes
  • Fix logout redirect
  • set max load for images
  • Create fulltext search -
  • Add image search
  • Extend image gallery: name, delete
  • Enable copy and paste of image
  • Rename published to public
  • Add mobile media upload
  • Remove tags
  • Fix Frontend
  • Add Github flavored Markdown
  • Fix files upload by method
  • Add singup with email verification
  • Signup with E-Mail validation
  • Rename Buttons
  • Add fullscreen for Editor
  • Add Dialog for Nodes -> make like post and show edit page
  • Enable renaming and deletion of Nodes -> add edit with delete button and contentEditable
  • Update name of post in node list
  • add type and ref_id to Node
  • Add post to node
  • Image inline uploader
  • Finish Editor -> show markown on load, css, picture link
  • Fix pasting Text
  • getPath replace title with ID
  • search function that uses path to filter -> search for items that match and display their path






Sample App

React Blog

Inline Upload

Content Editable

Design Pattern

Meteor settings

Thinking in React

Drag n Drop Basics

ES6 modules

ES6 check

Basics of Subscriptions

Multiple Subscriptions

Extending user



meteor --settings settings-default.json

Roles and permissions

  • Admin: Full Access on files, nodes, posts, users
  • Builder: CRUD nodes, posts, files
  • Author: CRU posts, files
  • Public: R public posts, files

Naming concept

CamelCase is for visibility and unserscore_case is for readability.


React components: CamelCase
Everything else: underscore_case


React functions: CamelCase
Everything else: underscore_case


in Parent Component add:

constructor(props, context) {
  super(props, context);

  this.state = {
    shouldChildComponentUpdate: false,
    showModal: false

  // when parent has received new props also update child component
    shouldChildComponentUpdate: nextProps.nodeId != this.props.nodeId

  // once parent is updated do not update child component
  this.state.shouldChildComponentUpdate = false

Then pass the shouldChildComponentUpdate state to the ContentEditable component. This will make sure, that the component only updates when the data context changes.

Crazy Bugs

When using subscriptions with parameters make sure to add an else statement.

if(Meteor.subscribe('posts.single', postId).ready()) {
  console.log("onData post-edit")
  const post = posts_single(postId).fetch()[0];
  onData(null, {post});
  onData(null, {});


EverestCamp is the most simple knoweldge base tool.




No releases published


No packages published