Introducing SteemPress.io - mixing a traditional blog style with the steem blockchain

in #steem8 years ago (edited)

Every blog I start needs a few things: a custom domain, a theme and an engine to power it. Wordpress? Ghost? Why not steem? I decided create a proof-of-concept showing how it's possible to use the steem blockchain to create a personal blog.

Introducing SteemPress.io

http://steempress.io

http://i.imgur.com/niTXSFE.png?1

SteemPress.io is a website for viewing steem blockchain blog posts (not comments, yet) in a traditional blog format. It is the result of a mini-hackathon over the past 24 hours and is in no way complete. It's likely there's a few bugs.

If you'd like, you can continue reading this post on my blog over on SteemPress:

It's powered by the steem blockchain, templated and routed through PHP (I know, I know), and uses a custom theme I downloaded off github.

Can you see where this could go from here? Developers can use it for software documentation, companies could use it for their blogs, prominent bloggers could have their own websites - the possibilities are endless. All while integrating into the steem ecosystem and earning rewards.

Here's a few blogs that I caught up on by using SteemPress:

As a web developer, this kind of blockchain tech blows my mind, especially steem.

The "why" behind SteemPress.io

Yesterday I started thinking about ways to organize the tags on steemit in an effort to help people surface their blog content. If I start a blog, I want it to be easy to find. Tags are the area to address, right?

The problem was that I was a bit too laser focused, specifically on tags. Then I started thinking about what it's going to take for me to use the steemit platform for blogging. I want a few things:

  • A custom domain I can give to people (instead of steemit.com/@jesta).
  • A way to customize the experience for my readers.
  • SEO relevance for the subject matter I'm writing.

Why not just use the blockchain? Why not let everyone?

Poof, steempress.io.

Fun fact: BYOD (bring your own domain)

Did you notice above how I used http://jesta.steempress.io? You techie/web folk out there should realize the potential in this. Any username can be used as a subdomain in the URL. Which also means that you can use cname DNS records to point your own domain to the service...

blog.jesta.us

I created a cname record of blog on the jesta.us domain that points to jesta.steempress.io. Now my blog on jesta.us is powered by steempress.io, which in turn is powered by the steem blockchain! Steemception!

A warning for those interested in cname/subdomains (thanks @dasher!): Please be aware that if you use a CNAME record, the cookies you set on your domain will be passed to SteemPress.io while visiting. Please make sure you're not passing any sensitive information or session information in your cookies!

Where does this go from here?

Well, it depends on how many of you like this idea. Like I said, this is a project that's less than 24 hours old. It could go a million ways though:

  • Should it be an open source thing you can install on any server?
  • A commenting interface could be added
  • A voting interface could be added
  • The ability to create blogs based on multiple users
  • The ability to create blogs based on tags
  • Support for youtube videos (not working yet)
  • It could load more than 10 posts (infinite scrolling)
  • Custom Layouts/CSS/Themes so you could make it look however you want

I'm really excited by the potential of steem. I've been lurking in the crypto space since 2013 when the bitcoin rockets caught my eye. I haven't been this excited in a long time.

I hope this small project helps inspire you and helps everyone realize the potential here. This type of technology opens the doors to so many people who wouldn't otherwise bat an eye at cryptocurrencies.

Sort:  

AMAZEBALL! You have my upvote on this!
Ok...here are my suggestions

  1. Duplicate content is a huge SEO issue, so how about making sure there is a canonical link to the original on steemit.com?
  2. Being able to add meta title, meta description to the page would be amazing for SEO optimization of the website

SteemPress could be big...REAL big.

  1. Great point on the canonical link, I'll get that added in the next build. Since right now it's the most recent 10 posts all on one page (based on the username), I'll make the canonical link point to the user's blog page.
  2. Do you mean as you're creating the posts? Right now I don't even have a database on SteemPress, I'm 100% using the blockchain itself. So if we wanted to be able to add additional fields for that kind of data, we'd need to add it to Steem itself. But I think it's an excellent idea!

Holy crap. Nice work! I just had visions of a whole blockchain CMS. One too many beers to think it through right now though.

I've had some of the same thoughts :)

I'm not a PHP fan like yourself though. I have used Ghost before. Then I played with numerous static site generators. Ended up really liking Grav (getgrav.org) even though it uses PHP on the server side. It's ultimately much more powerful than a static site generator but much less complex than a bloated WP install. I'd choose flat-files over a standard database any day. :)

It would be interesting to use the blockchain instead of flat-files for sure.

PHP isn't perfect but it's the hero we have, just like Mothman!

:D

This is amazing. I have a question. I use IPFS and it doesn't seem to render those images. Am I doing something wrong?

http://steempress.io/@eeks

Thanks!

This is fantastic! I'm also a PHP dev (let's get #PHP going, yo!) and have played around with a couple simply scripts related to the Steem Interest rate. I'd love to know more about the technical side of what you're doing here. I've really wanted to dive into Steem and start building out tools for analyzing the data more (sort accounts by posting value, curation value, percentage per post, etc). I've tinkered a bit with Piston and have looked at the API a bit, but I'm not really sure where to get started. Are you just running your own steemd and then making calls to it directly via PHP? Would love to know more! Very cool. Following for sure.

We should! I could write some fun articles ;)

Yeah, I'm running my own JSON-RPC steemd on a server, and I'm using fguillot/json-rpc's RPC client. I had to do some hacky stuff to actually get the content, and the code is a complete mess right now, but I definitely could share some examples.

Going this route I was pretty much able to do anything that the RPC client allowed.

I was looking to do something very similar locally. If you want to contribute here, that would be fantastic: https://github.com/lukestokes/php-steem-tools And I totally understand as far as code quality goes. I'm just prototyping things at this point. I wrote a couple posts here and here on what I was playing around with. I haven't yet put anything on a server. I'm just tinkering with local cli scripts for now.

Thanks for the tip on fguillot/json-rpc! If you share some examples, leave a comment for me so I can come check it out. Hopefully the follow functionality will be implemented soon.

Oh I am too, no worries about me judging your code lol. SteemPress's code is in no way "good" at the moment, it's got some massive functions in it that really need some love. But that's what prototyping is for!

And sure, I'd be more than happy to share some code snippets on how I used fguillot/json-rpc to access the API. Maybe that's an idea for a blog post in #PHP :)

I love this!!

Admit it... it's fun and exciting to draw content, from a decent blockchain like steem... :)

It's not only fun, it's exciting!

When I develop the data I tend to work with is content. Not precise things (like currencies) that typically exist in blockchains. But these brilliant guys over here decided to put the content IN the blockchain! hah :)


Very nice idea!
I want to report a bug, that you might be already aware of.
On the left side of the posts the link STEEMIT.COM links to a 404 error.

Fixed! Should take you directly to the post on steemit.com now. Thanks for pointing that out!

Thank you for the nice service.

Thank you, I feel honored to be on the list!

Cool idea.

Just tried it though and it seems some images are not rendering. For example (http://steempress.io/@substance), my steemimg.com hosted images are not working right now.

Should be fixed. Looks like there's a few variations of how they store content that I didn't anticipate.

Thanks for the heads up!

Indeed, it's working now. Thumbs up on the quick feedback!

Very cool! However, a couple things are broken:

  1. Lists
  2. apostrophes
  3. Links
  4. Youtube embedding

Glad you enjoyed and thanks for the bug report!

Quick responses, to your bugs:

  1. I saw the lists in a few of your posts that didn't format properly. I'll dig into it. It's likely that the markdown parser I'm using isn't the same specification as the one used here on steemit. May have to ask around and see which implementation it is that they use.
  2. Huh.. strange. I see those on your post about from july 2nd. I think I have a fix, I'll try to get it in soon.
  3. & 4. These should be easy fixes.

I'll add these to my todo list and get them out in the next few days. Thanks again for pointing them out!

Could see this becoming a powerful tool to help promote bloggers even more in this space. Very slick.

I really think so too.

I've spent a lot of time recently reading blog posts, code tutorials and other "social media" type materials. Almost all of these have helped me tremendously learn some new technologies for a job I'm doing. I wish I could have up voted them, as I could with steem, and actually shown them my appreciation.

With something like steempress, we can. We just need to show them it can be done, and easily!

Coin Marketplace

STEEM 0.28
TRX 0.11
JST 0.034
BTC 66077.75
ETH 3167.77
USDT 1.00
SBD 4.01