Subscribe to the RSS feed
We’ve continued refactoring client side packages with sn-redux. As in the case of the sn-client-js related new scoped packages, the changes were about removing dependence on rxjs, improving the API, review other dependencies and making the necessary clean-ups. Followings will sum up all the changes, the why’s and how’s including a list of the possible migration steps if you used a pervious version of sn-redux before.
In most cases executing a sensenet patch is easy: download-execute-forget. There are cases however when because of API or content changes this requires a bit more attention. In this post we will go through a process like this.
We’ve started 2018 with a huge package refactor: we have divided our base sn-client-js package into several smaller ones and published them within a @sensenet scope. We’ve refactored a lot of code to simplify our API, improve working with immutable objects and also did a strict review on our dependencies. I will summarize the reasons, the improvements and what has been changed.
sensenet moved to GitHub in small parts. These parts are also maintainable, so need patches. Here is the first one, let’s see what this means for developers.
Few weeks ago we published a short overview of Q4 last year’s achievements and milestones like the sensenet 7 stable release. Of course we continue improving the product but another important project is to build a stronger, larger, more active community and to provide useful materials for newcomers in the form of code samples, tutorials and videos. We appreciate every feedback and we strongly recommend to report issues concerning the product or its components and send pull request in case you have any suggestion to improve sensenet 7. Our goal is to build the best development platform for our communnity, and for this, we need your help.
When you build a site with sensenet, you have many options when it comes to choosing a technology. This post walks you through a few easy steps to create your first Asp.Net MVC app with sensenet 7.0. It is a part of a series about the different client and server-side technologies and architectures when designing your first app.
Last year was quite busy in Sense/Net. The main goal of the core team was to publish sensenet 7 stable release, and create as many documentation, tutorial and sample one page apps (like DMS) to improve the product by using it and to present the new view coming with sensenet 7. Also lots of imporovements have been done concerning the product, for exemaple in IR and batch actions to name a few.
We want to help you to start building your own solution with sensenet 7, so let us summarize what we achieved in 2017.
There was a lot of development in the frontent frameworks ecosystem over the last couple of years - and you can use a wide range of them with the latest version of sensenet. The following step by step tutorial will guide you how to put it all together - this time with Aurelia and Typescript.
Identifying users is one of the most important features in an ECM solution. In sensenet we try to support a wide range of possibilities in this field, this is why we made this a lot easier by extending our web token authentication: from now on it is possible to integrate a 3rd party authentication service, for example Google Sign-in into your sensenet solution.
sensenet’s new version is full of possibilites. One of them is the capability of being the base of your single-page-application with its Content Repository. If you are familiar with Reactjs, Redux or Aureliajs, sensenet can offer you even more with its toolkits, prebuilt control packs and many many more. In the following post we try to guide you with a step-by-step tutorial creating your first basic single page app with sensenet, Reactjs and Redux.
Welcome to the stable release of sensenet 7.0!
Actually, this is not a big deal from a technical point of view: there were a few bug fixes, some interesting new features (like supporting Google Sign-in), but there is not much more in there than in previous releases.
But from the product’s point of view - well, this is a giant leap forward.
Busy weeks behind us at the frontend division of the sensenet team. New features on the backend and our in-progress DMS MVP generated tons of tasks and gave us many improvement points. But now we’ve released all these new stuff, so we can lay back a bit and sum up what’s done. Join us in checking-out the latests and maybe you’ll catch a bit about the upcomings.
In the previous version of sensenet we had many tests, 1400+. They covered most of the codebase, but unfortunately only some of them were real unit tests. Most of them were integration tests, involving multiple layers of the product, and as such, in many cases they required a fully installed sensenet database in place.
Our consumer habits and everyday way of life went through significant changes during the last several decades. The most prominent development happened in the field of IT. Services provided by the industry no longer influence only free time activities. Different software, enabling work on-the-go developed for end users are widely used by multinational corporations and small businesses as well.
CI means you have to merge small changes continuously instead of working with large diffs at the end of the development cycle. If you want to be sure that your merge won’t be causing any trouble there are several tasks to do - like creating a sandbox, building and testing on multiple environments, comparing code coverage results, etc… That’s a soul grinding work for a developer - and should be automatized.
Digital workplace (the modern intranet) is a phenomenon that has been lingering around for some time, yet many enterprises are still hesitant to move to digital – especially if the main focus is on the financial aspect. Although IT personnel might be convinced of the necessity to keep up with technology and embrace the 21st Century, C-level decision makers might not always share their view and might be reluctant to vote for a costly change. To tell the truth, there are a number of other factors that cannot be expressed in sheer numbers that would bring invaluable benefit to board, investors, staff and clients as well.
It’s been a long one year, but we’re nearing the end of the componentization project for sensenet. If you tried to keep up with the progress, what you could see, was a bunch of git repositories, NuGet and npm packages popping up now and again, but you may not be sure what each of them really does. You might be thinking “Okay, you tore the whole thing to pieces, but how the hell does it all fit together?” Fear not.
As you may already know sensenet’s UI is being fully rebuilt on a new stack including Redux. Since sensenet is also a development platform with the possibility of building your own app upon its Redux store and actions, let me guide you through the current version of the state tree showing you how we organized data so far.
Six months have passed since we started our very own ‘Sense/Net 10%’ program, where any employee could assemble a team and work on a precious side-project in 10 percent of their time. We had our project closing TGIF presentation last Friday where every team talked about their experiences - and you wouldn’t believe what happened next!
It’s a quite challengeing task to choose a front-end toolset nowadays, especially for a development platform. Our concept with sensenet 7+ is to support a wide range of front-end developers as far as possible with our sn-client-js package that can be integrated into almost every NPM development pipeline. So far so good. But when it comes to build our new UI components we really had to choose between the modern libraries and frameworks. At this point we’ve decided to build on two of them for SPA development. I will explain why we’ve chosen Aurelia besides React.
By the second half of 2017 an enterprise that predestinates itself to be successful shall pay a growing attention not only to making profit, but also to the changing needs of their stakeholders, including their employees. The concept of a digital workplace is not only about a new ergonomic working environment, but it also encompasses a new way of thinking – both of which are, by themselves, beneficial not only to the enterprise, but also to its stakeholders.
Why is it important to document information? The answer is fairly simple: documented company knowledge is easily transmitted, multiplied or updated, and it can be stored securely. Yet, many people still think that the constant documenting slows down creative work, thus decreases productivity. This is however a mistaken thought and as such it does not show forward thinking.
A way to make users prove their identity is an inevitable task for everyone who gets his head around making a content managements system. sensenet offers a new method for you to achieve this, that uses tokens, namely JWTs.
One of the key points of developing sensenet 7+ was how can we provide nicer ui for our end-users and a more accessible dev platform for the front-end developers at the same time. We could stay with the old asp.net solution or create a custom no-framework one but we ended-up using React and Aurelia. In the following post I try to sum up the whys and hows behind choosing React.
The term of Digital Workplace is not a new expression but still many people use it differently. I like the definition of Gartner the most: “The Digital Workplace enables new, more effective ways of working; raises employee engagement and agility; and exploits consumer-oriented styles and technologies.” Anyway if a company starts to support their employees with more and more connected productivity tools that leads to a Digital Workplace project. However, employees may find the process a bit embarrassing, and they might feel frustrated by the need to change their work environment. This is why project leaders (together with supportive vendors) have to introduce the digital workplace concept in such a way that helps them understand how beneficial this transition could be to them. That is why employees shall understand the many benefits they will gain by embracing the changes.
Dynamic Content Type system sounds amazing, but what does it actually mean? This post tries to clarify the basics and show you how can you take advantage of sensenet’s Content Repository as the new home of your custom company data.
The foundation of sensenet is the Content Repository, where documents, tasks, users, projects – everything is a Content. It is the fundamental building block of the system that makes content management easy and powerful at the same time.
The term ‘headless cms’ has been rising in popularity for a while now. But why the hype and what is it all about?
In their 2004 IPO letter, founders Larry Page and Sergey Brin highlighted their idea of the famous “Google 20%”. A lot of time has passed since then and the legend faded too: is it really 20% of their time, or is it more like “Google 120%”?
One of the most important aspects of a modern software is how to get it into the hands of customers. Especially developers, because they are the ones who will spend most of their time working with our libraries and components.
Us, too. In fact we need better goals, than “making more money” or “creating better stuff”. So last year we decided to be SMART about it and set high-level product goals for ourselves and for our community. After all, we want to be the best ECM development platform for a large community of developers. But how do we get there?
We moved. To Github, with our code and management tools… and our documentation and this blog(!); and to Stack Overflow with your questions and our answers.
We’ve been working on restructuring sensenet as a product for a while; now it’s time to change the way we connect with people. The next milestone on our roadmap is to redesign our website in order to make it more streamlined and transparent for you. Our most important aim with the redesign is to provide you all the information you might need when looking for the open source, .NET based ecms that would fit your business needs and still provide a pleasant user experience.
Have you ever wanted to know the permissions of a certain user, not just for a single content but in the whole system? We had a permission setting page for a long time but that did not give administrators the full picture
To fulfill an important need of Sense/Net users that were reported towards us several times recently, we have been developing a brand new, nice and easy-to-use feature in the Product. This is a Survey-editor application, which is being built to be fully customizable and extendable via the templated structure.
Thank you guys for taking your time and completing our test! The result was quite instructive for us. It provided us a solid starting point for us to design the new architecture of the portlet system in SN7.
A new public Community Edition is available for Sense/Net ECM! As always, we offer new features and many bug fixes
As the part of rebuilding the information architecture in SN7 we were highly motivated to redress the Portlet-structure to make its usage more handy
Sense/Net has always been an innovative and open-minded company, with focus on the latest-greatest things. That’s why we decided to start working on a mobile app which makes our users’ life easier.
Based on our former experience with the pickers in Sense/Net and on our UX researches, it was clear that the picker should be revamped in terms of both usability and customizability, to give developers a configurable and maintainable tool.
As the result of the competitor analysis we prepared the redesign of the new, skinnable Picker for SN7. We understood a lot of conceptual expectations from users by looking at our competitors’ solutions. These were all taken into consideration when developing custom solutions for individual picker-types in SN7.
In Sense/Net ECM we rely heavily on our Lucene indexing and search engine: every content modification involves re-indexing the data. This means our indexing subsystem sometimes must handle a really heavy load when many users create or modify content at the same time. In an environment where there are multiple web servers (both generating new indexing activities as users work) things tend to get more complicated and vulnerable to concurrency errors. Indeed we found out that there was a possibility of executing indexing activities in a reversed order.