More features to Steem Ultimate Editor!

in #utopian-io6 years ago (edited)

Repository

https://github.com/tngflx/Steem-UltimateEditor

What is Steem Ultimate Editor?


ultedtlogosmall.png

Steem Ultimate Editor poised to replace markdowns with simple buttons to create a post! Creating post shouldn't be so troublesome and requires a significant amount of time on trial and error. What if I tell you, there's a tool that allows you to just click buttons in order to perform some basic and even advance customization to the style of your post? Let's have a look what Steem Ultimate Editor brought to the table this time after an improvement over the last version. Which you can check out here.

Objectives

  • Allow minnows or newcomers to have a more friendly environment to create posts
  • Significantly reduce the amount of time taken to create a post
  • Beautify your post within clicks!
  • Promoting high quality posts with future features such as source checking

More features added for users!

1) Post divider button!

I believe it is a painful experience to create your post without a separator between paragraphs. It is so annoying to both readers and writers in order to have a good read or let writers to properly organize their post. Steem Ultimate Editor is proud to bring you another feature that will ease your burden to create a post! Let us have a look how easy it is to create a banner!

Process of building such extension for editor :

  1. First need to create event listener for the post divider extension
Separator.prototype.events = function () {
        $(document)
            .on('click', $.proxy(this, 'closeModal'))
            .on('keydown', $.proxy(this, 'remSep'))

        // When the user clicks on <span> (x), close the modal
        $('span.close')
            .on('click', $.proxy(this, 'closeModal2'));

        $("select.image-picker").imagepicker({
            hide_select: true,
            show_label: false
        });
        $("select.image-picker")
            .on('change', $.proxy(this, 'SelectSep'));

    };

2) Fires off modal window when the button is clicked
var $place = this.$el.find('.medium-insert-active');
       
        $place.addClass('medium-insert-separator');

        $place.html(this.templates['src/js/templates/core-empty-line.hbs']().trim());

        
        modal.style.display = "block";
    }

3) Closes selected modal and add to the workspace
//Selected separator in modal fire function
    Separator.prototype.SelectSep = function () {
        var $src = $(".image-picker option:selected").attr('data-');
        var $place = this.$el.find('.medium-insert-separator');
        $place.html('<center contenteditable="false"><i></center>');
        if ($src) {
            modal.style.display = 'none';
        }
    }

2) Images are now hosted on IPFS

IPFS is a distributed file system that imitate Bittorrent way of sharing data. They aspire to become the next world wide web. Not only that, image uploading through IPFS is incredibly fast and the retrieved data are intact with no corruption. This will benefit our user very much compare to steemit traditional upload to s3 bucket. Sometimes i experienced some failure in upload with no error message to be found. IPFS will be a great solution to STEEM ULTIMATE EDITOR.

const ipfsAPI = require('ipfs-api');

const ipfsHost = process.env.IPFS_HOST || 'localhost';

const ipfs = ipfsAPI('localhost', '5001', {protocol: 'http'});

function getIPFS(CID){
  return new Promise(function(resolve,reject){
    ipfs.files.get(CID, function(err,res){
      if(err){
        reject(err);
      }else{
        resolve(res);
        return res;
      }
    })
  })
}


async function uploadAndPin(buffer) {

  const resp = await ipfs.files.add(buffer);

  const hash = resp[0].hash;

  await ipfs.pin.add(hash);

  return hash;
};

Full function of Steem Ultimate Editor so far plus the added feature above :

Technology Stack

Jquery, HTML, Handlebars, Javascript

Roadmap

-Adding emoji
-New banner (checked)
-Chat integration?
-You name the features :)

How to contribute?

-Contact me personally on discord or comment below!

Sort:  

This:
https://github.com/tngflx/Steem-UltimateEditor/tree/master/src

Is based on this:
https://github.com/orthes/medium-editor-insert-plugin/tree/master/src

With no regards to references to original author or project, this is theft plain and simple.

I've updated the license for my project. I just hope one day I don't have to quote the creator of javascript too since I'm using js almost everyday, as it clearly stated it's an open source project. It's always great to see your offer to help some project backfires. Thanks for making it clearer what it feels like to help steemstem.

You should educate yourself on how open source works and why respecting OSS licenses matters, as one day your work might be used in a similar way.

And this is unrelated to steemSTEM, I just personally dislike seeing open source developers who worked hard on something getting zero credit in the clones based off their work. I adhere to professional standards and I expect others around me to do the same.

Don't forget to update your package.json too
https://github.com/tngflx/Steem-UltimateEditor/blob/master/package.json#L1-L16

By the way - Javascript is not a project but a standard (ECMAScript), so it's open but not open source. Implementations of this standard (usually inside browsers) might be open source and might be closed source, and while you don't need to quote the creator of Javascript everytime you write JS, you might need to reference the owner of a licensed Javascript engine if you happen to clone that into your project.

wonderfull idea

Its not an idea. Its a real working platform. Eill release it as soon as everything done.

You've been upvoted by TeamMalaysia community. Here are trending posts by other TeamMalaysia authors at http://steemit.com/trending/teammalaysia

To support the growth of TeamMalaysia Follow our upvotes by using steemauto.com and follow trail of @myach

Vote TeamMalaysia witness bitrocker2020 using this link vote for witness

Thanks for the contribution!

The videos really help make clear what exactly you added and how they work, so great job including those!

One thing that is always appreciated is including a link to a PR or a comparison like this for example (just so we can easily see which commits are included in the contribution).

Your contribution has been evaluated according to Utopian policies 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]

Hey @tngflx
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!

Congratulations @tngflx! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes

Click on any badge to view your Board of Honor.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

Do you like SteemitBoard's project? Vote for its witness and get one more award!

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 64534.17
ETH 3150.15
USDT 1.00
SBD 4.01