Steeditor - an advanced editor, not only for advanced users!

in #utopian-io6 years ago

At first, I wanted to create an editor only for myself. I needed a tool which would enable to edit all of the options that Steem blockchain gives us. Then we have temporarily lost a Utopian frontend. That was the breaking point - I decided to create an open source tool which would also help Utopian contributors. Say hello to Steeditor!

Steeditor

Repository

https://github.com/jakipatryk/steeditor

What is Steeditor?

Steeditor is an editor which enables to add posts to the Steem blockchain. Nothing special, right? Well, yes, but there are several properties that make Steeditor unique. First of all, it lets you change every possible property of the post. Well, except one (allow_votes), but it's temporary and will be available as soon as the bug with SteemConnect is fixed.

Did you know that you can share the post reward with anyone (via beneficiaries)? Or that you can set a maximum accepted payout for a post? Or that you can set up a custom thumbnail for a post that will not be shown in the post body? This is a great opportunity to learn stuff.

Steeditor also helps in managing drafts. Once you create a draft (using, for example, a Utopian development contribution template) it will be stored locally on your device (in the IndexedDB). This feature combined with a service worker lets you manage your drafts even without the internet connection! All you have to do is to visit the app once and later (as long as you don't want to send the post to the blockchain) you will be able to use it anywhere, even in places where the internet connection is poor or unavailable!

Draft

Utopian templates

As I'm going to point out at the end of this post, the templates are on the roadmap for the beta release. I mean the templates that you will be able to create on your own. For now, I've added this functionality with hardcoded Utopian contribution templates! You simply have to select the one that interests you while creating a new draft!

By default, when you create the draft via one of the Utopian's templates, there is a beneficiary account set up - utopian.pay (15%), but it's up to you whether you keep it or not. Remember - the fact that Utopian frontend is not working at the moment doesn't mean the community isn't active! You can still contribute using any interface - Busy, Strimi, Steemit, or... Steeditor ;)

Technology stack

The project is a prototype at the moment. Although, I tried to use technology stack that wouldn't require big changes for the application to scale.

The framework I used is Angular with containers/components architecture. For the state management, I used ngrx (store, store-devtools, effects and routers-store). The authentication is done with the SteemConnect service and ngx-cookie to easily manage the access_token cookie. In addition to that, I used IndexedDB Promised to work with drafts in the IndexedDB. The component library I've chosen is well-known material design library Angular Material.

Roadmap (to beta)

High priority:

  • unit and integration tests
  • code refactoring
  • CI
  • manifest.json which will enable to add the app to the device's home screen
  • the templates creation flow
  • upgrade to Angular 6

Medium priority:

  • UI/UX improvements
  • post preview
  • editing posts

Low priority:

  • e2e tests

Contributing

Do you want to contribute? Contact me on Discord (jakipatryk#1263) or Steem.chat (jakipatryk).

Proof of Work Done

You can easily find my profile on Github because I use the same name on Steem and Github: https://github.com/jakipatryk

Sort:  

This is pretty good stuff.
Your code is clean and I love the fact that you use RxJS. I love this library!
Material Design is also nicely used.
Your roadmap is neat too and will add more value to your project.

You should consider adding a logo as your favico and in SteemConnect too.

This empty image is not cool. But well may be I could add a placeholder myself on SteemConnect when the field is empty!

Keep up the good work.

Your contribution has been evaluated according to Utopian rules and guidelines, as well as a predefined set of questions pertaining to the category.
To view those questions and the relevant answers related to your post,Click here


Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]

Thank you for your review and feedback ;)

Yes, I'm aware of the fact that the default Angular favicon and empty image in SC don't look good. I'll try my luck with a Utopian task request for a logo in a few days - I'll also need a logo for icons in manifest.json.

Btw. I love RxJs too ;)

Pomysł jest super - muszę to wypróbować. Można tym editorem dodawać więcej niż 5 tagów?

Nie dałoby się tej części edycyjnej wyposażyć w jakieś formatujące bajery, żeby się nie znęcać nad html-em i/lub mark-coś tam coś tam?

Tagów możesz dodawać ile chcesz, blockchain sam w sobie tego nie ogranicza, ale najpopularniejsze interfejsy już tak. Mam na myśli to, że tylko pierwsze pięć tagów jest brane przez nie jako prawidłowe (tzn. post można znaleźć tylko przeglądając strony jakiegokolwiek z pierwszych pięciu tagów).

Co do lepszego edytora treści samego w sobie - jestem świadomy tego, że teraz jest niskiej jakości. Pasek narzędzi jest w planach, tak samo jak podgląd postu. Jednak nie jest to top 1 priorytet w tym momencie dla mnie.

Dzięki za wyjaśnienia :-)

Wow this work is very good!! the best part is the possibility to modify the metadata.

Thanks! Yeah, the ability to modify JSON metadata was the main purpose of building this tool ;)

Hey @jakipatryk
Thanks for contributing on Utopian.
We’re already looking forward to your next contribution!

Contributing on Utopian
Learn how to contribute on our website or by watching this tutorial on Youtube.

Want to chat? Join us on Discord https://discord.gg/h52nFrV.

Vote for Utopian Witness!

Hello. This post is interesting and helpfull.