Giter VIP home page Giter VIP logo

essayist's Introduction

Essayist

A blogging app for the tent.io protocol. A public instance is available here: http://essayist.mndj.me.

Quick start:

  1. Pre-requisites: Java 1.6+ and Maven
  2. Currently, Essayist depends on a Mavenised version of Migrate4J available only on Github: git clone git://github.com/mwanji/migrate4j-maven.git && cd migrate4j-maven && mvn install
  3. git clone git://github.com/mwanji/essayist.git
  4. Deploy to your favourite servlet container.
  5. http://localhost:8080
  6. Log in with your Tent address, for example https://my_name.tent.is

Configuration

  1. Put a file called essayist.properties in the src/main/resources folder. essayist-example.properties shows what can be configured. essayist-defaults.properties provides a number of defaults.
  2. If using your own database, create an empty database corresponding to the value of db.url

Developers

Metadata post type

http://moandjiezana.com/tent/essayist/types/post/metadata/v0.1.0

Essayist uses a custom post type to store some data, such as the Essay's text as Markdown. It is linked to the Essay (once it has been published) via the mentions.

PropertyRequiredTypeDescription
format Required String Defines the type of content contained in raw. Eg. "markdown".
raw Required String The raw form of the metadata. Eg. the markdown form of an Essay.
statusId Optional String The ID of a status announcing the Essay.

essayist's People

Contributors

mwanji avatar pjesi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

jeena pjesi

essayist's Issues

Draft Essays

Offer a draft checkbox.

When checked, Essay is made private and stored as Markdown.
If necessary, a custom flag is added to the JSON content.
When unchecked, it is made public.

Drafts are available in nav bar.

Single-user mode

Offer a configuration option to toggle between multi- and single-user.

Single-user offers shorter URLs and only that user can post.

Essayist should allow private essays

I plan to have a huge number of "essays" that are living documents for current projects that I am working on. I don't want anyone else in the world to see these (until I DO want someone else to see them).

This proposal is simply to allow the private post flag to be set to true on an essay.

The font

The font used for Essayist posts is distracting.

Each time I come to read an essay, instead of focusing on the content and reading, I can't stop looking at the font. I humbly suggest something more bland and less ornate.

Show comments

Replies to a Post can be retrieved using mentioned_post querystring param on /posts.

Use JS History API to switch from essay list to single essay view

Currently, essays are being fetched remotely twice: once for the essay list and once for the single essay view. This is slow. The JS History API could be used to speed this up:

  • Embed the essay body into the HTML, since it has already been fetched
  • Handle clicks to change the URL and hide the other essays without reloading the page

Improve URLs

URLs should be:

/<entity>/essays
/<entity>/essay/<id>
/essay/new

https entities should have no prefix.
http entities should have prefix h:

needs a bigger ~~logo~~ line-height

basic bootstrap isn't optimal for this typeface, just increasing line-height in css up to, idunno, 150% (i may edit that number later) will drastically increase readability.

if anything, a small selection of fonts (like in instapaper) would be a huge plus.

Reposting an essay does not confirm

When reposting something, I've come to expect that the app will make sure I want to: "Do you want to repost Spilt Milk by einat?"

Essayist does not do this.

Essay link after title not displaying correctly

When reading an essay, there is a link to the essay that sits to the right of the title. In Firefox, the icon reads as follows which I believe is a hex code for something that it can't display:

26
93

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.