The Server SDK is an ASP.NET/C# solution that can be used to completely customize individual Weavy components (both look and feel and functionality). It can also be used to add new components and/or extend Weavy with all kinds of new functionality such as custom Apps, Content Types, Daemons etc. Before learning how to develop with Weavy it could be useful to understand a bit more about the Weavy server architecture.
Weavy is built on .NET and uses a classic three tier architecture (Presentation-Logic-Data).
- User interaction is managed by the presentation tier.
- Business rules and logic are managed by the logic tier.
- The underlying data is stored and served by the data tier.
The presentation tier is an ASP.NET MVC web application. It uses familiar concepts such as Controllers, Models and Views to compose the Weavy user interface.
Weavy.Web assembly contains code for the standard Weavy user interface as well as base classes, helpers and other things you will need
when developing with Weavy. And although it would be technically possible to remove the dependency on
Weavy.Web and build a custom user interface
directly on top of
Weavy.Core, most developers will probably want to modify and extend the existing UI instead of creating it from scratch.
The presentation tier calls into the logic tier which coordinates everything, processes commands, makes logical decisions, performs access control etc.
The most important classes in the logic tier are the classes in the
Weavy.Core.Services namespace which make up the service layer
and contain all the logic and methods required for working with the domain models.
The service classes, domain models and many other classes are located in the
Weavy.Core assembly. It is the engine of Weavy and has common functionality
that even the most fundamental things you develop will have to rely on. You can think of it as the base class library for Weavy.