×

January 2, 2015 - Srini's Visit to West Covina

These are some ideas that spawned from our discussion.

b 9 years ago
×

The Goal Note

When a new space is created, a new note should be created with it.

Its title should be "GOAL".

The note should be open and ready to edit.

the cursor should be in the body.

b 9 years ago
×

I finally implemented the goal note.

Even this simple thing takes time.

b 9 years ago
×

Putting goal notes on top...

requires sorting them differently on the server side.

b 9 years ago
×

Clean Code

The code could definitely be a lot cleaner.

I'm being far more "practical" than ever in this incarnation.

b 9 years ago
×

GOAL

To declare all the things I want MetaNotes to be.

b 9 years ago
×

User Names Policy

  • case insensitive
  • maybe just letters and numbers ".", "-" and "_"
  • no other punctuation allowed.
b 9 years ago
×

Twitter Auth

Rip out existing auth system and use passport.

b 9 years ago
×

A Proper Data Model

Almost all the data should be in Neo4j.

Users

Spaces

Notes

Relations

  • between notes (replies)
  • between spaces (tangent/tesseract)
  • between users (follow)

Also, the idea of Circles/Teams needs to be revisited.

What is a Circle?

Who gets to define it?

b 9 years ago
×

Neo4j

Our Graph Database

b 9 years ago
×

There is no one true database.

This time around, I'm going to try a hybrid storage approach where many entities will be stored in different databases.

When I need hierarchy, the filesystem is a natural fit.

When I have to deal with long lists of things, PostgreSQL is a good fit.

When I have to deal with graph relations, Neo4j is a natural fit.

  • Users: pg, neo4j
  • Spaces: fs, pg, neo4j
  • Notes: fs, pg, neo4j
  • Relations: neo4j
  • Tags: this could be pg only or neo4j only. I'm not sure which way I want to go with this.
b 9 years ago
×

Create a Tangent

The gear menu of a note should allow one to create a Tangent.

A Tangent is just another Space that is bidirectionally connected to this one.

b 9 years ago
×

What about FS and PG?

What role will the filesystem and postgres have after much of the data has been moved to Neo4j?

b 9 years ago
×

Autoembed URLs

In addition to Markdown formatting, URLs should be automatically embedded if possible.

Image URLs should be transformed into the image itself.

YouTube URLs should be lightly embedded.

There should also be an escape mechanism if you don't want it automatically embedded. Maybe something as simple as a leading "\" would be sufficient.

b 9 years ago
×

#hashtags

These need to be interpreted properly also.

#todo

b 9 years ago
×

@at-messages

These should be interpreted also.

Maybe if you're mentioned like this by the space owner, you get invited to the space?

The semantics of invitation need to be figured out.

b 9 years ago
×

marked ast

b 9 years ago
×

marked-ast issues

It can't render GFM tables. I consider this a bug, because it crashes when it fails.

b 9 years ago
×

API

There should be an HTTP and WebSocket API for all of this data.

b 9 years ago
×

Presence

People on the site should be able to see each other in the panel. They should also be able to see what space each user is in.

b 9 years ago
×

progress

I've added the plumbing for this.

I just need to make a panel out of it.

b 9 years ago
×

Who's Online

I have finally made my first React-based panel. I'm quite happy with the results, and the To-Do List Panel and YCTHere will be the next panels to be implemented in this style.

b 9 years ago
×

Easier Copying

Maybe the notes should only be draggable by the title so that the text inside the note can be highlighted with the mouse.

b 9 years ago
×

Search

I need to figure out how I want to display search results.

b 9 years ago
×

Uploads and File Storage

This could be a premium feature.

b 9 years ago
×

Email Addresses for Users

Everyone should be able to receive.

Howerver, sending should be a premium feature.

b 9 years ago
×

The Ability to Receive Payments

The site should be able to receive payments.

Some things we may sell are:

  • lifetime memberships
  • storage and bandwidth
b 9 years ago
×

Authorization

https://github.com/kolypto/nodejs-miracle

This may be a useful library for implementing systematic authorization. I need to figure out a good way to serialize this data, though.

b 9 years ago
+