Open source Nodejs CMS for image/embed video sharing - node.js

I'm planning to learn about Nodejs and try to make a website for upload image or embed video from other site for my class.
It likes a public social network with just a just a few blog features for administrator only.
Cause of the limited of myself and the time, I decide to use an open source Nodejs CMS which has almost those function and contribute it to became my class's website.
Please give me some suggestion, are there any CMS like that?

I tried once Relax CMS, it's really powerful.
From GitHub
Relax is a powerful new generation CMS on top of React and Node.js which aims for a better way of building websites.
It features a live page builder based on components and a smart and easy way of binding dynamic data to them.
It's almost ready for production, but you can check the demo out, and the project page https://github.com/relax/relax.

Did you take a look at Strapi (https://github.com/strapi/strapi)?
Halfway between a Node.js Framework and a Headless CMS, it saves weeks of API development time.
Thanks to its extensible plugin system, it provides a large set of built-in features:
Extensible Admin Panel
Authentication & Permissions management
File management
Content Management
API Generator
GraphQL support
Let me know if you have any question.

Related

Building an App in SharePoint Online

I have a client that wanted an easier way for his team members to build/update pages on their site, their site is heavily customized with a lot of JavaScript. The issues is that when a team member wanted to add a new section to the page they had consult a dev person to hard code in the desired features. So we decided to create customizable web parts of those features making the site more self-serviceable.
When I first started I found some documentation that said to use visual studios to build the web part using sandbox code, upload it to the site and then they would just need to activate it to deploy it on the site. Buuut unbeknownst to me code based sandbox solutions are no longer supported in Sharepoint and therefore the web parts we built could not be deployed. I was then told that I needed to build it as an Add-in, but as I started building the add-ins I found that the customizable field properties (i.e. ability to change background color, text style/color and banner color) that I want are not implementable as a add-ins.
So now I’m back at square one and I don’t know if it’s even possible to build a web part as a add-in or do I need to go a different route?
Any thoughts or links to sources you can provide would be HUGELY appreciated!
Thanks
Terek
In SharePoint 2016 things have changed a lot from the traditional model which was the classic way of building web parts. The way you worked before is called "classic", the new way is called "modern", and the way to get your dev environment is the following (brace yourself, it is a long answer):
1) In SP2016/Online you will need to configure your dev machine with the following environment, installing the following:
NodeJS Long Term Support version
Yeoman (which will be used to create web parts)
GULP (which will play the role of virtual web server)
Once the three components above are installed, you will install the Yeoman SharePoint Generator to create the SharePoint Web Parts, Yeoman simplifies the process of creating things by delivering templates ready to use and making all the configurations standard, you gonna love this guy!
To configure your machine see the following link:
https://dev.office.com/sharepoint/docs/spfx/set-up-your-development-environment
2) In SP2016/SP Online, you will develop for SPFx (SharePoint Framework), Microsoft has made significant efforts to address the changes and help developers to embark on this new journey by publishing training and educational material at GitHub, YouTube, and on its official website (I will add link below), but for the purpose of helping you, please follow this tutorial, it helped me to learn how to develop Modern Web Parts for SP 2016/Online:
https://dev.office.com/sharepoint/docs/spfx/web-parts/get-started/build-a-hello-world-web-part
3) From the tutorial above, you will get a fully functional Modern Web Part that can be deployed to SP2016/Online, you will see the new modern architecture allows you that old experience of "sandboxing" web parts in a faster way without, thus solving your problem of constant updating/refactoring components in a live production environment. This way now allows you to constantly update the code and see the results in real-time , you will be able to see results on your dev environment by calling: https://localhost:4321/temp/workbench.html and at same time on your SP environment. for example: http://portal.company.com/_layouts/workbench.aspx
Links:
YouTube "SharePoint Framework Tutorials" - it is the step by step tutorial video showing the whole process of creating a web part:
https://www.youtube.com/playlist?list=PLR9nK3mnD-OXvSWvS2zglCzz4iplhVrKq
GitHub repository with the full documentation, samples and extras for the SPFx and PnP (this is another story for another time):
https://github.com/SharePoint
I hope it helps you!

First Time Developing Web-Based Geographic Information System

I'm assigned to develop web-based GIS, but I'm new with web programming. So, Where I can get an insight to start develop web-based GIS?
thank you before
regards!
You have to know about the 2 main components for web programming: front-end and back-end.
Front-end, is how the results/graphics are going to be displayed in the client (pad, monitor).
The most common tools are the javascript libraries like ArcGIS API for JavaScript, or OpenLayers.
For front-end you need to learn about html, css and javascript.
Back-end, is how you will manage the architecture (models-databases) of your project. There are many technologies to choose, for example, Java (J2EE) or .NET. For geodatabases there are systems like SQL server or PostGIS. Back-end is normally placed in the server.
In GIS you would also need a web mapping server (for sharing data, for instance), you can use GeoServer or ArcGIS for Server (commercial).
In my experience, I like to use django as back-end, this is a framework for web development using python (There are also many libraries for GIS using python which you can integrate). With django you can use a model-view-template controller to manage data to the web pages in a simple and fast way. Django has also a module called geodjango, to manage geodatabases, but not strong as GeoServer.
Start with "Requirements". To understand what requirements is, please start with a book on software engineering.
Once you have the requirements, you need to "Design" - what tools/technologies/languages to use. If you are just beginning programming, you typically get a senior to do the design
Then you get to a task, such as rendering google maps on a web page, that can be answered in something like stackoverflow.

Simple CMS for building a small company presentation-website

I'm looking for a free, simple and efficient CMS for building website for a small company.
Prerequisites are:
The website is nothing more than a presentation - with informative content and gallery. The website should contain a nice-looking gallery with js/ajax flavour. Nothing more is planned for now, but it would be nice if CMS would feature some more generic modules/extensions in case I would like to use them in future.
Design templates should be easy to adopt and change.
Coding as little as possible.
I thought about Drupal, but is there any other CMS which would better fit to these requirements?
Please don't list available CMS-es here. Give it a reason!
Wordpress is nice too :p It has a big community behind...
I say Drupal.
Drupal is really good in content management. You can create different content types, and assign them fields (in Drupal 6, you will need the CCK contrib module). You can create a gallery with Views and it's output plugins. There are dozens of them, using different layout and JavaScript effects (mostly different jQuery plugins, but there are plugins for lightbox and thickbox also).
Drupal has a group of themes called "starter themes". These themes are half-ready, and it is very easy to create your own custom themes with them. All you need is to create a subtheme. (Basically making an info file and copy some other files. There are really a lot of howtos out there.) There are also starter themes for 960 (CSS framework), so you can make the site layout really fast. The most famous starter theme is called Zen. You might want to use that.
Except for the theme, I don't think that you have to write any code. Writing a theme for Drupal is not hard, since it uses PHP to render the themes.
Still in beta (0.5) phase but looking very promising: Orchard, a new ASP.NET MVC based CMS created by the people from Microsoft.
Orchard will create shared components for building ASP.NET applications and extensions, and specific applications that leverage these components to meet the needs of end-users, scripters, and developers. Additionally, we seek to create partnerships with existing application authors to help them achieve their goals. Orchard is delivered as part of the ASP.NET Open Source Gallery under the CodePlex Foundation. It is licensed under a New BSD license, which is approved by the OSI.
The intended output of the Orchard project is three-fold:
Individual .NET-based applications that appeal to end-users , scripters, and developers
A set of re-usable components that makes it easy to build such applications
A vibrant community to help define these applications and extensions
In the near term, the Orchard project is focused on delivering a .NET-based CMS application that will allow users to rapidly create content-driven Websites, and an extensibility framework that will allow developers and customizers to provide additional functionality through module extensions and themes.
It depends on what kind of CMS you are after
pity you don't like programming otherwise i would suggest django, an awsome CMS framework
if you are after something simple like a few static pages and a news feed or something like that then wordpress might suit your needs well, except i have found i don't like how it handles gallery's
if you need anything more, like more advanced custom content types for products, i would recommend Joomla or Drupal, and have plug-ins that has good support for photo galleys
Joomla! will probably be a better choice. It is very easy to use and is highly extensible.
Have a look at:
CMS Made Simple
CMS Made Simple provides a fast and
easy way to create a professional web
site and manage its content, whether
it's for a small business or a
multinational corporation!
Features
General Features
SEO Friendly URLs
Integrated and online help
Modular and extensible
Easy user and group management
Group-based permission system
Full template support, for unlimited looks without changing a line of content
Easy wizard based install and upgrade procedures
Minimal server requirements
Admin panel with multiple language support
Content hierarchy with unlimited depth and size
Integrated file manager w/ upload capabilities
Integrated audit log
Friendly support in forums and irc
Small footprint
Design Features
Accessibility WAI, WCGA, Section 508
XHTML and CSS compliant
Auto-generated menu
Every page can have different theme
Design protected from content editors
Multiple content areas on one page
If you have a little C# experience then you can try Umbraco.
It is a very powerfull CMS written in C# for ASP.NET
It is one of the most powerfull both free and commercial CMS out there.
i recommend to check out the Feature Matrix so you can see if it fulfills your needs.
As an example http://asp.net uses Umbraco
have you tried DotNetNuke ?

Developing a DotNetNuke CMS website

I am a junior developer and I have just graduated from university this year. I am working private with some people and I have just been given a music website to develop using DotNetNuke. I have a some experience using DotNetNuke which I have gained making small modules that take care of certain functionality on a webpages but I have never taken on a whole website before. I would love it if some one would give me some guidence on how to approach this project and answer some of my questions.
What are the steps involved in developing a dotnetnuke website?
How different is it from a developers perspective to develop a dotnetnuke cms website from a cms website which was developed from scratch?
When it comes to the database do you add tables to the database incrementally as you develop new functionality or do you plan everything in advance and create tables and stored procedures at once?
What are the steps involved in developing a dotnetnuke website?
Pick your version (if you're starting now, pick 5.1.1)
Installation (use Source package locally, Install package everywhere else)
Settings Configuration (performance, security, user info, etc.)
Adding & configuring core/third party modules
Adding & configuring third party skins
Custom Extension (typically module or provider) Development
Custom Skin Development
How different is it from a developers
perspective to develop a dotnetnuke
cms website from a cms website which
was developed from scratch?
Very. When you're starting with an established CMS you're inheriting solutions to tons and tons of solved problems. In the case of DNN, you have a substantial framework at your disposal. The focus will be more on learning and leveraging the existing API/features. If you're starting from scratch you're providing that foundation yourself. Using an established CMS is not necessarily better than the other - it depends on what you're trying to accomplish. If you require fine-grained control over everything and you want a great learning experience, rolling your own may be the best way to go.
When it comes to the database do you
add tables to the database
incrementally as you develop new
functionality or do you plan
everything in advance and create
tables and stored procedures at once?
No matter what your project is, I'd suggest doing things as they are needed and not before. I think "doing everything in advance" would be impossible/horrible anyway. The heart of this question is really going to be defining your development process - I don't think this would necessarily be any different than in other projects. I like to define the features I want, organize them based on their relation to each other (which should come first due to dependencies, etc) and start implementing them one at a time and give each one the attention it needs.
You may also want to look into Lee Sykes' tutorials on module development using OpenWebStudio. However, I'm more on the design end, mainly just skinning, configuring, SE optimizing sites and matching client needs to our library of licensed 3rd party modules. However, the DNN community is VERY supportive and VERY helpful. There are some great resources out there, and I've found several blogs by the core development team to be essential for helping me wrap my head around the DNN framework.
Keep with it, and don't be scared to ask questions.
References:
www.dnncreative.com - Lee Sykes' Site, many tutorials on the how-tos of the DNN system. It's well worth the yearly subscription IMHO.
www.dotnetnuke.com - The main site for the DNN community
www.snowcovered.com - Central (AFAIK) site where many module developers sell their products, everything from skins to modules.

Using Windows Live Writer as a web site content editor

What are your thoughts on using Windows Live Writer communicating with your website as the content editing system?
Windows Live Writer supports multiple category blogs (i.e. can be news, articles, and blogs), multiple category pages, tagging, XHTML WYSIWYG editing, image and file uploading via services or ftp, and the client has a "Insert HTML" plug-in library with a lot of already developed plug-ins for popular sites.
The trickiest part is implementing all of the XmlRpc methods in your services, but some digging with Reflector has exposed them as being pretty simple to implement the features.
I've considered it, but it's kind of like putting a triangle into a round hole. It will fit, but not quite right. Since the primary focus is around blogging, the page editing would be counter intuitive if you presented to someone as a page editor.
Well in the case where a web site's normal update pattern is to post new "news" a.k.a. blog posts, the page editing then becomes secondary to update the static content.
I was thinking the exact same thing. Using Windows Live Writer or MS Word 2007 (it supports Atom Publishing as well) to edit web materials on a site would be awesome (in theory), right?
I tried looking into creating an AtomPub Server, (using Google Data API, Apache Abdera, or Project ROME), to create a simple atom publication server backend on Java Google App Engine. It would save entities and images into the GAE datastore. The saved data could be shown via a simple front end on the site. All editing would be done in MS Word.
But creating a custom Atom pub server turned out overwhelmingly hard for me. I'll throw in the towel for now, at least for the AtomPub protocol. Something dead-simple like a CRUD entity interface might still be possible for Windows Live Writer, as it supports simpler protocols.
As far as I know, it hasn't been done for GAE. Umbraco ASP.net CMS supports it though.

Resources