SteemPress Alpha - 0.0.1 - Contributors wanted!
SteemPress is an open source project providing a simple, customizable, self-hostable blog engine powered by the steem blockchain. The goals of the projects are as follows: create a blog platform that anyone can host on any web host. It should be as simple as downloading a zip, editing a few config files, and uploading to a server running PHP.
The initial proof of concept launched almost 2 weeks ago was an interesting experiment, but was using some technologies preventing it from being truly portable. The version released today is a complete rebuild from the ground up using all open source technologies that should theoretically run everywhere!
Interested in viewing the code? Want to help?
https://github.com/aaroncox/steempress
I currently don't have a demo site setup but will have one setup in the coming days. My plan is to setup a blog for updates to SteemStats.
Discussion on technologies used
Before the project gets too far along I wanted to release an alpha and start engaging with developers, designers and bloggers here on steemit. This project will take a community to foster and raise, as most open source initiatives do. As a collective, we just need to make sure the right tools are being used and it's accessible to everyone.
To kick things off, here's a list of technologies currently in use by SteemPress, along with my reasoning for choosing them:
- PHP - Almost every web host supports it.
- Silex Framework - Microframe work powered by Symfony. Small footprint and based on rock solid Symfony.
- Twig Templating - Easy to use HTML templating.
- Foundation 6 CSS Framework - The same CSS framework that's used here on steemit.com.
I am open to all of this changing as long as it fits our goals and needs. If you've got ideas, let's chat!
Get involved and opportunities
There's a lot to do to bring this project up to what could be considered 1.0, and I can't do it all alone! If you're interested in contributing, here are some ways to help:
Designers
SteemPress could use a default theme that's fitting of being a Steem project. Currently it's using Foundation 6 CSS as the base, but an amazing theme could be build on top of this. If you're interested, I'd currently recommend just building an HTML/CSS template of how you imagine it would look (with sample data) using foundation.
I'd be more than happy to help implement it into SteemPress's core code. Right now it looks pretty crappy :)
In the future, we could have an entire theme marketplace. People creating and sharing themes, posting screenshots, and potentially earning rewards/tips from other users who then use their themes. As much as I hate to say it, the potential for "premium" themes also exists.
Developers
There's a lot of work that needs to be done, and I'll be hitting it hard over the next couple days implementing new features and continuing to setup the foundation of the project. Pull requests, opening issues, hell, even just installing it and seeing how easy it is to get running would help at this point. Take a look at the future features list below for some ideas.
Currently I think one of the highest priorities for development is getting a JS layer implemented that allows users to login with their posting
key. From there, we could allow users to comment and vote on posts as they are reading.
To get started, just clone down the code and run composer install
to install the dependencies. I've also included a sample nginx config in the repo. If you have problems, just let me know.
Bloggers
Do you have an idea for a blog that you'd like to be steem powered, yet on it's own blog style website? I'd love to hear what you'd want out of a system like that. It will help shape the direction of the project and hopefully help you get running!
There will also be opportunities for "how-to" articles on how to setup your own blog using steempress!
Places to further discuss this
Feel free to leave a comment! I've also started #steempress on our new rocket.chat server. You're welcome to join the channel and help in whatever way possible!
Currently supported features
- User Blog: Visiting
/@username
on the application loads a blog style list of that users posts. Each piece of content is previewed, displaying the title, first 2 paragraphs of text, the author and date. - Full page posts: Using the same URL structure that exists here on steemit, you can access posts for a full view of the content.
- Localization Support: Using the configuration file, you can set the default language of the site to customize the non-content elements. These localization files will need to be expanded and defined.
Features yet to be developed
- Homepage: A default homepage needs to be created that reads the site's configuration and creates a blog based on the configuration provided. The site should be configurable to automatically host the blog of the specified user(s) and could even match specific tags.
- Tag Browsing: Create an in-site navigation that allows for browsing of all content by that user.
- Theme Support:
resources/templates
should contain different "themes", which users can download to customize the look and feel of the blog. - User Authentication: Implementing a solution like steemjs by @fabien to allow for user authentication. From there voting, commenting, and even authoring tools could be added. I imagine all user-related activity will happen in the browser, much like steemit.com, and never communicate with the server.
- Deployment Scripts: Setting up scripts to allow for easy deployment to Heroku and similar services for microhosting.
- Caching Layer: A simple caching layer should be added to cache content (statically) on the server for X amount of time. Currently each request calls the blockchain for content.
- Full Test Coverage: The testing framework exists using
phpunit
, but needs to be built upon. I plan on integrating it with TravisCI in the very near future for public testing results.
Future of SteemPress.io
The last bit of the puzzle is where the original concept (steempress.io) fits into this equation. It's still running on the proof of concept design I did a few weeks ago, but I will be upgrading it to use this new format in the near future. We will use it to showcase all things steempress related - themes, updates, tutorials, etc.
Let's build something awesome together!
Thanks again steemians - this community has produced some amazing works over the past few weeks. Let's keep this ball rolling and keep adding more and more value to the steem platform!
I'll definitely clone the repo and play around with this project later today! PHP is my go-to server language for web dev work. I think there would be a lot of adoption if this can somehow be integrated with WordPress. Imagine all those bloggers there! Exciting!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I don't even know that you need to integrate with wordpress, you should be able to use Steem as your database and do everything that wordpress allows for! Look forward to you tinkering with it. It looks like crap right now, but the potential is endless :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
That's an excellent point! Upvote for WordPress integration. The effort would provide a gateway application.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I'm excited to see some review/screenies!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Very nice! @xeroc also has a similar project: https://github.com/xeroc/vanteem/tree/master
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Oh that's awesome, man I really need to sit down and just go through all the projects he's done. There's some awesome things coming out of that guys mind :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I assume the blockchain has to be downloaded, yes? (If so, what's the size right now?)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Nope! Right now I have the code pointing to my public node that's powering steemstats.com. Any public node could be used as well, or you could setup your own. It's part of the configuration file :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Aha, thanks.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hey @jesta, I jumped in and made a pull request on Github so that #Steempress works with #Heroku out of the box. You can see my sample site up here: http://bmann-steempress.herokuapp.com/ (EDIT: changed the URL to be "my" demo, since it's easy for anyone to try out on Heroku now)
I like the concept of the site being potentially single-user or multi-user. For instance, you might want to list everything with a single tag or just show your own posts.
Caution: my actual PHP hacking skills are pretty weak, but we'll see where I get to.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
That's awesome!
I left you some comments on the pull request itself. And absolutely, you got the idea, and I like how your sample uses a few different people :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I am adding both your sites to my ( in the making) website. A directory of everything steemit related from products to services. I hope you don't mind.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Not at all, feel free!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Will this be similar to Medium hosting stand alone sites?
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I'd imagine so! I didn't realize medium did that kind of thing.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Just the kind of thing I was hoping to find. Installed the code on my laptop and it worked like a charm.
Some issue with the url (.../web/index.php/@vikram works instead of .../web/@vikram) perhaps as I am using apache and the url rewrite config are not set.
Played with changing templates ..works good. Needs cache clear
rm -rf ./steempress/var/cache/twig/*
Thanks a lot for the code. if i can contribute back i will do. .. i need to learn first ;-)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Ahh yep, it's probably apache. The nginx config included in the repository rewrites all URLs to
index.php
to solve the problem you're having with the URL. I imagine I should add an .htaccess file so anyone running apache doesn't have to deal with this.Also - regarding the changing templates and clearing the cache: if you use
index_dev.php
instead ofindex.php
, it won't use the cache and you won't have to clear it every time :)Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
This is great. As you know by now I am your avid follower and I like all your tools.
I've joined the channel and I will set up a site with steempress - eventually. First I have to finish one or two of the projects that I am currently working on :)
So I can't promise that I'll be very active but I will always be here checking the development.
Excellent!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Interesting post !
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Thanks @jesta! It's great to be able to see and engage with the work you're doing.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Im a trader, and I made a channel where I help steemit users grow there accounts.. So im all for anyything that adds value to steemit.. Nice work, good post and good ideas :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Thank you for your ideas and their implementation
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I am a wordpress tinkerer sounds very interesting thanks for this
My Profile
About Me: Hello, My name is mark I am the creator of this post. This is an example profile post and a little info about me and who I am. Please reply in my thread or start a new " Submit your Story" and don't forget to link back to my official post the " Steemit Profile Challenge " please follow this link for more info: https://steemit.com/profile/@bitminter/steemit-profile-pic-challenge Thank you for your support!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Cool!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Quite an in detail post :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Interesting, also I got to the end and saw the build something great together just after reading an article about Donald Trump lol, bad timing on my part.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
hahaha, "Make steemit blogging great again!"
Need a hat now.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
A Trump cap labeled with 'Made in USA' but actually not? LOL
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Would you happen to be available to help me build a website like Steemit using their open source code for my niche community? Only need some simple changes to be made post install. Hope to hear from you soon!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I'm pretty busy right now and don't feel comfortable taking on new projects at the moment. Sorry I can't be of more help!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
No worries. Figured I'd ask. If you know if anyone I should ask or that would be interested I'd love an intro. Thank you in advance!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
if you find anyone, send them my way too!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Awesome!
Do you mean the blogger must have independent server website?Are there no existing platforms with hosts are available for steempress?
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I am a blogger, visit god.finance. I am larger on instagram @Finance_god.
I would like to make my website steem powered, but I have no idea how to, but I am willing to be a guinea pig. Message me on instagram/facebook/email.
[email protected]
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
someone could develop this as a wordpress plugin... I would download it
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
I'm going to look into this for sure. Steemit can replace almost every website today and you are taking it to a whole new level. I love wordpress and have a website http://SteemThat.com This would be interesting to allow users to also login into my website and upvote posts and things with their steemit account kinda of like Dtube is doing with videos. I'm pumped up and now on a mission to convert my website somehow.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit